Q3Box_EmptyData |
( TQ3Status ) Q3Box_EmptyData ( TQ3BoxData * _Nonnull boxData );
Releases the memory allocated by a prior call to Q3Box_GetData
.
- boxData
- A pointer to the box data allocated by
Q3Box_GetData()
.
Q3Box_GetData |
( TQ3Status ) Q3Box_GetData ( TQ3GeometryObject _Nonnull box, TQ3BoxData * _Nonnull boxData );
Gets the properties of an existing box object.
Memory is allocated for the 'boxData' parameter, and Q3Box_EmptyData
must be called to dispose of this memory.
- box
- A reference to a box geometry object.
- boxData
- Receives the box object's description.
Q3Box_GetFaceAttributeSet |
( TQ3Status ) Q3Box_GetFaceAttributeSet ( TQ3GeometryObject _Nonnull box, TQ3Uns32 faceIndex, TQ3AttributeSet _Nullable * _Nonnull faceAttributeSet );
Gets the attribute set associated with a certain face of a box object.
The TQ3AttributeSet*
parameter is filled with the attribute set
of the face indexed with 'faceIndex' of the box geometry object.
faceIndex must be between 0 and 5 (inclusive).
The reference count of the returned TQ3AttributeSet
is incremented.
- box
- A reference to a box geometry object.
- faceIndex
- The index of the face of the box.
- faceAttributeSet
- Receives a reference to the attribute set of the box face, or nullptr if the face does not have an attribute set.
Q3Box_GetMajorAxis |
( TQ3Status ) Q3Box_GetMajorAxis ( TQ3GeometryObject _Nonnull box, TQ3Vector3D * _Nonnull majorAxis );
Gets the major axis of a box object.
- box
- A reference to a box geometry object.
- majorAxis
- Receives the major axis of the box.
Q3Box_GetMinorAxis |
( TQ3Status ) Q3Box_GetMinorAxis ( TQ3GeometryObject _Nonnull box, TQ3Vector3D * _Nonnull minorAxis );
Gets the minor axis of a box object.
- box
- A reference to a box geometry object.
- minorAxis
- Receives the minor axis of the box.
Q3Box_GetOrientation |
( TQ3Status ) Q3Box_GetOrientation ( TQ3GeometryObject _Nonnull box, TQ3Vector3D * _Nonnull orientation );
Gets the orientation of a box object.
- box
- A reference to a box geometry object.
- orientation
- Receives the orientation vector of the box.
Q3Box_GetOrigin |
( TQ3Status ) Q3Box_GetOrigin ( TQ3GeometryObject _Nonnull box, TQ3Point3D * _Nonnull origin );
Gets the origin of a box object.
- box
- A reference to a box geometry object.
- origin
- Receives the origin of the box object.
Q3Box_New |
( TQ3GeometryObject _Nullable ) Q3Box_New ( const TQ3BoxData * _Nullable boxData );
Constructs a new Box geometry object.
If you pass nullptr, you will get a default box with orientation (1, 0, 0), major axis
(0, 1, 0), minor axis (0, 0, 1), and origin (0, 0, 0). This behavior was
not present in QuickDraw 3D.
- boxData
- Instance data passed in specifying the parameters of the new box object, or nullptr.
Q3Box_SetData |
( TQ3Status ) Q3Box_SetData ( TQ3GeometryObject _Nonnull box, const TQ3BoxData * _Nonnull boxData );
Sets the properties of an existing box object.
- box
- A reference to a box geometry object.
- boxData
- A pointer to the box data to apply to the box object.
Q3Box_SetFaceAttributeSet |
( TQ3Status ) Q3Box_SetFaceAttributeSet ( TQ3GeometryObject _Nonnull box, TQ3Uns32 faceIndex, TQ3AttributeSet _Nonnull faceAttributeSet );
Sets the attribute set associated with a certain face of a box object.
This function applies the TQ3AttributeSet
parameter to the attribute set
of the face indexed with faceIndex
of the box geometry object.
faceIndex
must be between 0 and 5 (inclusive).
- box
- A reference to a box geometry object.
- faceIndex
- The index of the face of the box.
- faceAttributeSet
- An attribute set to be applied.
Q3Box_SetMajorAxis |
( TQ3Status ) Q3Box_SetMajorAxis ( TQ3GeometryObject _Nonnull box, const TQ3Vector3D * _Nonnull majorAxis );
Sets the major axis of a box object.
- box
- A reference to a box geometry object.
- majorAxis
- The vector to which to set 'box's major axis.
Q3Box_SetMinorAxis |
( TQ3Status ) Q3Box_SetMinorAxis ( TQ3GeometryObject _Nonnull box, const TQ3Vector3D * _Nonnull minorAxis );
Sets the minor axis of a box object.
- box
- A reference to a box geometry object.
- minorAxis
- The vector to which to set 'box's minor axis.
Q3Box_SetOrientation |
( TQ3Status ) Q3Box_SetOrientation ( TQ3GeometryObject _Nonnull box, const TQ3Vector3D * _Nonnull orientation );
Sets the orientation of a box object.
- box
- A reference to a box geometry object.
- orientation
- The vector to which to set 'box's orientation.
Q3Box_SetOrigin |
( TQ3Status ) Q3Box_SetOrigin ( TQ3GeometryObject _Nonnull box, const TQ3Point3D * _Nonnull origin );
Sets the origin of a box object.
- box
- A reference to a box geometry object.
- origin
- The point to which to set 'box's origin.
Q3Box_Submit |
( TQ3Status ) Q3Box_Submit ( const TQ3BoxData * _Nonnull boxData, TQ3ViewObject _Nonnull view );
Submits a box for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- boxData
- A pointer to a
TQ3BoxData
structure specifying the box to be drawn.- view
- The view to submit the box to.
Q3Cone_EmptyData |
( TQ3Status ) Q3Cone_EmptyData ( TQ3ConeData * _Nonnull coneData );
Release memory allocated by Q3Cone_GetData
.
- coneData
- Data describing a cone, previously obtained with
Q3Cone_GetData
.
Q3Cone_GetBottomAttributeSet |
( TQ3Status ) Q3Cone_GetBottomAttributeSet ( TQ3GeometryObject _Nonnull cone, TQ3AttributeSet _Nullable * _Nonnull bottomAttributeSet );
Get the attribute set for the bottom cap of a cone object.
- cone
- The cone object.
- bottomAttributeSet
- Receives a reference to the bottom attribute set, or nullptr.
Q3Cone_GetCaps |
( TQ3Status ) Q3Cone_GetCaps ( TQ3GeometryObject _Nonnull cone, TQ3EndCap * _Nonnull caps );
Get the end cap flags of a cone object.
- cone
- The cone object.
- caps
- Receives the end cap flags. See
TQ3EndCapMasks
, defined in Quesa.h, for values.
Q3Cone_GetData |
( TQ3Status ) Q3Cone_GetData ( TQ3GeometryObject _Nonnull cone, TQ3ConeData * _Nonnull coneData );
Get data describing a cone object.
This may allocate memory, which should be freed using Q3Cone_EmptyData
.
- cone
- The cone object.
- coneData
- Receives data describing the cone.
Q3Cone_GetFaceAttributeSet |
( TQ3Status ) Q3Cone_GetFaceAttributeSet ( TQ3GeometryObject _Nonnull cone, TQ3AttributeSet _Nullable * _Nonnull faceAttributeSet );
Get the attribute set for the face (as opposed to the bottom cap) of a cone.
- cone
- The cone object.
- faceAttributeSet
- Receives the attribute set for the face, or nullptr.
Q3Cone_GetInteriorAttributeSet |
( TQ3Status ) Q3Cone_GetInteriorAttributeSet ( TQ3GeometryObject _Nonnull cone, TQ3AttributeSet _Nullable * _Nonnull interiorAttributeSet );
Get the attribute set for the interior of a cone object.
This function is not available in QD3D.
- cylinder
- A cone object.
- faceAttributeSet
- Receives the attribute set for the interior, or nullptr.
Q3Cone_GetMajorRadius |
( TQ3Status ) Q3Cone_GetMajorRadius ( TQ3GeometryObject _Nonnull cone, TQ3Vector3D * _Nonnull majorRadius );
Get the major radius vector of a cone object.
- cone
- The cone object.
- majorRadius
- Receives the major radius vector.
Q3Cone_GetMinorRadius |
( TQ3Status ) Q3Cone_GetMinorRadius ( TQ3GeometryObject _Nonnull cone, TQ3Vector3D * _Nonnull minorRadius );
Get the minor radius vector of a cone object.
- cone
- The cone object.
- minorRadius
- Receives the minor radius vector.
Q3Cone_GetOrientation |
( TQ3Status ) Q3Cone_GetOrientation ( TQ3GeometryObject _Nonnull cone, TQ3Vector3D * _Nonnull orientation );
Get the orientation vector of a cone object.
- cone
- The cone object.
- orientation
- Receives the orientation vector.
Q3Cone_GetOrigin |
( TQ3Status ) Q3Cone_GetOrigin ( TQ3GeometryObject _Nonnull cone, TQ3Point3D * _Nonnull origin );
Get the origin of a cone object.
- cone
- The cone object.
- origin
- Receives the origin.
Q3Cone_New |
( TQ3GeometryObject _Nullable ) Q3Cone_New ( const TQ3ConeData * _Nullable coneData );
Create a cone geometry object.
If you pass nullptr, you will get a default cone with orientation (1, 0, 0), major axis
(0, 1, 0), minor axis (0, 0, 1), and origin (0, 0, 0). This behavior was
not present in QuickDraw 3D.
- coneData
- Pointer to data describing the cone, or nullptr.
Q3Cone_SetBottomAttributeSet |
( TQ3Status ) Q3Cone_SetBottomAttributeSet ( TQ3GeometryObject _Nonnull cone, TQ3AttributeSet _Nullable bottomAttributeSet );
Change the bottom attribute set of a cone object.
Naturally, this only makes sense if the cone has a bottom end cap.
- cone
- The cone object.
- bottomAttributeSet
- New bottom attribute set. May be nullptr.
Q3Cone_SetCaps |
( TQ3Status ) Q3Cone_SetCaps ( TQ3GeometryObject _Nonnull cone, TQ3EndCap caps );
Set the end cap flags of a cone object.
Currently, this simply determines whether the cone will have a bottom cap.
- cone
- The cone object.
- caps
- End cap value (do not include
kQ3EndCapMaskTop
).
Q3Cone_SetData |
( TQ3Status ) Q3Cone_SetData ( TQ3GeometryObject _Nonnull cone, const TQ3ConeData * _Nonnull coneData );
Modify a cone object by supplying new data.
- cone
- The cone object.
- coneData
- Pointer to data describing a cone.
Q3Cone_SetFaceAttributeSet |
( TQ3Status ) Q3Cone_SetFaceAttributeSet ( TQ3GeometryObject _Nonnull cone, TQ3AttributeSet _Nullable faceAttributeSet );
Set the attribute set for the face (as opposed to the bottom cap) of a cone.
- cone
- The cone object.
- faceAttributeSet
- New face attribute set. May be nullptr.
Q3Cone_SetInteriorAttributeSet |
( TQ3Status ) Q3Cone_SetInteriorAttributeSet ( TQ3GeometryObject _Nonnull cone, TQ3AttributeSet _Nullable interiorAttributeSet );
Set the attribute set for the interior of a cone object.
This function is not available in QD3D.
- cylinder
- A cone object.
- faceAttributeSet
- New attribute set for the interior of the cone.
Q3Cone_SetMajorRadius |
( TQ3Status ) Q3Cone_SetMajorRadius ( TQ3GeometryObject _Nonnull cone, const TQ3Vector3D * _Nonnull majorRadius );
Change the major radius vector of a cone object.
- cone
- The cone object.
- majorRadius
- New major radius vector.
Q3Cone_SetMinorRadius |
( TQ3Status ) Q3Cone_SetMinorRadius ( TQ3GeometryObject _Nonnull cone, const TQ3Vector3D * _Nonnull minorRadius );
Change the minor radius vector of a cone object.
- cone
- The cone object.
- minorRadius
- New minor radius vector.
Q3Cone_SetOrientation |
( TQ3Status ) Q3Cone_SetOrientation ( TQ3GeometryObject _Nonnull cone, const TQ3Vector3D * _Nonnull orientation );
Change the orientation vector of a cone object.
- cone
- The cone object.
- orientation
- The new orientation vector.
Q3Cone_SetOrigin |
( TQ3Status ) Q3Cone_SetOrigin ( TQ3GeometryObject _Nonnull cone, const TQ3Point3D * _Nonnull origin );
Change the origin of a cone object.
- cone
- The cone object.
- origin
- The new origin.
Q3Cone_Submit |
( TQ3Status ) Q3Cone_Submit ( const TQ3ConeData * _Nonnull coneData, TQ3ViewObject _Nonnull view );
Submits a cone in immediate mode for rendering, bounding, picking, or writing.
This function should only be called in a submitting loop.
- coneData
- Pointer to data describing a cone.
- view
- A view object.
Q3Cylinder_EmptyData |
( TQ3Status ) Q3Cylinder_EmptyData ( TQ3CylinderData * _Nonnull cylinderData );
Free memory allocated by Q3Cylinder_GetData
.
- cylinderData
- Cylinder data previously obtained using
Q3Cylinder_GetData
.
Q3Cylinder_GetBottomAttributeSet |
( TQ3Status ) Q3Cylinder_GetBottomAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable * _Nonnull bottomAttributeSet );
Get the attribute set for the bottom cap of a cylinder object.
- cylinder
- A cylinder object.
- bottomAttributeSet
- Receives the attribute set for the bottom cap, or nullptr.
Q3Cylinder_GetCaps |
( TQ3Status ) Q3Cylinder_GetCaps ( TQ3GeometryObject _Nonnull cylinder, TQ3EndCap * _Nonnull caps );
Get the cap flags of a cylinder object.
- cylinder
- A cylinder object.
- caps
- Receives the end cap flags. See
TQ3EndCapMasks
, defined in Quesa.h, for values.
Q3Cylinder_GetData |
( TQ3Status ) Q3Cylinder_GetData ( TQ3GeometryObject _Nonnull cylinder, TQ3CylinderData * _Nonnull cylinderData );
Get data describing a cylinder.
This operation may allocate memory, which should be freed using
Q3Cylinder_EmptyData
.
- cylinder
- A cylinder object.
- cylinderData
- Receives data describing the cylinder.
Q3Cylinder_GetFaceAttributeSet |
( TQ3Status ) Q3Cylinder_GetFaceAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable * _Nonnull faceAttributeSet );
Get the attribute set for the face of a cylinder object (i.e., neither end).
- cylinder
- A cylinder object.
- faceAttributeSet
- Receives the attribute set for the face, or nullptr.
Q3Cylinder_GetInteriorAttributeSet |
( TQ3Status ) Q3Cylinder_GetInteriorAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable * _Nonnull interiorAttributeSet );
Get the attribute set for the interior of a cylinder object.
This function is not available in QD3D.
- cylinder
- A cylinder object.
- faceAttributeSet
- Receives the attribute set for the interior, or nullptr.
Q3Cylinder_GetMajorRadius |
( TQ3Status ) Q3Cylinder_GetMajorRadius ( TQ3GeometryObject _Nonnull cylinder, TQ3Vector3D * _Nonnull majorRadius );
Get the major radius vector of a cylinder.
- cylinder
- A cylinder object.
- majorRadius
- Receives the major radius vector of the cylinder.
Q3Cylinder_GetMinorRadius |
( TQ3Status ) Q3Cylinder_GetMinorRadius ( TQ3GeometryObject _Nonnull cylinder, TQ3Vector3D * _Nonnull minorRadius );
Get the minor radius vector of a cylinder.
- cylinder
- A cylinder object.
- minorRadius
- Receives the minor radius vector of the cylinder.
Q3Cylinder_GetOrientation |
( TQ3Status ) Q3Cylinder_GetOrientation ( TQ3GeometryObject _Nonnull cylinder, TQ3Vector3D * _Nonnull orientation );
Get the orientation vector of a cylinder.
- cylinder
- A cylinder object.
- orientation
- Receives the orientation vector of the cylinder.
Q3Cylinder_GetOrigin |
( TQ3Status ) Q3Cylinder_GetOrigin ( TQ3GeometryObject _Nonnull cylinder, TQ3Point3D * _Nonnull origin );
Get the origin of a cylinder.
- cylinder
- A cylinder object.
- origin
- Receives the origin of the cylinder.
Q3Cylinder_GetTopAttributeSet |
( TQ3Status ) Q3Cylinder_GetTopAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable * _Nonnull topAttributeSet );
Get the attribute set for the top cap of a cylinder object.
- cylinder
- A cylinder object.
- topAttributeSet
- Receives the attribute set for the top cap, or nullptr.
Q3Cylinder_New |
( TQ3GeometryObject _Nullable ) Q3Cylinder_New ( const TQ3CylinderData * _Nullable cylinderData );
Create a new Cylinder object.
If you pass nullptr, you will get a default cylinder with orientation (1, 0, 0), major axis
(0, 1, 0), minor axis (0, 0, 1), origin (0, 0, 0), and no end caps. This behavior was
not present in QuickDraw 3D.
- cylinderData
- Data describing a cylinder, or nullptr.
Q3Cylinder_SetBottomAttributeSet |
( TQ3Status ) Q3Cylinder_SetBottomAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable bottomAttributeSet );
Set the attribute set for the bottom cap of a cylinder object.
- cylinder
- A cylinder object.
- bottomAttributeSet
- New attribute set for the bottom cap.
Q3Cylinder_SetCaps |
( TQ3Status ) Q3Cylinder_SetCaps ( TQ3GeometryObject _Nonnull cylinder, TQ3EndCap caps );
Set the cap flags of a cylinder object. This determines whether the
cylinder is closed off at one end or the other. The end containing the
origin is considered the bottom.
- cylinder
- A cylinder object.
- caps
- The end cap flags. See
TQ3EndCapMasks
, defined in Quesa.h, for values.
Q3Cylinder_SetData |
( TQ3Status ) Q3Cylinder_SetData ( TQ3GeometryObject _Nonnull cylinder, const TQ3CylinderData * _Nonnull cylinderData );
Modify a cylinder object by supplying all new data.
- cylinder
- A cylinder object.
- cylinderData
- Data describing a cylinder.
Q3Cylinder_SetFaceAttributeSet |
( TQ3Status ) Q3Cylinder_SetFaceAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable faceAttributeSet );
Set the attribute set for the face of a cylinder object (i.e., neither end).
- cylinder
- A cylinder object.
- faceAttributeSet
- New attribute set for the face of the cylinder.
Q3Cylinder_SetInteriorAttributeSet |
( TQ3Status ) Q3Cylinder_SetInteriorAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable interiorAttributeSet );
Set the attribute set for the interior of a cylinder object (which only shows
when the u parameter does not have the full range 0 to 1).
This function is not available in QD3D.
- cylinder
- A cylinder object.
- faceAttributeSet
- New attribute set for the interior of the cylinder.
Q3Cylinder_SetMajorRadius |
( TQ3Status ) Q3Cylinder_SetMajorRadius ( TQ3GeometryObject _Nonnull cylinder, const TQ3Vector3D * _Nonnull majorRadius );
Change the major radius vector of a cylinder object.
- cylinder
- A cylinder object.
- majorRadius
- New major radius vector for the cylinder.
Q3Cylinder_SetMinorRadius |
( TQ3Status ) Q3Cylinder_SetMinorRadius ( TQ3GeometryObject _Nonnull cylinder, const TQ3Vector3D * _Nonnull minorRadius );
Change the minor radius vector of a cylinder object.
- cylinder
- A cylinder object.
- minorRadius
- New minor radius vector for the cylinder.
Q3Cylinder_SetOrientation |
( TQ3Status ) Q3Cylinder_SetOrientation ( TQ3GeometryObject _Nonnull cylinder, const TQ3Vector3D * _Nonnull orientation );
Change the orientation vector of a cylinder object.
- cylinder
- A cylinder object.
- orientation
- New orientation vector for the cylinder.
Q3Cylinder_SetOrigin |
( TQ3Status ) Q3Cylinder_SetOrigin ( TQ3GeometryObject _Nonnull cylinder, const TQ3Point3D * _Nonnull origin );
Change the origin of a cylinder object.
- cylinder
- A cylinder object.
- origin
- New point of origin.
Q3Cylinder_SetTopAttributeSet |
( TQ3Status ) Q3Cylinder_SetTopAttributeSet ( TQ3GeometryObject _Nonnull cylinder, TQ3AttributeSet _Nullable topAttributeSet );
Set the attribute set for the top cap of a cylinder object.
- cylinder
- A cylinder object.
- topAttributeSet
- New attribute set for the top cap.
Q3Cylinder_Submit |
( TQ3Status ) Q3Cylinder_Submit ( const TQ3CylinderData * _Nonnull cylinderData, TQ3ViewObject _Nonnull view );
Submits a cylinder for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- cylinderData
- Data describing a cylinder.
- view
- A view object.
Q3Disk_EmptyData |
( TQ3Status ) Q3Disk_EmptyData ( TQ3DiskData * _Nonnull diskData );
Free memory allocated by Q3Disk_GetData
.
- diskData
- Data describing a disk object, previously obtained by
Q3Disk_GetData
.
Q3Disk_GetData |
( TQ3Status ) Q3Disk_GetData ( TQ3GeometryObject _Nonnull disk, TQ3DiskData * _Nonnull diskData );
Get the data of a Disk object.
This may allocate memory, which should be freed using Q3Disk_EmptyData
.
- disk
- A disk geometry object.
- diskData
- Data describing a disk object.
Q3Disk_GetMajorRadius |
( TQ3Status ) Q3Disk_GetMajorRadius ( TQ3GeometryObject _Nonnull disk, TQ3Vector3D * _Nonnull majorRadius );
Get the major radius vector of a disk object.
- disk
- A disk geometry object.
- majorRadius
- Receives the major radius vector of the disk.
Q3Disk_GetMinorRadius |
( TQ3Status ) Q3Disk_GetMinorRadius ( TQ3GeometryObject _Nonnull disk, TQ3Vector3D * _Nonnull minorRadius );
Get the minor radius vector of a disk object.
- disk
- A disk geometry object.
- minorRadius
- Receives the minor radius vector of the disk.
Q3Disk_GetOrigin |
( TQ3Status ) Q3Disk_GetOrigin ( TQ3GeometryObject _Nonnull disk, TQ3Point3D * _Nonnull origin );
Get the origin of a disk object.
- disk
- A disk geometry object.
- origin
- Receives the origin of the disk.
Q3Disk_New |
( TQ3GeometryObject _Nullable ) Q3Disk_New ( const TQ3DiskData * _Nullable diskData );
Create a new disk object.
If you pass nullptr instead of a data pointer, you will get a default disk, with origin
(0, 0, 0), major radius (1, 0, 0), and minor radius (0, 1, 0). This behavior was
not present in QuickDraw 3D.
- diskData
- Data describing a disk object, or NULL.
Q3Disk_SetData |
( TQ3Status ) Q3Disk_SetData ( TQ3GeometryObject _Nonnull disk, const TQ3DiskData * _Nonnull diskData );
Modify a disk object by supplying a whole new set of data.
- disk
- A disk geometry object.
- diskData
- Data describing a disk object.
Q3Disk_SetMajorRadius |
( TQ3Status ) Q3Disk_SetMajorRadius ( TQ3GeometryObject _Nonnull disk, const TQ3Vector3D * _Nonnull majorRadius );
Change the major radius vector of a disk object.
- disk
- A disk geometry object.
- majorRadius
- New major radius vector for the disk object.
Q3Disk_SetMinorRadius |
( TQ3Status ) Q3Disk_SetMinorRadius ( TQ3GeometryObject _Nonnull disk, const TQ3Vector3D * _Nonnull minorRadius );
Change the minor radius vector of a disk object.
- disk
- A disk geometry object.
- minorRadius
- New minor radius vector for the disk object.
Q3Disk_SetOrigin |
( TQ3Status ) Q3Disk_SetOrigin ( TQ3GeometryObject _Nonnull disk, const TQ3Point3D * _Nonnull origin );
Change the origin of a Disk object.
- disk
- A disk geometry object.
- origin
- New origin for the disk.
Q3Disk_Submit |
( TQ3Status ) Q3Disk_Submit ( const TQ3DiskData * _Nonnull diskData, TQ3ViewObject _Nonnull view );
Submits a disk for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- diskData
- Data describing a disk object.
- view
- A view object.
Q3Ellipse_EmptyData |
( TQ3Status ) Q3Ellipse_EmptyData ( TQ3EllipseData * _Nonnull ellipseData );
Release memory allocated by Q3Ellipse_GetData
.
- ellipseData
- Data describing an ellipse, previously obtained with
Q3Ellipse_GetData
.
Q3Ellipse_GetData |
( TQ3Status ) Q3Ellipse_GetData ( TQ3GeometryObject _Nonnull ellipse, TQ3EllipseData * _Nonnull ellipseData );
Get the data of an Ellipse object.
This function may allocate memory, which should be freed using
Q3Ellipse_EmptyData
.
- ellipse
- An ellipse object.
- ellipseData
- Receives data describing the ellipse object.
Q3Ellipse_GetMajorRadius |
( TQ3Status ) Q3Ellipse_GetMajorRadius ( TQ3GeometryObject _Nonnull ellipse, TQ3Vector3D * _Nonnull majorRadius );
Get the major radius vector of an Ellipse object.
- ellipse
- The Ellipse object.
- majorRadius
- Receives the major radius vector.
Q3Ellipse_GetMinorRadius |
( TQ3Status ) Q3Ellipse_GetMinorRadius ( TQ3GeometryObject _Nonnull ellipse, TQ3Vector3D * _Nonnull minorRadius );
Get the minor radius vector of an Ellipse object.
- ellipse
- The Ellipse object.
- minorRadius
- Receives the minor radius vector.
Q3Ellipse_GetOrigin |
( TQ3Status ) Q3Ellipse_GetOrigin ( TQ3GeometryObject _Nonnull ellipse, TQ3Point3D * _Nonnull origin );
Get the origin of an Ellipse object.
- ellipse
- The Ellipse object.
- origin
- Receives the origin.
Q3Ellipse_New |
( TQ3GeometryObject _Nullable ) Q3Ellipse_New ( const TQ3EllipseData * _Nullable ellipseData );
Create a new ellipse geometry object.
If you pass nullptr, you will get a default ellipse with major axis (0, 1, 0),
minor axis (0, 0, 1), and origin (0, 0, 0). This behavior was
not present in QuickDraw 3D.
- ellipseData
- Data describing an ellipse, or NULL.
Q3Ellipse_SetData |
( TQ3Status ) Q3Ellipse_SetData ( TQ3GeometryObject _Nonnull ellipse, const TQ3EllipseData * _Nonnull ellipseData );
Modify an ellipse object by supplying a full new set of data.
- ellipse
- An ellipse object.
- ellipseData
- Data describing an ellipse.
Q3Ellipse_SetMajorRadius |
( TQ3Status ) Q3Ellipse_SetMajorRadius ( TQ3GeometryObject _Nonnull ellipse, const TQ3Vector3D * _Nonnull majorRadius );
Change the major radius vector of an Ellipse object.
- ellipse
- The Ellipse object.
- majorRadius
- New major radius vector.
Q3Ellipse_SetMinorRadius |
( TQ3Status ) Q3Ellipse_SetMinorRadius ( TQ3GeometryObject _Nonnull ellipse, const TQ3Vector3D * _Nonnull minorRadius );
Change the minor radius vector of an Ellipse object.
- ellipse
- The Ellipse object.
- minorRadius
- New minor radius vector.
Q3Ellipse_SetOrigin |
( TQ3Status ) Q3Ellipse_SetOrigin ( TQ3GeometryObject _Nonnull ellipse, const TQ3Point3D * _Nonnull origin );
Change the origin of an ellipse object.
- ellipse
- The ellipse object.
- origin
- The new origin.
Q3Ellipse_Submit |
( TQ3Status ) Q3Ellipse_Submit ( const TQ3EllipseData * _Nonnull ellipseData, TQ3ViewObject _Nonnull view );
Submits an ellipse for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- ellipseData
- Data describing an ellipse.
- view
- A view object.
Q3Ellipsoid_EmptyData |
( TQ3Status ) Q3Ellipsoid_EmptyData ( TQ3EllipsoidData * _Nonnull ellipsoidData );
Release memory allocated by Q3Ellipsoid_GetData
.
- ellipsoidData
- Data describing an Ellipsoid, previously obtained with
Q3Ellipsoid_GetData
.
Q3Ellipsoid_GetData |
( TQ3Status ) Q3Ellipsoid_GetData ( TQ3GeometryObject _Nonnull ellipsoid, TQ3EllipsoidData * _Nonnull ellipsoidData );
Get the data of an Ellipse object.
This function may allocate memory, which should be freed using
Q3Ellipsoid_EmptyData
.
- ellipsoid
- An ellipsoid object.
- ellipsoidData
- Receives data describing the ellipsoid object.
Q3Ellipsoid_GetMajorRadius |
( TQ3Status ) Q3Ellipsoid_GetMajorRadius ( TQ3GeometryObject _Nonnull ellipsoid, TQ3Vector3D * _Nonnull majorRadius );
Get the major radius vector of an Ellipsoid object.
- ellipsoid
- The Ellipsoid object.
- majorRadius
- Receives the major radius vector.
Q3Ellipsoid_GetMinorRadius |
( TQ3Status ) Q3Ellipsoid_GetMinorRadius ( TQ3GeometryObject _Nonnull ellipsoid, TQ3Vector3D * _Nonnull minorRadius );
Get the minor radius vector of an Ellipsoid object.
- ellipsoid
- The Ellipsoid object.
- minorRadius
- Receives the minor radius vector.
Q3Ellipsoid_GetOrientation |
( TQ3Status ) Q3Ellipsoid_GetOrientation ( TQ3GeometryObject _Nonnull ellipsoid, TQ3Vector3D * _Nonnull orientation );
Get the orientation vector of an Ellipsoid.
- ellipsoid
- An Ellipsoid object.
- orientation
- Receives the orientation vector of the Ellipsoid.
Q3Ellipsoid_GetOrigin |
( TQ3Status ) Q3Ellipsoid_GetOrigin ( TQ3GeometryObject _Nonnull ellipsoid, TQ3Point3D * _Nonnull origin );
Get the origin of an Ellipsoid object.
- ellipsoid
- The Ellipsoid object.
- origin
- Receives the origin.
Q3Ellipsoid_New |
( TQ3GeometryObject _Nullable ) Q3Ellipsoid_New ( const TQ3EllipsoidData * _Nullable ellipsoidData );
Create a new ellipsoid geometry object.
If you pass nullptr, you will get a default ellipsoid with orientation (1, 0, 0), major axis
(0, 1, 0), minor axis (0, 0, 1), and origin (0, 0, 0). This behavior was
not present in QuickDraw 3D.
- ellipsoidData
- Data describing an ellipsoid, or NULL.
Q3Ellipsoid_SetData |
( TQ3Status ) Q3Ellipsoid_SetData ( TQ3GeometryObject _Nonnull ellipsoid, const TQ3EllipsoidData * _Nonnull ellipsoidData );
Modify an ellipsoid object by supplying a full new set of data.
- ellipsoid
- An ellipsoid object.
- ellipsoidData
- Data describing an ellipsoid.
Q3Ellipsoid_SetMajorRadius |
( TQ3Status ) Q3Ellipsoid_SetMajorRadius ( TQ3GeometryObject _Nonnull ellipsoid, const TQ3Vector3D * _Nonnull majorRadius );
Change the major radius vector of an Ellipsoid object.
- ellipsoid
- The Ellipsoid object.
- majorRadius
- New major radius vector.
Q3Ellipsoid_SetMinorRadius |
( TQ3Status ) Q3Ellipsoid_SetMinorRadius ( TQ3GeometryObject _Nonnull ellipsoid, const TQ3Vector3D * _Nonnull minorRadius );
Change the minor radius vector of an Ellipsoid object.
- ellipsoid
- The Ellipsoid object.
- minorRadius
- New minor radius vector.
Q3Ellipsoid_SetOrientation |
( TQ3Status ) Q3Ellipsoid_SetOrientation ( TQ3GeometryObject _Nonnull ellipsoid, const TQ3Vector3D * _Nonnull orientation );
Change the orientation vector of an Ellipsoid object.
- ellipsoid
- An Ellipsoid object.
- orientation
- New orientation vector for the Ellipsoid.
Q3Ellipsoid_SetOrigin |
( TQ3Status ) Q3Ellipsoid_SetOrigin ( TQ3GeometryObject _Nonnull ellipsoid, const TQ3Point3D * _Nonnull origin );
Change the origin of an ellipsoid object.
- ellipsoid
- The ellipsoid object.
- origin
- The new origin.
Q3Ellipsoid_Submit |
( TQ3Status ) Q3Ellipsoid_Submit ( const TQ3EllipsoidData * _Nonnull ellipsoidData, TQ3ViewObject _Nonnull view );
Submits an ellipsoid for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- ellipsoidData
- Data describing an ellipsoid.
- view
- A view object.
Q3ForEachComponentEdge |
#define Q3ForEachComponentEdge(_c, _e, _i) \
for ((_e) = Q3Mesh_FirstComponentEdge((_c), (_i)); \
(_e) != nullptr; \
(_e) = Q3Mesh_NextComponentEdge((_i)))
Macro to aid in iterating over edges of a component of a Mesh object.
- _c
- The component.
- _e
- The edge.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachComponentVertex |
#define Q3ForEachComponentVertex(_c, _v, _i) \
for ((_v) = Q3Mesh_FirstComponentVertex((_c), (_i));\
(_v) != nullptr; \
(_v) = Q3Mesh_NextComponentVertex((_i)))
Macro to aid in iterating over vertices of a component of a Mesh object.
- _c
- The component.
- _v
- The vertex.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachContourEdge |
#define Q3ForEachContourEdge(_h, _e, _i) \
for ((_e) = Q3Mesh_FirstContourEdge((_h), (_i)); \
(_e) != nullptr; \
(_e) = Q3Mesh_NextContourEdge((_i)))
Macro to aid in iterating over edges of a contour of a Mesh object.
- _h
- The contour.
- _e
- An edge of the contour.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachContourFace |
#define Q3ForEachContourFace(_h, _f, _i) \
for ((_f) = Q3Mesh_FirstContourFace((_h), (_i)); \
(_f) != nullptr; \
(_f) = Q3Mesh_NextContourFace((_i)))
Macro to aid in iterating over edges of a contour of a Mesh object.
- _h
- The contour.
- _v
- An edge of the contour.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachContourVertex |
#define Q3ForEachContourVertex(_h, _v, _i) \
for ((_v) = Q3Mesh_FirstContourVertex((_h), (_i)); \
(_v) != nullptr; \
(_v) = Q3Mesh_NextContourVertex((_i)))
Macro to aid in iterating over vertices of a contour of a Mesh object.
- _h
- The contour.
- _v
- A vertex of the contour.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachFaceContour |
#define Q3ForEachFaceContour(_f, _h, _i) \
for ((_h) = Q3Mesh_FirstFaceContour((_f), (_i)); \
(_h) != nullptr; \
(_h) = Q3Mesh_NextFaceContour((_i)))
Macro to aid in iterating over contours of a face of a Mesh object.
- _f
- The face.
- _h
- A contour of the face.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachFaceEdge |
#define Q3ForEachFaceEdge(_f, _e, _i) \
for ((_e) = Q3Mesh_FirstFaceEdge((_f), (_i)); \
(_e) != nullptr; \
(_e) = Q3Mesh_NextFaceEdge((_i)))
Macro to aid in iterating over edges incident to a face of a Mesh object.
- _f
- The face.
- _e
- An incident edge.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachFaceFace |
#define Q3ForEachFaceFace(_f, _n, _i) \
for ((_n) = Q3Mesh_FirstFaceFace((_f), (_i)); \
(_n) != nullptr; \
(_n) = Q3Mesh_NextFaceFace((_i)))
Macro to aid in iterating over faces adjacent to a face of a Mesh object.
- _f
- The face.
- _n
- An incident face.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachFaceVertex |
#define Q3ForEachFaceVertex(_f, _v, _i) \
for ((_v) = Q3Mesh_FirstFaceVertex((_f), (_i)); \
(_v) != nullptr; \
(_v) = Q3Mesh_NextFaceVertex((_i)))
Macro to aid in iterating over vertices incident to a face of a Mesh object.
- _f
- The face.
- _v
- An incident vertex.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachMeshComponent |
#define Q3ForEachMeshComponent(_m, _c, _i) \
for ((_c) = Q3Mesh_FirstMeshComponent((_m), (_i)); \
(_c) != nullptr; \
(_c) = Q3Mesh_NextMeshComponent((_i)))
Macro to aid in iterating over components of a Mesh object. Example:
TQ3MeshIterator iter; TQ3MeshComponent comp; Q3ForEachMeshComponent( myMesh, comp, &iter ) { DoSomething( comp ); }
- _m
- The mesh object.
- _c
- The component.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachMeshEdge |
#define Q3ForEachMeshEdge(_m, _e, _i) \
for ((_e) = Q3Mesh_FirstMeshEdge((_m), (_i)); \
(_e) != nullptr; \
(_e) = Q3Mesh_NextMeshEdge((_i)))
Macro to aid in iterating over edges of a Mesh object.
- _m
- The mesh.
- _e
- The edge.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachMeshFace |
#define Q3ForEachMeshFace(_m, _f, _i) \
for ((_f) = Q3Mesh_FirstMeshFace((_m), (_i)); \
(_f) != nullptr; \
(_f) = Q3Mesh_NextMeshFace((_i)))
Macro to aid in iterating over faces of a Mesh object.
- _m
- The mesh.
- _f
- The face.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachMeshVertex |
#define Q3ForEachMeshVertex(_m, _v, _i) \
for ((_v) = Q3Mesh_FirstMeshVertex((_m), (_i)); \
(_v) != nullptr; \
(_v) = Q3Mesh_NextMeshVertex((_i)))
Macro to aid in iterating over vertices of a Mesh object.
- _m
- The mesh.
- _v
- The vertex.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachVertexEdge |
#define Q3ForEachVertexEdge(_v, _e, _i) \
for ((_e) = Q3Mesh_FirstVertexEdge((_v), (_i)); \
(_e) != nullptr; \
(_e) = Q3Mesh_NextVertexEdge((_i)))
Macro to aid in iterating over edges incident to a vertex of a Mesh object.
- _v
- The vertex.
- _e
- The edge.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachVertexFace |
#define Q3ForEachVertexFace(_v, _f, _i) \
for ((_f) = Q3Mesh_FirstVertexFace((_v), (_i)); \
(_f) != nullptr; \
(_f) = Q3Mesh_NextVertexFace((_i)))
Macro to aid in iterating over faces incident to a vertex of a Mesh object.
- _v
- The vertex.
- _f
- An incident face.
- _i
- Address of a
TQ3MeshIterator
.
Q3ForEachVertexVertex |
#define Q3ForEachVertexVertex(_v, _n, _i) \
for ((_n) = Q3Mesh_FirstVertexVertex((_v), (_i)); \
(_n) != nullptr; \
(_n) = Q3Mesh_NextVertexVertex((_i)))
Macro to aid in iterating over vertices adjacent to a vertex of a Mesh object.
- _v
- The vertex.
- _n
- An adjacent vertex.
- _i
- Address of a
TQ3MeshIterator
.
Q3GeneralPolygon_EmptyData |
( TQ3Status ) Q3GeneralPolygon_EmptyData ( TQ3GeneralPolygonData * _Nonnull generalPolygonData );
Release memory allocated by Q3GeneralPolygon_GetData
, or that you
allocated so long as you used Quesa memory allocation functions to allocate
the arrays.
To be precise, this function:
- generalPolygonData
- Data describing a General Polygon, perhaps previously obtained with
Q3GeneralPolygon_GetData
.
Q3GeneralPolygon_GetData |
( TQ3Status ) Q3GeneralPolygon_GetData ( TQ3GeometryObject _Nonnull polygon, TQ3GeneralPolygonData * _Nonnull generalPolygonData );
Get the data of a General Polygon object.
This function may allocate memory, which should be freed using
Q3GeneralPolygon_EmptyData
.
- polygon
- A general polygon object.
- generalPolygonData
- Receives data describing the general polygon object.
Q3GeneralPolygon_GetNumContours |
( TQ3Uns32 ) Q3GeneralPolygon_GetNumContours ( TQ3GeometryObject _Nonnull generalPolygon );
Get the number of contours in a general polygon.
- generalPolygon
- A general polygon object.
Q3GeneralPolygon_GetNumVertices |
( TQ3Uns32 ) Q3GeneralPolygon_GetNumVertices ( TQ3GeometryObject _Nonnull generalPolygon, TQ3Uns32 contourIndex );
Get the number of vertices in a specific contour in a general polygon.
- generalPolygon
- A general polygon object.
- contourIndex
- A 0-based index into the array of contours.
Q3GeneralPolygon_GetShapeHint |
( TQ3Status ) Q3GeneralPolygon_GetShapeHint ( TQ3GeometryObject _Nonnull generalPolygon, TQ3GeneralPolygonShapeHint * _Nonnull shapeHint );
Get the shape hint of a general polygon.
- generalPolygon
- A general polygon object.
- shapeHint
- Receives the shape hint.
Q3GeneralPolygon_GetVertexAttributeSet |
( TQ3Status ) Q3GeneralPolygon_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a vertex of a general polygon.
- generalPolygon
- A general polygon object.
- contourIndex
- A 0-based index into the array of contours.
- pointIndex
- A 0-based index into the array of vertices of a contour.
- attributeSet
- Receives a new reference to the vertex attribute set, or nullptr.
Q3GeneralPolygon_GetVertexPosition |
( TQ3Status ) Q3GeneralPolygon_GetVertexPosition ( TQ3GeometryObject _Nonnull generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, TQ3Point3D * _Nonnull position );
Get the 3D position of a vertex in a general polygon.
- generalPolygon
- A general polygon object.
- contourIndex
- A 0-based index into the array of contours.
- pointIndex
- A 0-based index into the array of vertices of a contour.
- position
- Receives the position of the vertex.
Q3GeneralPolygon_New |
( TQ3GeometryObject _Nullable ) Q3GeneralPolygon_New ( const TQ3GeneralPolygonData * _Nonnull generalPolygonData );
Create a new general polygon geometry object.
- generalPolygonData
- Data describing a general polygon.
Q3GeneralPolygon_SetData |
( TQ3Status ) Q3GeneralPolygon_SetData ( TQ3GeometryObject _Nonnull generalPolygon, const TQ3GeneralPolygonData * _Nonnull generalPolygonData );
Modify a general polygon object by supplying a full new set of data.
- generalPolygon
- A general polygon object.
- generalPolygonData
- Data describing a general polygon object.
Q3GeneralPolygon_SetShapeHint |
( TQ3Status ) Q3GeneralPolygon_SetShapeHint ( TQ3GeometryObject _Nonnull generalPolygon, TQ3GeneralPolygonShapeHint shapeHint );
Set the shape hint of a general polygon.
The hint may allow a renderer to optimize drawing the polygon.
- generalPolygon
- A general polygon object.
- shapeHint
- The shape hint.
Q3GeneralPolygon_SetVertexAttributeSet |
( TQ3Status ) Q3GeneralPolygon_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, TQ3AttributeSet _Nullable attributeSet );
Assign an attribute set to a vertex of a general polygon.
The function increments the reference count of the attribute set.
- generalPolygon
- A general polygon object.
- contourIndex
- A 0-based index into the array of contours.
- pointIndex
- A 0-based index into the array of vertices of a contour.
- attributeSet
- Attribute set for the vertex.
Q3GeneralPolygon_SetVertexPosition |
( TQ3Status ) Q3GeneralPolygon_SetVertexPosition ( TQ3GeometryObject _Nonnull generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, const TQ3Point3D * _Nonnull position );
Set the 3D position of a vertex in a general polygon.
- generalPolygon
- A general polygon object.
- contourIndex
- A 0-based index into the array of contours.
- pointIndex
- A 0-based index into the array of vertices of a contour.
- position
- New position for the vertex.
Q3GeneralPolygon_Submit |
( TQ3Status ) Q3GeneralPolygon_Submit ( const TQ3GeneralPolygonData * _Nonnull generalPolygonData, TQ3ViewObject _Nonnull view );
Submits a general polygon for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- generalPolygonData
- Data describing a general polygon.
- view
- A view object.
Q3Geometry_GetAttributeSet |
( TQ3Status ) Q3Geometry_GetAttributeSet ( TQ3GeometryObject _Nonnull geometry, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Returns the attribute set associated with a geometric object.
This function fills the TQ3AttributeSet*
parameter out with the
attribute set of the passed in TQ3GeometryObject
reference.
The reference count of the attribute set is incremented.
To decrease the reference count when finished with the attribute set, use
Q3ObjectDispose()
.
- geometry
- A reference to a geometry object.
- attributeSet
- Receives a reference to the attribute set of the geometry.
Q3Geometry_GetDecomposed |
( TQ3Object _Nullable ) Q3Geometry_GetDecomposed ( TQ3GeometryObject _Nonnull geometry, TQ3ViewObject _Nonnull view );
Creates the decomposed form of the geometry, if any.
The result may be a geometry or a group. If the geometry cannot be decomposed
further, nullptr is returned.
The decomposition of a given geometry is not documented and is subject to change.
Geometries may be decomposed to multiple objects; for example, the decomposition
of a cone with a bottom cap may be a group containing a TriMesh and a Disk.
You are free to modify the group or geometry returned by this function, and
it is your responsibility to dispose it when you are done with it.
This function must be called in a submitting loop. Depending on the geometry,
the result may be affected by the current view state. E.g., the geometry may
be affected by the current transforms and camera, or even by styles such as
subdivision or orientation.
This function is not available in QD3D.
- geometry
- A geometry object.
- view
- A view object
Q3Geometry_GetType |
( TQ3ObjectType ) Q3Geometry_GetType ( TQ3GeometryObject _Nonnull geometry );
Returns the type of the GeometryObject passed in.
This function is used to determine the type of geometry object the parameter
is a reference to. If 'geometry' is invalid, kQ3ObjectTypeInvalid
will be
returned.
- geometry
- A reference to a geometry object.
Q3Geometry_SetAttributeSet |
( TQ3Status ) Q3Geometry_SetAttributeSet ( TQ3GeometryObject _Nonnull geometry, TQ3AttributeSet _Nullable attributeSet );
Sets the attribute set associated with a geometric object.
Applies the attribute set given by the TQ3AttributeSet
parameter onto
the TQ3GeometryObject
reference passed in.
- geometry
- A reference to a geometry object.
- attributeSet
- The attribute set to apply to the object.
Q3Geometry_Submit |
( TQ3Status ) Q3Geometry_Submit ( TQ3GeometryObject _Nonnull geometry, TQ3ViewObject _Nonnull view );
Submits a geometry object for drawing, picking, bounding, or writing.
Submits the passed in TQ3GeometryObject
to the supplied view for
drawing, picking, bounding, or writing.
This function should only be called in a submitting loop.
- geometry
- A reference to a (retained) geometry object.
- view
- The view to submit the geometric object to.
Q3Line_EmptyData |
( TQ3Status ) Q3Line_EmptyData ( TQ3LineData * _Nonnull lineData );
Release memory allocated by Q3Line_GetData
.
- lineData
- Data describing a Line, previously obtained with
Q3Line_GetData
.
Q3Line_GetData |
( TQ3Status ) Q3Line_GetData ( TQ3GeometryObject _Nonnull line, TQ3LineData * _Nonnull lineData );
Get the data of a Line object.
This function may allocate memory, which should be freed using
Q3Line_EmptyData
.
- line
- A Line object.
- lineData
- Receives data describing the Line object.
Q3Line_GetVertexAttributeSet |
( TQ3Status ) Q3Line_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull line, TQ3Uns32 index, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of one of the ends of a line object.
- line
- A line object.
- index
- An index, 0 or 1, specifying an end of the line.
- attributeSet
- Receives a new reference to the attribute set, or nullptr.
Q3Line_GetVertexPosition |
( TQ3Status ) Q3Line_GetVertexPosition ( TQ3GeometryObject _Nonnull line, TQ3Uns32 index, TQ3Point3D * _Nonnull position );
Get the position of one of the ends of a line.
- line
- A line object.
- index
- An index, 0 or 1, specifying an end of the line.
- position
- Receives the position of the vertex.
Q3Line_New |
( TQ3GeometryObject _Nullable ) Q3Line_New ( const TQ3LineData * _Nonnull lineData );
Create a new line geometry object.
- lineData
- Data describing a line.
Q3Line_SetData |
( TQ3Status ) Q3Line_SetData ( TQ3GeometryObject _Nonnull line, const TQ3LineData * _Nonnull lineData );
Modify a line object by supplying a full new set of data.
- line
- A line object.
- lineData
- Data describing a line.
Q3Line_SetVertexAttributeSet |
( TQ3Status ) Q3Line_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull line, TQ3Uns32 index, TQ3AttributeSet _Nullable attributeSet );
Assign an attribute set to one of the ends of a line.
Any previous attribute set on the vertex is disposed.
The new attribute set has its reference count incremented.
- line
- A line object.
- index
- An index, 0 or 1, specifying an end of the line.
- attributeSet
- The new attribute set.
Q3Line_SetVertexPosition |
( TQ3Status ) Q3Line_SetVertexPosition ( TQ3GeometryObject _Nonnull line, TQ3Uns32 index, const TQ3Point3D * _Nonnull position );
Change the position of one of the ends of a line object.
- line
- A line object.
- index
- An index, 0 or 1, specifying an end of the line.
- position
- New position of the vertex.
Q3Line_Submit |
( TQ3Status ) Q3Line_Submit ( const TQ3LineData * _Nonnull lineData, TQ3ViewObject _Nonnull view );
Submits a line for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- lineData
- Data describing a line.
- view
- A view object.
Q3Marker_EmptyData |
( TQ3Status ) Q3Marker_EmptyData ( TQ3MarkerData * _Nonnull markerData );
Release memory allocated by Q3Marker_GetData
.
- markerData
- Data describing a Marker, previously obtained with
Q3Marker_GetData
.
Q3Marker_GetBitmap |
( TQ3Status ) Q3Marker_GetBitmap ( TQ3GeometryObject _Nonnull marker, TQ3Bitmap * _Nonnull bitmap );
Get the bitmap of a Marker object.
This returns a copy of the bitmap of the marker. When you are done
with it, use Q3Bitmap_Empty
to release the memory.
- marker
- A marker object.
- bitmap
- Receives a copy of the bitmap of the marker.
Q3Marker_GetData |
( TQ3Status ) Q3Marker_GetData ( TQ3GeometryObject _Nonnull geometry, TQ3MarkerData * _Nonnull markerData );
Get the data of a Marker object.
This function may allocate memory, which should be freed using
Q3Marker_EmptyData
.
- geometry
- A Marker object.
- markerData
- Receives data describing the Marker object.
Q3Marker_GetPosition |
( TQ3Status ) Q3Marker_GetPosition ( TQ3GeometryObject _Nonnull marker, TQ3Point3D * _Nonnull location );
Get the position of a Marker object.
The position corresponds to the location
field of the
TQ3MarkerData
structure.
- marker
- A marker object.
- location
- Receives the location of the marker object.
Q3Marker_GetXOffset |
( TQ3Status ) Q3Marker_GetXOffset ( TQ3GeometryObject _Nonnull marker, TQ3Int32 * _Nonnull xOffset );
Get the horizontal offset, in screen pixels, from the marker location to the
upper left corner of the marker bitmap.
- marker
- A marker object.
- xOffset
- Receives the horizontal offset in pixels.
Q3Marker_GetYOffset |
( TQ3Status ) Q3Marker_GetYOffset ( TQ3GeometryObject _Nonnull marker, TQ3Int32 * _Nonnull yOffset );
Get the vertical offset, in screen pixels, from the marker location to the
upper left corner of the marker bitmap.
- marker
- A marker object.
- yOffset
- Receives the vertical offset in pixels.
Q3Marker_New |
( TQ3GeometryObject _Nullable ) Q3Marker_New ( const TQ3MarkerData * _Nonnull markerData );
Create a new marker geometry object.
- markerData
- Data describing a marker.
Q3Marker_SetBitmap |
( TQ3Status ) Q3Marker_SetBitmap ( TQ3GeometryObject _Nonnull marker, const TQ3Bitmap * _Nonnull bitmap );
Change the bitmap of a Marker object.
This makes a copy of the bitmap data, so you can dispose of the
original.
- marker
- A marker object.
- bitmap
- New bitmap to be used by the marker.
Q3Marker_SetData |
( TQ3Status ) Q3Marker_SetData ( TQ3GeometryObject _Nonnull geometry, const TQ3MarkerData * _Nonnull markerData );
Modify a marker object by supplying a full new set of data.
- geometry
- A marker object.
- markerData
- Data describing a marker.
Q3Marker_SetPosition |
( TQ3Status ) Q3Marker_SetPosition ( TQ3GeometryObject _Nonnull marker, const TQ3Point3D * _Nonnull location );
Set the position of a Marker object.
The position corresponds to the location
field of the
TQ3MarkerData
structure.
- marker
- A marker object.
- location
- New location of the marker object.
Q3Marker_SetXOffset |
( TQ3Status ) Q3Marker_SetXOffset ( TQ3GeometryObject _Nonnull marker, TQ3Int32 xOffset );
Set the horizontal offset, in screen pixels, from the marker location to the
upper left corner of the marker bitmap.
- marker
- A marker object.
- xOffset
- New horizontal offset in pixels.
Q3Marker_SetYOffset |
( TQ3Status ) Q3Marker_SetYOffset ( TQ3GeometryObject _Nonnull marker, TQ3Int32 yOffset );
Set the vertical offset, in screen pixels, from the marker location to the
upper left corner of the marker bitmap.
- marker
- A marker object.
- yOffset
- New vertical offset in pixels.
Q3Marker_Submit |
( TQ3Status ) Q3Marker_Submit ( const TQ3MarkerData * _Nonnull markerData, TQ3ViewObject _Nonnull view );
Submits a marker for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- markerData
- Data describing a marker.
- view
- A view object.
Q3Mesh_ContourToFace |
( TQ3MeshFace _Nullable ) Q3Mesh_ContourToFace ( TQ3GeometryObject _Nonnull mesh, TQ3MeshContour _Nonnull contour );
Convert a mesh face to a contour.
- mesh
- The mesh to update.
- contour
- The contour to convert to a face.
Q3Mesh_DelayUpdates |
( TQ3Status ) Q3Mesh_DelayUpdates ( TQ3GeometryObject _Nonnull mesh );
Delay updates to a mesh.
Can be used before a mesh is edited to allow Quesa to defer any
geometrical optimisations on the mesh. While updates are deferred,
Quesa will select a more flexible internal mesh representation.
- mesh
- The mesh to delay updates on.
Q3Mesh_EmptyData |
( TQ3Status ) Q3Mesh_EmptyData ( TQ3MeshData * _Nonnull meshData );
Releases the memory allocated by a prior call to Q3Mesh_GetData
.
This function is not available in QD3D.
- meshData
- A pointer to the mesh data allocated by
Q3Mesh_GetData()
.

Q3Mesh_FaceNew |
( TQ3MeshFace _Nonnull ) Q3Mesh_FaceNew ( TQ3GeometryObject _Nonnull mesh, TQ3Uns32 numVertices, const TQ3MeshVertex _Nonnull * _Nonnull vertices, TQ3AttributeSet _Nullable attributeSet );
Create a new mesh face.
- mesh
- The mesh to create the face within.
- numVertices
- The number of vertices in the face.
- vertices
- The vertices for the face.
- attributeSet
- The attribute set for the face.
Q3Mesh_FaceToContour |
( TQ3MeshContour _Nonnull ) Q3Mesh_FaceToContour ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull containerFace, TQ3MeshFace _Nonnull face );
Convert a mesh face to a contour.
- mesh
- The mesh to update.
- containerFace
- The face containing the face which will be converted.
- face
- The face to convert to a contour.
Q3Mesh_FirstComponentEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_FirstComponentEdge ( TQ3MeshComponent _Nonnull component, TQ3MeshIterator * _Nonnull iterator );
Get the first edge in a mesh component.
- component
- The component to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstComponentVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_FirstComponentVertex ( TQ3MeshComponent _Nonnull component, TQ3MeshIterator * _Nonnull iterator );
Get the first vertex in a mesh component.
- component
- The component to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstContourEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_FirstContourEdge ( TQ3MeshContour _Nonnull contour, TQ3MeshIterator * _Nonnull iterator );
Get the first edge in a mesh contour.
- contour
- The contour to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstContourFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_FirstContourFace ( TQ3MeshContour _Nonnull contour, TQ3MeshIterator * _Nonnull iterator );
Get the first face in a mesh contour.
- contour
- The contour to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstContourVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_FirstContourVertex ( TQ3MeshContour _Nonnull contour, TQ3MeshIterator * _Nonnull iterator );
Get the first vertex in a mesh contour.
- contour
- The contour to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceContour |
( TQ3MeshContour _Nonnull ) Q3Mesh_FirstFaceContour ( TQ3MeshFace _Nonnull face, TQ3MeshIterator * _Nonnull iterator );
Get the first contour in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_FirstFaceEdge ( TQ3MeshFace _Nonnull face, TQ3MeshIterator * _Nonnull iterator );
Get the first edge in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_FirstFaceFace ( TQ3MeshFace _Nonnull face, TQ3MeshIterator * _Nonnull iterator );
Get the first face in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_FirstFaceVertex ( TQ3MeshFace _Nonnull face, TQ3MeshIterator * _Nonnull iterator );
Get the first vertex in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshComponent |
( TQ3MeshComponent _Nonnull ) Q3Mesh_FirstMeshComponent ( TQ3GeometryObject _Nonnull mesh, TQ3MeshIterator * _Nonnull iterator );
Get the first component in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_FirstMeshEdge ( TQ3GeometryObject _Nonnull mesh, TQ3MeshIterator * _Nonnull iterator );
Get the first edge in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_FirstMeshFace ( TQ3GeometryObject _Nonnull mesh, TQ3MeshIterator * _Nonnull iterator );
Get the first face in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_FirstMeshVertex ( TQ3GeometryObject _Nonnull mesh, TQ3MeshIterator * _Nonnull iterator );
Get the first vertex in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstVertexEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_FirstVertexEdge ( TQ3MeshVertex _Nonnull vertex, TQ3MeshIterator * _Nonnull iterator );
Get the first edge in a mesh vertex.
- vertex
- The vertex to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstVertexFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_FirstVertexFace ( TQ3MeshVertex _Nonnull vertex, TQ3MeshIterator * _Nonnull iterator );
Get the first face in a mesh vertex.
- vertex
- The vertex to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstVertexVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_FirstVertexVertex ( TQ3MeshVertex _Nonnull vertex, TQ3MeshIterator * _Nonnull iterator );
Get the first vertex in a mesh vertex.
- vertex
- The vertex to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_GetComponentBoundingBox |
( TQ3Status ) Q3Mesh_GetComponentBoundingBox ( TQ3GeometryObject _Nonnull mesh, TQ3MeshComponent _Nonnull component, TQ3BoundingBox * _Nonnull boundingBox );
Get the bounding box of a mesh component
- mesh
- The mesh to query.
- component
- The component to query.
- boundingBox
- Receives the bounding box of the component.
Q3Mesh_GetComponentNumEdges |
( TQ3Status ) Q3Mesh_GetComponentNumEdges ( TQ3GeometryObject _Nonnull mesh, TQ3MeshComponent _Nonnull component, TQ3Uns32 * _Nonnull numEdges );
Get the number of edges in a mesh component
- mesh
- The mesh to query.
- component
- The component to query.
- numEdges
- Receives the number of edges in the component.
Q3Mesh_GetComponentNumVertices |
( TQ3Status ) Q3Mesh_GetComponentNumVertices ( TQ3GeometryObject _Nonnull mesh, TQ3MeshComponent _Nonnull component, TQ3Uns32 * _Nonnull numVertices );
Get the number of vertices in a mesh component
- mesh
- The mesh to query.
- component
- The component to query.
- numVertices
- Receives the number of vertices in the component.
Q3Mesh_GetComponentOrientable |
( TQ3Status ) Q3Mesh_GetComponentOrientable ( TQ3GeometryObject _Nonnull mesh, TQ3MeshComponent _Nonnull component, TQ3Boolean * _Nonnull orientable );
Get the orientable state of a mesh component
- mesh
- The mesh to query.
- component
- The component to query.
- orientable
- Receives the orientable state of the component.
Q3Mesh_GetContourFace |
( TQ3Status ) Q3Mesh_GetContourFace ( TQ3GeometryObject _Nonnull mesh, TQ3MeshContour _Nonnull contour, TQ3MeshFace _Nonnull * _Nonnull face );
Get the face of a mesh contour.
- mesh
- The mesh to query.
- contour
- The contour to query.
- face
- Receives the face of the mesh contour.
Q3Mesh_GetContourNumVertices |
( TQ3Status ) Q3Mesh_GetContourNumVertices ( TQ3GeometryObject _Nonnull mesh, TQ3MeshContour _Nonnull contour, TQ3Uns32 * _Nonnull numVertices );
Get the number of vertices in a mesh contour.
- mesh
- The mesh to query.
- contour
- The contour to query.
- numVertices
- Receives the number of vertices in the mesh contour.
Q3Mesh_GetCornerAttributeSet |
( TQ3Status ) Q3Mesh_GetCornerAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3MeshFace _Nonnull face, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a mesh corner.
- mesh
- The mesh to query.
- vertex
- The vertex to query.
- face
- The face to query.
- attributeSet
- Receives the attribute set of the mesh corner.
Q3Mesh_GetData |
( TQ3Status ) Q3Mesh_GetData ( TQ3GeometryObject _Nonnull mesh, TQ3MeshData * _Nonnull meshData );
Gets the properties of an existing mesh object.
Memory is allocated for the 'meshData' parameter, and Q3Mesh_EmptyData
must be called to dispose of this memory.
This function is not available in QD3D.
- mesh
- A reference to a mesh geometry object.
- meshData
- Receives the mesh object's description.
Q3Mesh_GetEdgeAttributeSet |
( TQ3Status ) Q3Mesh_GetEdgeAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshEdge _Nonnull edge, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a mesh edge.
- mesh
- The mesh to query.
- edge
- The edge to query.
- attributeSet
- Receives the attribute set of the mesh edge.
Q3Mesh_GetEdgeComponent |
( TQ3Status ) Q3Mesh_GetEdgeComponent ( TQ3GeometryObject _Nonnull mesh, TQ3MeshEdge _Nonnull edge, TQ3MeshComponent _Nonnull * _Nonnull component );
Get the component of a mesh edge.
- mesh
- The mesh to query.
- edge
- The edge to query.
- component
- Receives the component of the mesh edge.
Q3Mesh_GetEdgeFaces |
( TQ3Status ) Q3Mesh_GetEdgeFaces ( TQ3GeometryObject _Nonnull mesh, TQ3MeshEdge _Nonnull edge, TQ3MeshFace _Nonnull * _Nonnull face1, TQ3MeshFace _Nonnull * _Nonnull face2 );
Get the faces of a mesh edge.
- mesh
- The mesh to query.
- edge
- The edge to query.
- face1
- Receives the first face of the mesh edge.
- face2
- Receives the second face of the mesh edge.
Q3Mesh_GetEdgeOnBoundary |
( TQ3Status ) Q3Mesh_GetEdgeOnBoundary ( TQ3GeometryObject _Nonnull mesh, TQ3MeshEdge _Nonnull edge, TQ3Boolean * _Nonnull onBoundary );
Get the boundary state of a mesh edge.
- mesh
- The mesh to query.
- edge
- The edge to query.
- onBoundary
- Receives the boundary state of the mesh edge.
Q3Mesh_GetEdgeVertices |
( TQ3Status ) Q3Mesh_GetEdgeVertices ( TQ3GeometryObject _Nonnull mesh, TQ3MeshEdge _Nonnull edge, TQ3MeshVertex _Nonnull * _Nonnull vertex1, TQ3MeshVertex _Nonnull * _Nonnull vertex2 );
Get the vertices of a mesh edge.
- mesh
- The mesh to query.
- edge
- The edge to query.
- vertex1
- Receives the first vertex of the mesh edge.
- vertex2
- Receives the second vertex of the mesh edge.
Q3Mesh_GetFaceAttributeSet |
( TQ3Status ) Q3Mesh_GetFaceAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a mesh face.
- mesh
- The mesh to query.
- face
- The face to query.
- attributeSet
- Receives the attribute set of the mesh face.
Q3Mesh_GetFaceComponent |
( TQ3Status ) Q3Mesh_GetFaceComponent ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3MeshComponent _Nonnull * _Nonnull component );
Get the component of a mesh face.
- mesh
- The mesh to query.
- face
- The face to query.
- component
- Receives the component of the mesh face.
Q3Mesh_GetFaceIndex |
( TQ3Status ) Q3Mesh_GetFaceIndex ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3Uns32 * _Nonnull index );
Get the index of a mesh face.
- mesh
- The mesh to query.
- face
- The face to query.
- index
- Receives the index of the mesh face.
Q3Mesh_GetFaceNumContours |
( TQ3Status ) Q3Mesh_GetFaceNumContours ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3Uns32 * _Nonnull numContours );
Get the number of contours of a mesh face.
- mesh
- The mesh to query.
- face
- The face to query.
- numContours
- Receives the number of contours of the mesh face.
Q3Mesh_GetFaceNumVertices |
( TQ3Status ) Q3Mesh_GetFaceNumVertices ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3Uns32 * _Nonnull numVertices );
Get the number of vertices in a mesh face.
- mesh
- The mesh to query.
- face
- The face to query.
- numVertices
- Receives the number of vertices in the mesh face.
Q3Mesh_GetFacePlaneEquation |
( TQ3Status ) Q3Mesh_GetFacePlaneEquation ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3PlaneEquation * _Nonnull planeEquation );
Get the plane equation of a mesh face.
- mesh
- The mesh to query.
- face
- The face to query.
- planeEquation
- Receives the plane equation of the mesh face.
Q3Mesh_GetNumComponents |
( TQ3Status ) Q3Mesh_GetNumComponents ( TQ3GeometryObject _Nonnull mesh, TQ3Uns32 * _Nonnull numComponents );
Get the number of components of a mesh.
- mesh
- The mesh to query.
- numComponents
- Receives the number of components of the mesh.
Q3Mesh_GetNumCorners |
( TQ3Status ) Q3Mesh_GetNumCorners ( TQ3GeometryObject _Nonnull mesh, TQ3Uns32 * _Nonnull numCorners );
Get the number of corners in a mesh
- mesh
- The mesh to query.
- numCorners
- Receives the number of corners in the mesh.
Q3Mesh_GetNumEdges |
( TQ3Status ) Q3Mesh_GetNumEdges ( TQ3GeometryObject _Nonnull mesh, TQ3Uns32 * _Nonnull numEdges );
Get the number of edges in a mesh
- mesh
- The mesh to query.
- numEdges
- Receives the number of edges in the mesh.
Q3Mesh_GetNumFaces |
( TQ3Status ) Q3Mesh_GetNumFaces ( TQ3GeometryObject _Nonnull mesh, TQ3Uns32 * _Nonnull numFaces );
Get the number of faces in a mesh
- mesh
- The mesh to query.
- numFaces
- Receives the number of faces in the mesh.
Q3Mesh_GetNumVertices |
( TQ3Status ) Q3Mesh_GetNumVertices ( TQ3GeometryObject _Nonnull mesh, TQ3Uns32 * _Nonnull numVertices );
Get the number of vertices in a mesh
- mesh
- The mesh to query.
- numVertices
- Receives the number of vertices in the mesh.
Q3Mesh_GetOrientable |
( TQ3Status ) Q3Mesh_GetOrientable ( TQ3GeometryObject _Nonnull mesh, TQ3Boolean * _Nonnull orientable );
Get the mesh orientable state
- mesh
- The mesh to query.
- orientable
- Receives the mesh orientable state.
Q3Mesh_GetVertexAttributeSet |
( TQ3Status ) Q3Mesh_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a mesh vertex.
- mesh
- The mesh to query.
- vertex
- The vertex to query.
- attributeSet
- Receives the attribute set of the mesh vertex.
Q3Mesh_GetVertexComponent |
( TQ3Status ) Q3Mesh_GetVertexComponent ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3MeshComponent _Nonnull * _Nonnull component );
Get the component of a mesh vertex.
- mesh
- The mesh to query.
- vertex
- The vertex to query.
- component
- Receives the component of the mesh vertex.
Q3Mesh_GetVertexCoordinates |
( TQ3Status ) Q3Mesh_GetVertexCoordinates ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3Point3D * _Nonnull coordinates );
Get the coordinates of a mesh vertex.
- mesh
- The mesh to query.
- vertex
- The vertex to query.
- coordinates
- Receives the coordinates of the vertex.
Q3Mesh_GetVertexIndex |
( TQ3Status ) Q3Mesh_GetVertexIndex ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3Uns32 * _Nonnull index );
Get the index of a mesh vertex.
- mesh
- The mesh to query.
- vertex
- The vertex to query.
- index
- Receives the index of the vertex.
Q3Mesh_GetVertexOnBoundary |
( TQ3Status ) Q3Mesh_GetVertexOnBoundary ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3Boolean * _Nonnull onBoundary );
Get the boundary state for a mesh vertex
- mesh
- The mesh to query.
- vertex
- The vertex to query.
- onBoundary
- Receives the vertex boundary state.
Q3Mesh_New |
( TQ3GeometryObject _Nullable ) Q3Mesh_New (void);
Create a new empty Mesh geometry object.
Q3Mesh_NextComponentEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_NextComponentEdge ( TQ3MeshIterator * _Nonnull iterator );
Get the next edge in a mesh component.
- iterator
- The mesh iterator.
Q3Mesh_NextComponentVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_NextComponentVertex ( TQ3MeshIterator * _Nonnull iterator );
Get the next vertex in a mesh component.
- iterator
- The mesh iterator.
Q3Mesh_NextContourEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_NextContourEdge ( TQ3MeshIterator * _Nonnull iterator );
Get the next edge in a mesh contour.
- iterator
- The mesh iterator.
Q3Mesh_NextContourFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_NextContourFace ( TQ3MeshIterator * _Nonnull iterator );
Get the next face in a mesh contour.
- iterator
- The mesh iterator.
Q3Mesh_NextContourVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_NextContourVertex ( TQ3MeshIterator * _Nonnull iterator );
Get the next vertex in a mesh contour.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceContour |
( TQ3MeshContour _Nonnull ) Q3Mesh_NextFaceContour ( TQ3MeshIterator * _Nonnull iterator );
Get the next contour in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_NextFaceEdge ( TQ3MeshIterator * _Nonnull iterator );
Get the next edge in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_NextFaceFace ( TQ3MeshIterator * _Nonnull iterator );
Get the next face in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_NextFaceVertex ( TQ3MeshIterator * _Nonnull iterator );
Get the next vertex in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshComponent |
( TQ3MeshComponent _Nonnull ) Q3Mesh_NextMeshComponent ( TQ3MeshIterator * _Nonnull iterator );
Get the next component in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_NextMeshEdge ( TQ3MeshIterator * _Nonnull iterator );
Get the next edge in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_NextMeshFace ( TQ3MeshIterator * _Nonnull iterator );
Get the next face in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_NextMeshVertex ( TQ3MeshIterator * _Nonnull iterator );
Get the next vertex in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextVertexEdge |
( TQ3MeshEdge _Nonnull ) Q3Mesh_NextVertexEdge ( TQ3MeshIterator * _Nonnull iterator );
Get the next edge in a mesh vertex.
- iterator
- The mesh iterator.
Q3Mesh_NextVertexFace |
( TQ3MeshFace _Nonnull ) Q3Mesh_NextVertexFace ( TQ3MeshIterator * _Nonnull iterator );
Get the next face in a mesh vertex.
- iterator
- The mesh iterator.
Q3Mesh_NextVertexVertex |
( TQ3MeshVertex _Nonnull ) Q3Mesh_NextVertexVertex ( TQ3MeshIterator * _Nonnull iterator );
Get the next vertex in a mesh vertex.
- iterator
- The mesh iterator.
Q3Mesh_ResumeUpdates |
( TQ3Status ) Q3Mesh_ResumeUpdates ( TQ3GeometryObject _Nonnull mesh );
Resume updates to a mesh.
Should be used after a preceding call to Q3Mesh_DelayUpdates to
indicate to Quesa that an optimised internal representation of
the mesh would be preferred to a more flexible form.
- mesh
- The mesh to resume updatse for.
Q3Mesh_SetCornerAttributeSet |
( TQ3Status ) Q3Mesh_SetCornerAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3MeshFace _Nonnull face, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set for a mesh corner.
- mesh
- The mesh to update.
- vertex
- The vertex to update.
- face
- The face to update.
- attributeSet
- The new attribute set for the mesh corner.
Q3Mesh_SetData |
( TQ3Status ) Q3Mesh_SetData ( TQ3GeometryObject _Nonnull mesh, const TQ3MeshData * _Nonnull meshData );
Sets the properties of an existing mesh object.
If successful, this function invalidates all preexisting references to mesh parts
(TQ3MeshVertex
, TQ3MeshContour
, TQ3MeshFace
,
TQ3MeshCorner
, TQ3MeshEdge
, TQ3MeshComponent
)
and mesh iterators (TQ3MeshIterator
).
This function is not available in QD3D.
- mesh
- A reference to a mesh geometry object.
- meshData
- A pointer to the mesh data to apply to the mesh object.
Q3Mesh_SetEdgeAttributeSet |
( TQ3Status ) Q3Mesh_SetEdgeAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshEdge _Nonnull edge, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set for a mesh edge.
- mesh
- The mesh to update.
- edge
- The edge to update.
- attributeSet
- The new attribute set for the mesh edge.
Q3Mesh_SetFaceAttributeSet |
( TQ3Status ) Q3Mesh_SetFaceAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshFace _Nonnull face, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a mesh face.
- mesh
- The mesh to update.
- face
- The face to update.
- attributeSet
- The new attribute set for the mesh face.
Q3Mesh_SetVertexAttributeSet |
( TQ3Status ) Q3Mesh_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a mesh vertex
- mesh
- The mesh to udate.
- vertex
- The vertex to update.
- attributeSet
- The new attribute set for the mesh vertex.
Q3Mesh_SetVertexCoordinates |
( TQ3Status ) Q3Mesh_SetVertexCoordinates ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex, const TQ3Point3D * _Nonnull coordinates );
Set the coordinates of a mesh vertex.
- mesh
- The mesh to update.
- vertex
- The vertex to update.
- coordinates
- The new coordinates for the mesh vertex.
Q3Mesh_VertexDelete |
( TQ3Status ) Q3Mesh_VertexDelete ( TQ3GeometryObject _Nonnull mesh, TQ3MeshVertex _Nonnull vertex );
Delete a mesh vertex.
- mesh
- The mesh to remove the vertex from.
- vertex
- The mesh vertex to delete.
Q3Mesh_VertexNew |
( TQ3MeshVertex _Nonnull ) Q3Mesh_VertexNew ( TQ3GeometryObject _Nonnull mesh, const TQ3Vertex3D * _Nonnull vertex );
Create a new mesh vertex.
- mesh
- The mesh to create the vertex within.
- vertex
- The data for the vertex.
Q3NURBCurve_EmptyData |
( TQ3Status ) Q3NURBCurve_EmptyData ( TQ3NURBCurveData * _Nonnull nurbCurveData );
Release memory allocated by Q3NURBCurve_GetData
.
- nurbCurveData
- Data describing a NURB Curve, previously obtained with
Q3NURBCurve_GetData
.
Q3NURBCurve_GetControlPoint |
( TQ3Status ) Q3NURBCurve_GetControlPoint ( TQ3GeometryObject _Nonnull curve, TQ3Uns32 pointIndex, TQ3RationalPoint4D * _Nonnull point4D );
Get a control point from a NURB curve.
- curve
- The NURB curve to query.
- pointIndex
- The index of the point to query.
- point4D
- Receives the control point value.
Q3NURBCurve_GetData |
( TQ3Status ) Q3NURBCurve_GetData ( TQ3GeometryObject _Nonnull curve, TQ3NURBCurveData * _Nonnull nurbCurveData );
Get the data of a NURB Curve object.
This function may allocate memory, which should be freed using
Q3NURBCurve_EmptyData
.
- curve
- A NURB Curve object.
- nurbCurveData
- Receives data describing the NURB Curve object.
Q3NURBCurve_GetKnot |
( TQ3Status ) Q3NURBCurve_GetKnot ( TQ3GeometryObject _Nonnull curve, TQ3Uns32 knotIndex, float * _Nonnull knotValue );
Get a knot from a NURB curve.
- curve
- The NURB curve to query.
- knotIndex
- The index of the knot to query.
- knotValue
- Receives the knot value.
Q3NURBCurve_New |
( TQ3GeometryObject _Nullable ) Q3NURBCurve_New ( const TQ3NURBCurveData * _Nonnull curveData );
Create a new NURB curve geometry object.
- curveData
- Data describing a NURB curve.
Q3NURBCurve_SetControlPoint |
( TQ3Status ) Q3NURBCurve_SetControlPoint ( TQ3GeometryObject _Nonnull curve, TQ3Uns32 pointIndex, const TQ3RationalPoint4D * _Nonnull point4D );
Set a control point for a NURB curve.
- curve
- The NURB curve to update.
- pointIndex
- The index of the point to update.
- point4D
- The new control point value.
Q3NURBCurve_SetData |
( TQ3Status ) Q3NURBCurve_SetData ( TQ3GeometryObject _Nonnull curve, const TQ3NURBCurveData * _Nonnull nurbCurveData );
Modify a NURB curve object by supplying a full new set of data.
- curve
- A NURB curve object.
- nurbCurveData
- Data describing a NURB curve object.
Q3NURBCurve_SetKnot |
( TQ3Status ) Q3NURBCurve_SetKnot ( TQ3GeometryObject _Nonnull curve, TQ3Uns32 knotIndex, float knotValue );
Set a knot for a NURB curve.
- curve
- The NURB curve to update.
- knotIndex
- The index of the knot to update.
- knotValue
- The new knot value.
Q3NURBCurve_Submit |
( TQ3Status ) Q3NURBCurve_Submit ( const TQ3NURBCurveData * _Nonnull curveData, TQ3ViewObject _Nonnull view );
Submits a NURB curve for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- curveData
- Data describing a NURB curve.
- view
- A view object.
Q3NURBPatch_EmptyData |
( TQ3Status ) Q3NURBPatch_EmptyData ( TQ3NURBPatchData * _Nonnull nurbPatchData );
Release memory allocated by Q3NURBPatch_GetData
.
- nurbPatchData
- Data describing a NURB Patch, previously obtained with
Q3NURBPatch_GetData
.
Q3NURBPatch_GetControlPoint |
( TQ3Status ) Q3NURBPatch_GetControlPoint ( TQ3GeometryObject _Nonnull nurbPatch, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3RationalPoint4D * _Nonnull point4D );
Get a control point for a NURB patch.
- nurbPatch
- The NURB patch to query.
- rowIndex
- The row index of the control point.
- columnIndex
- The column index of the control point.
- point4D
- Receives the control point value.
Q3NURBPatch_GetData |
( TQ3Status ) Q3NURBPatch_GetData ( TQ3GeometryObject _Nonnull nurbPatch, TQ3NURBPatchData * _Nonnull nurbPatchData );
Get the data of a NURB Patch object.
This function may allocate memory, which should be freed using
Q3NURBPatch_EmptyData
.
- nurbPatch
- A NURB Patch object.
- nurbPatchData
- Receives data describing the NURB Patch object.
Q3NURBPatch_GetUKnot |
( TQ3Status ) Q3NURBPatch_GetUKnot ( TQ3GeometryObject _Nonnull nurbPatch, TQ3Uns32 knotIndex, float * _Nonnull knotValue );
Get a U knot from a NURB patch.
- nurbPatch
- The NURB patch to query.
- knotIndex
- The index of the knot to query.
- knotValue
- Rceives the knot value.
Q3NURBPatch_GetVKnot |
( TQ3Status ) Q3NURBPatch_GetVKnot ( TQ3GeometryObject _Nonnull nurbPatch, TQ3Uns32 knotIndex, float * _Nonnull knotValue );
Get a V knot from a NURB patch.
- nurbPatch
- The NURB patch to query.
- knotIndex
- The index of the knot to query.
- knotValue
- Rceives the knot value.
Q3NURBPatch_New |
( TQ3GeometryObject _Nullable ) Q3NURBPatch_New ( const TQ3NURBPatchData * _Nonnull nurbPatchData );
Create a new NURB patch geometry object.
- nurbPatchData
- Data describing a NURB patch.
Q3NURBPatch_SetControlPoint |
( TQ3Status ) Q3NURBPatch_SetControlPoint ( TQ3GeometryObject _Nonnull nurbPatch, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, const TQ3RationalPoint4D * _Nonnull point4D );
Set a control point for a NURB patch.
- nurbPatch
- The NURB patch to update.
- rowIndex
- The row index of the control point.
- columnIndex
- The column index of the control point.
- point4D
- The new control point value.
Q3NURBPatch_SetData |
( TQ3Status ) Q3NURBPatch_SetData ( TQ3GeometryObject _Nonnull nurbPatch, const TQ3NURBPatchData * _Nonnull nurbPatchData );
Modify a NURB patch object by supplying a full new set of data.
- nurbPatch
- A NURB patch object.
- nurbPatchData
- Data describing a NURB patch object.
Q3NURBPatch_SetUKnot |
( TQ3Status ) Q3NURBPatch_SetUKnot ( TQ3GeometryObject _Nonnull nurbPatch, TQ3Uns32 knotIndex, float knotValue );
Set a U knot for a NURB patch.
- nurbPatch
- The NURB patch to update.
- knotIndex
- The index of the knot to update.
- knotValue
- The new value for the knot.
Q3NURBPatch_SetVKnot |
( TQ3Status ) Q3NURBPatch_SetVKnot ( TQ3GeometryObject _Nonnull nurbPatch, TQ3Uns32 knotIndex, float knotValue );
Set a K knot for a NURB patch.
- nurbPatch
- The NURB patch to update.
- knotIndex
- The index of the knot to update.
- knotValue
- The new value for the knot.
Q3NURBPatch_Submit |
( TQ3Status ) Q3NURBPatch_Submit ( const TQ3NURBPatchData * _Nonnull nurbPatchData, TQ3ViewObject _Nonnull view );
Submits a NURB patch for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- nurbPatchData
- Data describing a NURB patch.
- view
- A view object.
Q3PixmapMarker_EmptyData |
( TQ3Status ) Q3PixmapMarker_EmptyData ( TQ3PixmapMarkerData * _Nonnull pixmapMarkerData );
Release memory allocated by Q3PixmapMarker_GetData
.
- pixmapMarkerData
- Data describing a Pixmap Marker, previously obtained with
Q3PixmapMarker_GetData
.
Q3PixmapMarker_GetData |
( TQ3Status ) Q3PixmapMarker_GetData ( TQ3GeometryObject _Nonnull geometry, TQ3PixmapMarkerData * _Nonnull pixmapMarkerData );
Get the data of a Pixmap Marker object.
This function may allocate memory, which should be freed using
Q3PixmapMarker_EmptyData
.
- geometry
- A Pixmap Marker object.
- pixmapMarkerData
- Receives data describing the Pixmap Marker object.
Q3PixmapMarker_GetPixmap |
( TQ3Status ) Q3PixmapMarker_GetPixmap ( TQ3GeometryObject _Nonnull pixmapMarker, TQ3StoragePixmap * _Nonnull pixmap );
Get a copy of the pixmap used within a pixmap marker, including
a new reference to the image storage.
- pixmapMarker
- A pixmap marker object.
- pixmap
- Receives the pixmap structure of the marker.
Q3PixmapMarker_GetPosition |
( TQ3Status ) Q3PixmapMarker_GetPosition ( TQ3GeometryObject _Nonnull pixmapMarker, TQ3Point3D * _Nonnull position );
Get the position of the pixmap marker in world coordinates.
- pixmapMarker
- A pixmap marker object.
- position
- Receives the position of the pixmap marker.
Q3PixmapMarker_GetXOffset |
( TQ3Status ) Q3PixmapMarker_GetXOffset ( TQ3GeometryObject _Nonnull pixmapMarker, TQ3Int32 * _Nonnull xOffset );
Get the horizontal offset, in screen pixels, from the marker position to
the upper left corner of the marker image.
- pixmapMarker
- A pixmap marker object.
- xOffset
- Receives the horizontal offset of the marker in pixels.
Q3PixmapMarker_GetYOffset |
( TQ3Status ) Q3PixmapMarker_GetYOffset ( TQ3GeometryObject _Nonnull pixmapMarker, TQ3Int32 * _Nonnull yOffset );
Get the vertical offset, in screen pixels, from the marker position to
the upper left corner of the marker image.
- pixmapMarker
- A pixmap marker object.
- yOffset
- Receives the vertical offset of the marker in pixels.
Q3PixmapMarker_New |
( TQ3GeometryObject _Nullable ) Q3PixmapMarker_New ( const TQ3PixmapMarkerData * _Nonnull pixmapMarkerData );
Create a new pixmap marker geometry object.
- pixmapMarkerData
- Data describing a pixmap marker.
Q3PixmapMarker_SetData |
( TQ3Status ) Q3PixmapMarker_SetData ( TQ3GeometryObject _Nonnull geometry, const TQ3PixmapMarkerData * _Nonnull pixmapMarkerData );
Modify a pixmap marker object by supplying a full new set of data.
- geometry
- A pixmap marker object.
- pixmapMarkerData
- Data describing a pixmap marker object.
Q3PixmapMarker_SetPixmap |
( TQ3Status ) Q3PixmapMarker_SetPixmap ( TQ3GeometryObject _Nonnull pixmapMarker, const TQ3StoragePixmap * _Nonnull pixmap );
Change the pixmap used by a pixmap marker. The function makes a copy of the data,
including incrementing the reference count of the image storage.
- pixmapMarker
- A pixmap marker object.
- pixmap
- New pixmap to be used by the marker.
Q3PixmapMarker_SetPosition |
( TQ3Status ) Q3PixmapMarker_SetPosition ( TQ3GeometryObject _Nonnull pixmapMarker, const TQ3Point3D * _Nonnull position );
Change the position of a pixmap marker object.
- pixmapMarker
- A pixmap marker object.
- position
- New position of the pixmap marker in world coordinates.
Q3PixmapMarker_SetXOffset |
( TQ3Status ) Q3PixmapMarker_SetXOffset ( TQ3GeometryObject _Nonnull pixmapMarker, TQ3Int32 xOffset );
Set the horizontal offset, in screen pixels, from the marker position to
the upper left corner of the marker image.
- pixmapMarker
- A pixmap marker object.
- xOffset
- The horizontal offset of the marker in pixels.
Q3PixmapMarker_SetYOffset |
( TQ3Status ) Q3PixmapMarker_SetYOffset ( TQ3GeometryObject _Nonnull pixmapMarker, TQ3Int32 yOffset );
Set the vertical offset, in screen pixels, from the marker position to
the upper left corner of the marker image.
- pixmapMarker
- A pixmap marker object.
- yOffset
- The vertical offset of the marker in pixels.
Q3PixmapMarker_Submit |
( TQ3Status ) Q3PixmapMarker_Submit ( const TQ3PixmapMarkerData * _Nonnull pixmapMarkerData, TQ3ViewObject _Nonnull view );
Submits a pixmap marker for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- pixmapMarkerData
- Data describing a pixmap marker.
- view
- A view object.
Q3Point_EmptyData |
( TQ3Status ) Q3Point_EmptyData ( TQ3PointData * _Nonnull pointData );
Release memory allocated by Q3Point_GetData
.
- pointData
- Data describing a Point, previously obtained with
Q3Point_GetData
.
Q3Point_GetData |
( TQ3Status ) Q3Point_GetData ( TQ3GeometryObject _Nonnull point, TQ3PointData * _Nonnull pointData );
Get the data of a Point object.
This function may allocate memory, which should be freed using
Q3Point_EmptyData
.
- point
- A Point object.
- pointData
- Receives data describing the Point object.
Q3Point_GetPosition |
( TQ3Status ) Q3Point_GetPosition ( TQ3GeometryObject _Nonnull point, TQ3Point3D * _Nonnull position );
Get the position of a point object.
- point
- A point object.
- position
- Receives the position of the point.
Q3Point_New |
( TQ3GeometryObject _Nullable ) Q3Point_New ( const TQ3PointData * _Nullable pointData );
Create a new point geometry object.
If you pass nullptr instead of a data pointer, you will get a point disk, at (0, 0, 0).
This behavior was not present in QuickDraw 3D.
- pointData
- Data describing a point, or NULL.
Q3Point_SetData |
( TQ3Status ) Q3Point_SetData ( TQ3GeometryObject _Nonnull point, const TQ3PointData * _Nonnull pointData );
Modify a point object by supplying a full new set of data.
- point
- A point object
- pointData
- Data describing a point object.
Q3Point_SetPosition |
( TQ3Status ) Q3Point_SetPosition ( TQ3GeometryObject _Nonnull point, const TQ3Point3D * _Nonnull position );
Change the position of a point object.
- point
- A point object.
- position
- New position for the point.
Q3Point_Submit |
( TQ3Status ) Q3Point_Submit ( const TQ3PointData * _Nonnull pointData, TQ3ViewObject _Nonnull view );
Submits a point for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- pointData
- Data describing a point.
- view
- A view object.
Q3PolyLine_EmptyData |
( TQ3Status ) Q3PolyLine_EmptyData ( TQ3PolyLineData * _Nonnull polyLineData );
Release memory allocated by Q3PolyLine_GetData
.
- polyLineData
- Data describing a PolyLine, previously obtained with
Q3PolyLine_GetData
.
Q3PolyLine_GetData |
( TQ3Status ) Q3PolyLine_GetData ( TQ3GeometryObject _Nonnull polyLine, TQ3PolyLineData * _Nonnull polyLineData );
Get the data of a PolyLine object.
This function may allocate memory, which should be freed using
Q3PolyLine_EmptyData
.
- polyLine
- A PolyLine object.
- polyLineData
- Receives data describing the PolyLine object.
Q3PolyLine_GetSegmentAttributeSet |
( TQ3Status ) Q3PolyLine_GetSegmentAttributeSet ( TQ3GeometryObject _Nonnull polyLine, TQ3Uns32 index, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a polyline segment.
- polyLine
- The polyline to query.
- index
- The index of the segment to query.
- attributeSet
- Receives the attribute set of the polyline segment.
Q3PolyLine_GetVertexAttributeSet |
( TQ3Status ) Q3PolyLine_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull polyLine, TQ3Uns32 index, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a polyline vertex.
- polyLine
- The polyline to query.
- index
- The index of the vertex to query.
- attributeSet
- Receives the attribute set of the polyline vertex.
Q3PolyLine_GetVertexPosition |
( TQ3Status ) Q3PolyLine_GetVertexPosition ( TQ3GeometryObject _Nonnull polyLine, TQ3Uns32 index, TQ3Point3D * _Nonnull position );
Get the position of a polyline vertex.
- polyLine
- The polyline to query.
- index
- The index of the vertex to query.
- position
- Receives the position of the polyline vertex.
Q3PolyLine_New |
( TQ3GeometryObject _Nullable ) Q3PolyLine_New ( const TQ3PolyLineData * _Nonnull polylineData );
Create a new polyline geometry object.
- polylineData
- Data describing a polyline.
Q3PolyLine_SetData |
( TQ3Status ) Q3PolyLine_SetData ( TQ3GeometryObject _Nonnull polyLine, const TQ3PolyLineData * _Nonnull polyLineData );
Modify a PolyLine object by supplying a full new set of data.
- polyLine
- A PolyLine object.
- polyLineData
- Data describing a PolyLine.
Q3PolyLine_SetSegmentAttributeSet |
( TQ3Status ) Q3PolyLine_SetSegmentAttributeSet ( TQ3GeometryObject _Nonnull polyLine, TQ3Uns32 index, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a polyline segment.
- polyLine
- The polyline to update.
- index
- The index of the segment to update.
- attributeSet
- The new attribute set for the polyline segment.
Q3PolyLine_SetVertexAttributeSet |
( TQ3Status ) Q3PolyLine_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull polyLine, TQ3Uns32 index, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a polyline vertex.
- polyLine
- The polyline to update.
- index
- The index of the vertex to update.
- attributeSet
- The new attribute set for the polyline vertex.
Q3PolyLine_SetVertexPosition |
( TQ3Status ) Q3PolyLine_SetVertexPosition ( TQ3GeometryObject _Nonnull polyLine, TQ3Uns32 index, const TQ3Point3D * _Nonnull position );
Set the position of a polyline vertex.
- polyLine
- The polyline to update.
- index
- The index of the vertex to update.
- position
- The new position for the polyline vertex.
Q3PolyLine_Submit |
( TQ3Status ) Q3PolyLine_Submit ( const TQ3PolyLineData * _Nonnull polyLineData, TQ3ViewObject _Nonnull view );
Submits a PolyLine for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- polyLineData
- Data describing a PolyLine.
- view
- A view object.
Q3Polygon_EmptyData |
( TQ3Status ) Q3Polygon_EmptyData ( TQ3PolygonData * _Nonnull polygonData );
Release memory allocated by Q3Polygon_GetData
.
- polygonData
- Data describing a Polygon, previously obtained with
Q3Polygon_GetData
.
Q3Polygon_GetData |
( TQ3Status ) Q3Polygon_GetData ( TQ3GeometryObject _Nonnull polygon, TQ3PolygonData * _Nonnull polygonData );
Get the data of a Polygon object.
This function may allocate memory, which should be freed using
Q3Polygon_EmptyData
.
- polygon
- A Polygon object.
- polygonData
- Receives data describing the Polygon object.
Q3Polygon_GetVertexAttributeSet |
( TQ3Status ) Q3Polygon_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull polygon, TQ3Uns32 index, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a vertex in a polygon object.
- polygon
- A polygon object.
- index
- A 0-based index into the array of vertices of the polygon.
- attributeSet
- Receives a new reference to the attribute set, or nullptr.
Q3Polygon_GetVertexPosition |
( TQ3Status ) Q3Polygon_GetVertexPosition ( TQ3GeometryObject _Nonnull polygon, TQ3Uns32 index, TQ3Point3D * _Nonnull point );
Get the 3D position of a vertex of a polygon object.
- polygon
- A polygon object.
- index
- A 0-based index into the array of vertices of the polygon.
- point
- Receives the position of the vertex.
Q3Polygon_New |
( TQ3GeometryObject _Nullable ) Q3Polygon_New ( const TQ3PolygonData * _Nonnull polygonData );
Create a new polygon geometry object.
- polygonData
- Data describing a polygon.
Q3Polygon_SetData |
( TQ3Status ) Q3Polygon_SetData ( TQ3GeometryObject _Nonnull polygon, const TQ3PolygonData * _Nonnull polygonData );
Modify a polygon object by supplying a full new set of data.
- polygon
- A polygon object.
- polygonData
- Data describing a polygon.
Q3Polygon_SetVertexAttributeSet |
( TQ3Status ) Q3Polygon_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull polygon, TQ3Uns32 index, TQ3AttributeSet _Nullable attributeSet );
Change the attribute set of a vertex in a polygon object.
- polygon
- A polygon object.
- index
- A 0-based index into the array of vertices of the polygon.
- attributeSet
- New attribute set for the vertex.
Q3Polygon_SetVertexPosition |
( TQ3Status ) Q3Polygon_SetVertexPosition ( TQ3GeometryObject _Nonnull polygon, TQ3Uns32 index, const TQ3Point3D * _Nonnull point );
Change the 3D position of a vertex of a polygon object.
- polygon
- A polygon object.
- index
- A 0-based index into the array of vertices of the polygon.
- point
- New position of the vertex.
Q3Polygon_Submit |
( TQ3Status ) Q3Polygon_Submit ( const TQ3PolygonData * _Nonnull polygonData, TQ3ViewObject _Nonnull view );
Submits a polygon for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- polygonData
- Data describing a polygon.
- view
- A view object.
Q3Polyhedron_EmptyData |
( TQ3Status ) Q3Polyhedron_EmptyData ( TQ3PolyhedronData * _Nonnull polyhedronData );
Release memory allocated by Q3Polyhedron_GetData
.
- polyhedronData
- Data describing a Polyhedron, previously obtained with
Q3Polyhedron_GetData
.
Q3Polyhedron_GetData |
( TQ3Status ) Q3Polyhedron_GetData ( TQ3GeometryObject _Nonnull polyhedron, TQ3PolyhedronData * _Nonnull polyhedronData );
Get the data of a Polyhedron object.
This function may allocate memory, which should be freed using
Q3Polyhedron_EmptyData
.
- polyhedron
- A Polyhedron object.
- polyhedronData
- Receives data describing the Polyhedron object.
Q3Polyhedron_GetEdgeData |
( TQ3Status ) Q3Polyhedron_GetEdgeData ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 edgeIndex, TQ3PolyhedronEdgeData * _Nonnull edgeData );
Get the data of a polyhedron edge.
- polyhedron
- The polyhedron to query.
- edgeIndex
- The index of the edge to query.
- edgeData
- Receives the data of the edge.
Q3Polyhedron_GetTriangleData |
( TQ3Status ) Q3Polyhedron_GetTriangleData ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 triangleIndex, TQ3PolyhedronTriangleData * _Nonnull triangleData );
Get the data of a polyhedron triangle.
- polyhedron
- The polyhedron to query.
- triangleIndex
- The index of the triangle to query.
- triangleData
- Receives the data of the triangle.
Q3Polyhedron_GetVertexAttributeSet |
( TQ3Status ) Q3Polyhedron_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 index, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the position of a polyhedron vertex.
- polyhedron
- The polyhedron to query.
- index
- The index of the vertex to query.
- attributeSet
- Receives the attribute set of the vertex.
Q3Polyhedron_GetVertexPosition |
( TQ3Status ) Q3Polyhedron_GetVertexPosition ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 index, TQ3Point3D * _Nonnull point );
Get the position of a polyhedron vertex.
- polyhedron
- The polyhedron to query.
- index
- The index of the vertex to query.
- point
- Receives the position of the vertex.
Q3Polyhedron_New |
( TQ3GeometryObject _Nullable ) Q3Polyhedron_New ( const TQ3PolyhedronData * _Nonnull polyhedronData );
Create a new polyhedron geometry object.
- polyhedronData
- Data describing a polyhedron.
Q3Polyhedron_SetData |
( TQ3Status ) Q3Polyhedron_SetData ( TQ3GeometryObject _Nonnull polyhedron, const TQ3PolyhedronData * _Nonnull polyhedronData );
Modify a polyhedron object by supplying a full new set of data.
- polyhedron
- A polyhedron object.
- polyhedronData
- Data describing a polyhedron.
Q3Polyhedron_SetEdgeData |
( TQ3Status ) Q3Polyhedron_SetEdgeData ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 edgeIndex, const TQ3PolyhedronEdgeData * _Nonnull edgeData );
Set the data of a polyhedron edge.
- polyhedron
- The polyhedron to update.
- edgeIndex
- The index of the edge to update.
- edgeData
- The new data for the edge.
Q3Polyhedron_SetTriangleData |
( TQ3Status ) Q3Polyhedron_SetTriangleData ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 triangleIndex, const TQ3PolyhedronTriangleData * _Nonnull triangleData );
Set the data of a polyhedron triangle.
- polyhedron
- The polyhedron to update.
- triangleIndex
- The index of the triangle to update.
- triangleData
- The new data for the triangle.
Q3Polyhedron_SetVertexAttributeSet |
( TQ3Status ) Q3Polyhedron_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 index, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a polyhedron vertex.
- polyhedron
- The polyhedron to update.
- index
- The index of the vertex to update.
- attributeSet
- The new attribute set for the vertex.
Q3Polyhedron_SetVertexPosition |
( TQ3Status ) Q3Polyhedron_SetVertexPosition ( TQ3GeometryObject _Nonnull polyhedron, TQ3Uns32 index, const TQ3Point3D * _Nonnull point );
Set the position of a polyhedron vertex.
- polyhedron
- The polyhedron to update.
- index
- The index of the vertex to update.
- point
- The new position for the vertex.
Q3Polyhedron_Submit |
( TQ3Status ) Q3Polyhedron_Submit ( const TQ3PolyhedronData * _Nonnull polyhedronData, TQ3ViewObject _Nonnull view );
Submits a polyhedron for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- polyhedronData
- Data describing a polyhedron.
- view
- A view object.
Q3Torus_EmptyData |
( TQ3Status ) Q3Torus_EmptyData ( TQ3TorusData * _Nonnull torusData );
Release memory allocated by Q3Torus_GetData
.
- torusData
- Data describing a Torus, previously obtained with
Q3Torus_GetData
.
Q3Torus_GetData |
( TQ3Status ) Q3Torus_GetData ( TQ3GeometryObject _Nonnull torus, TQ3TorusData * _Nonnull torusData );
Get the data of a Torus object.
This function may allocate memory, which should be freed using
Q3Torus_EmptyData
.
- torus
- A Torus object.
- torusData
- Receives data describing the Torus object.
Q3Torus_GetMajorRadius |
( TQ3Status ) Q3Torus_GetMajorRadius ( TQ3GeometryObject _Nonnull torus, TQ3Vector3D * _Nonnull majorRadius );
Get the major radius vector of a Torus object.
- torus
- The Torus object.
- majorRadius
- Receives the major radius vector.
Q3Torus_GetMinorRadius |
( TQ3Status ) Q3Torus_GetMinorRadius ( TQ3GeometryObject _Nonnull torus, TQ3Vector3D * _Nonnull minorRadius );
Get the minor radius vector of a Torus object.
- torus
- The Torus object.
- minorRadius
- Receives the minor radius vector.
Q3Torus_GetOrientation |
( TQ3Status ) Q3Torus_GetOrientation ( TQ3GeometryObject _Nonnull torus, TQ3Vector3D * _Nonnull orientation );
Get the orientation vector of a torus.
- torus
- A torus object.
- orientation
- Receives the orientation vector of the torus.
Q3Torus_GetOrigin |
( TQ3Status ) Q3Torus_GetOrigin ( TQ3GeometryObject _Nonnull torus, TQ3Point3D * _Nonnull origin );
Get the origin of a Torus object.
- torus
- The Torus object.
- origin
- Receives the origin.
Q3Torus_GetRatio |
( TQ3Status ) Q3Torus_GetRatio ( TQ3GeometryObject _Nonnull torus, float * _Nonnull ratio );
Get the ratio of a torus.
- torus
- The torus to query.
- ratio
- Receives the ratio of the torus.
Q3Torus_New |
( TQ3GeometryObject _Nullable ) Q3Torus_New ( const TQ3TorusData * _Nullable torusData );
Create a new torus geometry object.
If you pass nullptr, you will get a default torus with orientation (1, 0, 0), major axis
(0, 1, 0), minor axis (0, 0, 1), origin (0, 0, 0), and ratio 1. This behavior was
not present in QuickDraw 3D.
- torusData
- Data describing a torus, or nullptr.
Q3Torus_SetData |
( TQ3Status ) Q3Torus_SetData ( TQ3GeometryObject _Nonnull torus, const TQ3TorusData * _Nonnull torusData );
Modify a torus object by supplying a full new set of data.
- torus
- A torus object.
- torusData
- Data describing a torus.
Q3Torus_SetMajorRadius |
( TQ3Status ) Q3Torus_SetMajorRadius ( TQ3GeometryObject _Nonnull torus, const TQ3Vector3D * _Nonnull majorRadius );
Change the major radius vector of a Torus object.
- torus
- The Torus object.
- majorRadius
- New major radius vector.
Q3Torus_SetMinorRadius |
( TQ3Status ) Q3Torus_SetMinorRadius ( TQ3GeometryObject _Nonnull torus, const TQ3Vector3D * _Nonnull minorRadius );
Change the minor radius vector of a Torus object.
- torus
- The Torus object.
- minorRadius
- New minor radius vector.
Q3Torus_SetOrientation |
( TQ3Status ) Q3Torus_SetOrientation ( TQ3GeometryObject _Nonnull torus, const TQ3Vector3D * _Nonnull orientation );
Change the orientation vector of a torus object.
- torus
- A torus object.
- orientation
- New orientation vector for the torus.
Q3Torus_SetOrigin |
( TQ3Status ) Q3Torus_SetOrigin ( TQ3GeometryObject _Nonnull torus, const TQ3Point3D * _Nonnull origin );
Change the origin of a torus object.
- torus
- The torus object.
- origin
- The new origin.
Q3Torus_SetRatio |
( TQ3Status ) Q3Torus_SetRatio ( TQ3GeometryObject _Nonnull torus, float ratio );
Set the ratio of a torus.
- torus
- The torus to update.
- ratio
- The new ratio for the torus.
Q3Torus_Submit |
( TQ3Status ) Q3Torus_Submit ( const TQ3TorusData * _Nonnull torusData, TQ3ViewObject _Nonnull view );
Submits a torus for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- torusData
- Data describing a torus.
- view
- A view object.
Q3TriGrid_EmptyData |
( TQ3Status ) Q3TriGrid_EmptyData ( TQ3TriGridData * _Nonnull triGridData );
Release memory allocated by Q3TriGrid_GetData
.
- triGridData
- Data describing a TriGrid, previously obtained with
Q3TriGrid_GetData
.
Q3TriGrid_GetData |
( TQ3Status ) Q3TriGrid_GetData ( TQ3GeometryObject _Nonnull triGrid, TQ3TriGridData * _Nonnull triGridData );
Get the data of a TriGrid object.
This function may allocate memory, which should be freed using
Q3TriGrid_EmptyData
.
- triGrid
- A TriGrid object.
- triGridData
- Receives data describing the TriGrid object.
Q3TriGrid_GetFacetAttributeSet |
( TQ3Status ) Q3TriGrid_GetFacetAttributeSet ( TQ3GeometryObject _Nonnull triGrid, TQ3Uns32 faceIndex, TQ3AttributeSet _Nullable * _Nonnull facetAttributeSet );
Get the attribute set of a trigrid face.
- triGrid
- The trigrid to query.
- faceIndex
- The index of the face to query.
- facetAttributeSet
- Receives the attribute set of the trigrid face.
Q3TriGrid_GetVertexAttributeSet |
( TQ3Status ) Q3TriGrid_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a trigrid vertex.
- triGrid
- The trigrid to query.
- rowIndex
- The row index of the vertex to query.
- columnIndex
- The column index of the vertex to query.
- attributeSet
- Receives the attribute set of the trigrid vertex.
Q3TriGrid_GetVertexPosition |
( TQ3Status ) Q3TriGrid_GetVertexPosition ( TQ3GeometryObject _Nonnull triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3Point3D * _Nonnull position );
Get the position of a trigrid vertex.
- triGrid
- The trigrid to query.
- rowIndex
- The row index of the vertex to query.
- columnIndex
- The column index of the vertex to query.
- position
- Receives the position of the trigrid vertex.
Q3TriGrid_New |
( TQ3GeometryObject _Nullable ) Q3TriGrid_New ( const TQ3TriGridData * _Nonnull triGridData );
Create a new TriGrid geometry object.
- triGridData
- Data describing a TriGrid.
Q3TriGrid_SetData |
( TQ3Status ) Q3TriGrid_SetData ( TQ3GeometryObject _Nonnull triGrid, const TQ3TriGridData * _Nonnull triGridData );
Modify a TriGrid object by supplying a full new set of data.
- triGrid
- A TriGrid object.
- triGridData
- Data describing a TriGrid.
Q3TriGrid_SetFacetAttributeSet |
( TQ3Status ) Q3TriGrid_SetFacetAttributeSet ( TQ3GeometryObject _Nonnull triGrid, TQ3Uns32 faceIndex, TQ3AttributeSet _Nullable facetAttributeSet );
Set the attribute set of a trigrid face.
- triGrid
- The trigrid to update.
- faceIndex
- The index of the face to update.
- facetAttributeSet
- The new attribute set for the trigrid face.
Q3TriGrid_SetVertexAttributeSet |
( TQ3Status ) Q3TriGrid_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a trigrid vertex.
- triGrid
- The trigrid to update.
- rowIndex
- The row index of the vertex to update.
- columnIndex
- The column index of the vertex to update.
- attributeSet
- The new attribute set for the trigrid vertex.
Q3TriGrid_SetVertexPosition |
( TQ3Status ) Q3TriGrid_SetVertexPosition ( TQ3GeometryObject _Nonnull triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, const TQ3Point3D * _Nonnull position );
Set the position of a trigrid vertex.
- triGrid
- The trigrid to update.
- rowIndex
- The row index of the vertex to update.
- columnIndex
- The column index of the vertex to update.
- position
- The new position for the trigrid vertex.
Q3TriGrid_Submit |
( TQ3Status ) Q3TriGrid_Submit ( const TQ3TriGridData * _Nonnull triGridData, TQ3ViewObject _Nonnull view );
Submits a TriGrid for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- triGridData
- Data describing a TriGrid.
- view
- A view object.
Q3TriMesh_EmptyData |
( TQ3Status ) Q3TriMesh_EmptyData ( TQ3TriMeshData * _Nonnull triMeshData );
Release memory allocated by Q3TriMesh_GetData
.
- triMeshData
- Data describing a TriMesh, previously obtained with
Q3TriMesh_GetData
.
Q3TriMesh_GetData |
( TQ3Status ) Q3TriMesh_GetData ( TQ3GeometryObject _Nonnull triMesh, TQ3TriMeshData * _Nonnull triMeshData );
Get the data of a TriMesh object.
This function may allocate memory, which should be freed using
Q3TriMesh_EmptyData
.
- triMesh
- A TriMesh object.
- triMeshData
- Receives data describing the TriMesh object.
Q3TriMesh_GetNakedGeometry |
( TQ3GeometryObject _Nonnull ) Q3TriMesh_GetNakedGeometry ( TQ3GeometryObject _Nonnull inGeom );
Using this function and its partner Q3TriMesh_SetNakedGeometry
,
you can have two TriMesh objects with the same geometry but
different attribute sets. This can be helpful in saving
memory. That is, you can make two TriMeshes share geometry by saying:
TQ3Object secondTriMesh = Q3Object_Duplicate( firstTriMesh ); TQ3Object firstNaked = Q3TriMesh_GetNakedGeometry( firstTriMesh ); Q3TriMesh_SetNakedGeometry( secondTriMesh, firstNaked ); Q3Object_Dispose( firstNaked );
Q3TriMesh_SetData
, Q3TriMesh_Optimize
, or
Q3TriMesh_LockData
with a read-write lock, then the TriMeshes will
no longer share naked geometry.
Q3TriMesh_SetNakedGeometry
.
- inGeom
- A TriMesh object.
Q3TriMesh_LockData |
( TQ3Status ) Q3TriMesh_LockData ( TQ3GeometryObject _Nonnull triMesh, TQ3Boolean readOnly, TQ3TriMeshData * _Nonnull * _Nonnull triMeshData );
Lock a Trimesh for direct access.
Returns a pointer to the internal TQ3TriMeshData for a TriMesh,
allowing direct access without the need to copy TriMesh data out
of and back in to Quesa.
The readOnly flag should be used to indicate if the application
needs to make changes to the TriMesh data, or if the pointer
should be considered const.
When the application no longer needs access to the TriMesh data,
it must unlock the TriMesh with Q3TriMesh_UnlockData. Changes to
the TriMesh data may not be relayed to renderers until the TriMesh
has been unlocked.
This function is not available in QD3D.
- triMesh
- The TriMesh to lock.
- readOnly
- Indicates if the returned data is read-only.
- triMeshData
- Receives a pointer to the TQ3TriMeshData for the TriMesh.
Q3TriMesh_MakeTriangleStrip |
( TQ3Status ) Q3TriMesh_MakeTriangleStrip ( TQ3Uns32 inNumTriangles, const TQ3Uns32* _Nonnull inTriangles, TQ3Uns32* _Nonnull outStripLength, TQ3Uns32* _Nonnull * _Nonnull outStrip );
Although this function does not take a TriMesh as a
parameter, it is grouped with TriMesh functions because
Quesa's OpenGL renderer currently only uses triangle strips
with TriMeshes.
Also see the triangle strip element functions in
QuesaCustomElements.h.
When you are finished with the data returned in the
outStrip parameter, free it using Q3Memory_Free.
This function is not available in QD3D.
- inNumTriangles
- Number of triangles.
- inTriangles
- Point indices for the triangles. The length of this array should be 3 * inNumTriangles.
- outStripLength
- Receives number of indices in outStrip.
- outStrip
- Receives pointer to array of point indices in the strip. You are responsible for freeing this memory with Q3Memory_Free.
Q3TriMesh_New |
( TQ3GeometryObject _Nullable ) Q3TriMesh_New ( const TQ3TriMeshData * _Nonnull triMeshData );
Create a new TriMesh geometry object.
If you wish, you can set the isEmpty
flag in the bBox
field,
and Quesa will compute the bounding box.
Edge and face indices will be checked, possibly resulting in an index out
of bounds error or warning. Also, if Quesa was compiled with the flag
QUESA_NORMALIZE_NORMALS turned on (as it is by default), face and vertex
normal vectors will be normalized.
- triMeshData
- Data describing a TriMesh.
Q3TriMesh_New_NoCopy |
( TQ3GeometryObject _Nullable ) Q3TriMesh_New_NoCopy ( const TQ3TriMeshData * _Nonnull triMeshData );
This is a version of Q3TriMesh_New
for use in cases
where TriMeshes are being created at runtime and performance is
critical. It assumes that each of the 6 array pointers within
the TQ3TriMeshData
structure, and each array
pointer within the TQ3TriMeshAttributeData
structures, is either nullptr or has been allocated with one of the
Quesa memory allocation functions. Ownership of these pointers
is transferred to the TriMesh object.
Unlike Q3TriMesh_New
, this function does not
validate edge and face indices. If Quesa was compiled with the
flag QUESA_NORMALIZE_NORMALS
turned on (as it is by
default), face and vertex normal vectors will be normalized.
If you wish, you can set the isEmpty
flag in the
bBox
field, and Quesa will compute the bounding box.
- triMeshData
- Data describing a TriMesh.
Q3TriMesh_Optimize |
( TQ3GeometryObject _Nullable ) Q3TriMesh_Optimize ( TQ3GeometryObject _Nonnull inTriMesh );
See discussion of Q3TriMesh_OptimizeData for the optimizations
that are performed. If no optimizations are needed, nullptr is returned.
This function is not available in QD3D.
- inTriMesh
- A TriMesh geometry.
Q3TriMesh_OptimizeData |
( TQ3Status ) Q3TriMesh_OptimizeData ( const TQ3TriMeshData* _Nonnull inData, TQ3TriMeshData* _Nonnull outData, TQ3Boolean* _Nonnull outDidChange );
This operation modifies TriMesh data so that:
- inData
- TriMesh data.
- outData
- Receives new TriMesh data, if outDidChange is true.
- outDidChange
- Receives a flag indicating whether new data was created.
Q3TriMesh_SetData |
( TQ3Status ) Q3TriMesh_SetData ( TQ3GeometryObject _Nonnull triMesh, const TQ3TriMeshData * _Nonnull triMeshData );
Modify a TriMesh object by supplying a full new set of data.
If you wish, you can set the isEmpty
flag in the bBox
field,
and Quesa will compute the bounding box.
- triMesh
- A TriMesh object.
- triMeshData
- Data describing a TriMesh.
Q3TriMesh_SetNakedGeometry |
( void ) Q3TriMesh_SetNakedGeometry ( TQ3GeometryObject _Nonnull inTriMesh, TQ3GeometryObject _Nonnull inNaked );
Using this function and its partner Q3TriMesh_GetNakedGeometry
,
you can have two TriMesh objects with the same geometry but
different attribute sets. This can be helpful in saving
memory. See the discussion of Q3TriMesh_GetNakedGeometry
.
- inTriMesh
- A TriMesh object to modify.
- inNaked
- An internal geometry previously obtained using Q3TriMesh_GetNakedGeometry.
Q3TriMesh_Submit |
( TQ3Status ) Q3TriMesh_Submit ( const TQ3TriMeshData * _Nonnull triMeshData, TQ3ViewObject _Nonnull view );
Submits a TriMesh for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- triMeshData
- Data describing a TriMesh.
- view
- A view object.
Q3TriMesh_UnlockData |
( TQ3Status ) Q3TriMesh_UnlockData ( TQ3GeometryObject _Nonnull triMesh );
Unlocks a TriMesh previously locked with Q3TriMesh_LockData.
This function is not available in QD3D.
- triMesh
- The TriMesh to unlock.
Q3Triangle_EmptyData |
( TQ3Status ) Q3Triangle_EmptyData ( TQ3TriangleData * _Nonnull triangleData );
Release memory allocated by Q3Triangle_GetData
.
- triangleData
- Data describing a Triangle, previously obtained with
Q3Triangle_GetData
.
Q3Triangle_GetData |
( TQ3Status ) Q3Triangle_GetData ( TQ3GeometryObject _Nonnull triangle, TQ3TriangleData * _Nonnull triangleData );
Get the data of a Triangle object.
This function may allocate memory, which should be freed using
Q3Triangle_EmptyData
.
- triangle
- A Triangle object.
- triangleData
- Receives data describing the Triangle object.
Q3Triangle_GetVertexAttributeSet |
( TQ3Status ) Q3Triangle_GetVertexAttributeSet ( TQ3GeometryObject _Nonnull triangle, TQ3Uns32 index, TQ3AttributeSet _Nullable * _Nonnull attributeSet );
Get the attribute set of a triangle vertex.
- triangle
- The triangle to query.
- index
- The index of the vertex to query.
- attributeSet
- Receives the attribute set of the triangle vertex.
Q3Triangle_GetVertexPosition |
( TQ3Status ) Q3Triangle_GetVertexPosition ( TQ3GeometryObject _Nonnull triangle, TQ3Uns32 index, TQ3Point3D * _Nonnull point );
Get the position of a triangle vertex.
- triangle
- The triangle to query.
- index
- The index of the vertex to query.
- point
- Receives the position of the triangle vertex.
Q3Triangle_New |
( TQ3GeometryObject _Nullable ) Q3Triangle_New ( const TQ3TriangleData * _Nonnull triangleData );
Create a new triangle geometry object.
- triangleData
- Data describing a triangle.
Q3Triangle_SetData |
( TQ3Status ) Q3Triangle_SetData ( TQ3GeometryObject _Nonnull triangle, const TQ3TriangleData * _Nonnull triangleData );
Modify a triangle object by supplying a full new set of data.
- triangle
- A triangle object.
- triangleData
- Data describing a triangle.
Q3Triangle_SetVertexAttributeSet |
( TQ3Status ) Q3Triangle_SetVertexAttributeSet ( TQ3GeometryObject _Nonnull triangle, TQ3Uns32 index, TQ3AttributeSet _Nullable attributeSet );
Set the attribute set of a triangle vertex.
- triangle
- The triangle to update.
- index
- The index of the vertex to update.
- attributeSet
- The new attribute set for the triangle vertex.
Q3Triangle_SetVertexPosition |
( TQ3Status ) Q3Triangle_SetVertexPosition ( TQ3GeometryObject _Nonnull triangle, TQ3Uns32 index, const TQ3Point3D * _Nonnull point );
Set the position of a triangle vertex.
- triangle
- The triangle to update.
- index
- The index of the vertex to update.
- point
- The new position for the triangle vertex.
Q3Triangle_Submit |
( TQ3Status ) Q3Triangle_Submit ( const TQ3TriangleData * _Nonnull triangleData, TQ3ViewObject _Nonnull view );
Submits a triangle for drawing, picking, bounding, or writing in immediate mode.
This function should only be called in a submitting loop.
- triangleData
- Data describing a triangle.
- view
- A view object.
TQ3MeshComponent |
typedef struct OpaqueTQ3MeshComponent *TQ3MeshComponent;
Opaque pointer representing a connected component of a Mesh.
TQ3MeshContour |
typedef struct OpaqueTQ3MeshContour *TQ3MeshContour;
Opaque pointer representing a contour of a Mesh, one of the closed paths that bounds a face.
TQ3MeshEdge |
typedef struct OpaqueTQ3MeshEdge *TQ3MeshEdge;
Opaque pointer representing an edge of a Mesh, a straight line segment that connects two vertices.
TQ3MeshFace |
typedef struct OpaqueTQ3MeshFace *TQ3MeshFace;
Opaque pointer representing a face of a Mesh. This is a polygonal figure, normally planar, which may contain holes.
TQ3MeshVertex |
typedef struct OpaqueTQ3MeshVertex *TQ3MeshVertex;
Opaque pointer representing a vertex of a Mesh.
TQ3PolyhedronEdge |
typedef TQ3Uns32 TQ3PolyhedronEdge;
A combination of masks of type TQ3PolyhedronEdgeMasks indicating which edges of a triangle are to be rendered.
TQ3BoxData |
typedef struct TQ3BoxData { TQ3Point3D origin; TQ3Vector3D orientation; TQ3Vector3D majorAxis; TQ3Vector3D minorAxis; TQ3AttributeSet _Nullable * _Nullable faceAttributeSet; TQ3AttributeSet _Nullable boxAttributeSet; } TQ3BoxData;
Data describing the state of a box object.
- origin
- Origin of the box (one of the corners).
- orientation
- Orientation vector of the box.
- majorAxis
- Major axis of the box.
- minorAxis
- Minor axis of the box.
- faceAttributeSet
- Array of attribute set objects for the 6 faces. This field may be NULL, or individual sets in the array may be NULL.
- boxAttributeSet
- Attribute set object holding attributes that apply to all of the faces. May be NULL.
TQ3ConeData |
typedef struct TQ3ConeData { TQ3Point3D origin; TQ3Vector3D orientation; TQ3Vector3D majorRadius; TQ3Vector3D minorRadius; float uMin; float uMax; float vMin; float vMax; TQ3EndCap caps; TQ3AttributeSet _Nullable interiorAttributeSet; TQ3AttributeSet _Nullable faceAttributeSet; TQ3AttributeSet _Nullable bottomAttributeSet; TQ3AttributeSet _Nullable coneAttributeSet; } TQ3ConeData;
Data describing the state of a cone object. The orientation, major radius,
and minor radius vectors need not be orthogonal, though they should be
independent. Normally these vectors (in that order) should form a right-handed system.
If they form a left-handed system, then the cone is "inside out", i.e., the front face
is inside.
The values uMin
, uMax
, vMin
, and vMax
allow partial cones, e.g., a cone with a wedge cut out of it or with its tip cut off.
This feature was not implemented in QuickDraw 3D. See the discussion of
TQ3EllipseData
for notes on the interpretation of uMin
and
uMax
.
If vMax
< 1, so that the tip is cut off, the top disk is considered part of
an interior face, rather than a top cap.
- origin
- The center of the base of the cone.
- orientation
- Vector from the origin to the tip of the cone.
- majorRadius
- A vector from the origin to a point on the perimeter of the base.
- minorRadius
- A vector from the origin to a point on the perimeter of the base.
- uMin
- Minimum value of the u parameter, which goes around the base. Typically 0.
- uMax
- Maximum value of the u parameter, which goes around the base. Typically 1.
- vMin
- Minimum value of the v parameter, which goes from base to tip. Typically 0.
- vMax
- Minimum value of the v parameter, which goes from base to tip. Typically 1.
- caps
- End cap masks, determining whether there is a bottom cap, and in the case of partial cones, determining whether there is an interior face.
- interiorAttributeSet
- Interior attributes. Unused by QD3D.
- faceAttributeSet
- Attributes that affect the face but not the bottom. May be nullptr.
- bottomAttributeSet
- Attributes that affect the bottom end cap. May be nullptr.
- coneAttributeSet
- Attributes for all parts of the cone. May be nullptr.
TQ3CylinderData |
typedef struct TQ3CylinderData { TQ3Point3D origin; TQ3Vector3D orientation; TQ3Vector3D majorRadius; TQ3Vector3D minorRadius; float uMin; float uMax; float vMin; float vMax; TQ3EndCap caps; TQ3AttributeSet _Nullable interiorAttributeSet; TQ3AttributeSet _Nullable topAttributeSet; TQ3AttributeSet _Nullable faceAttributeSet; TQ3AttributeSet _Nullable bottomAttributeSet; TQ3AttributeSet _Nullable cylinderAttributeSet; } TQ3CylinderData;
Data describing the state of a cylinder object. The orientation, major radius,
and minor radius vectors need not be orthogonal, though they should be
independent. Ordinarily, the vectors (orientation, major axis, minor axis)
should form a right-handed coordinate system. If they form a left-handed system,
then the cylinder is "inside out", i.e., the front face is inside.
The values uMin
, uMax
, vMin
, and vMax
allow partial cylinders, e.g., a cylinder with a wedge cut out of it.
This feature was not implemented in QuickDraw 3D. See the discussion of
TQ3EllipseData
for notes on the interpretation of uMin
and
uMax
.
- origin
- The center of the base of the cylinder.
- orientation
- Vector from the origin to the center of the opposite end.
- majorRadius
- A vector from the origin to a point on the perimeter of the base.
- minorRadius
- A vector from the origin to a point on the perimeter of the base.
- uMin
- Starting value of the u parameter, which goes around the base counterclockwise. Typically 0.
- uMax
- Ending value of the u parameter, which goes around the base counterclockwise. Typically 1.
- vMin
- Minimum value of the v parameter, which goes from the base to the other end. Typically 0.
- vMax
- Maximum value of the v parameter, which goes from the base to the other end. Typically 1.
- caps
- End cap masks, determining whether the cylinder is closed on one end, the other, or both.
- interiorAttributeSet
- Interior attributes. May be nullptr. Unused by QD3D.
- topAttributeSet
- Attributes that affect the top end cap. May be nullptr.
- faceAttributeSet
- Attributes that affect the face but not the bottom or top. May be nullptr.
- bottomAttributeSet
- Attributes that affect the bottom end cap. May be nullptr.
- cylinderAttributeSet
- Attributes for all parts of the cylinder. May be nullptr.
TQ3DiskData |
typedef struct TQ3DiskData { TQ3Point3D origin; TQ3Vector3D majorRadius; TQ3Vector3D minorRadius; float uMin; float uMax; float vMin; float vMax; TQ3AttributeSet _Nullable diskAttributeSet; } TQ3DiskData;
Data describing the state of a disk object (a filled ellipse). The major radius
and minor radius vectors need not be orthogonal, though they should be independent.
The direction of the front face is the cross product of the major and minor axes.
The values uMin
, uMax
, vMin
, and vMax
allow partial disks, e.g., a slice of pie (partial range of u values) or a washer
(partial range of v values). This feature was never implemented in QuickDraw 3D,
although it was planned. See the discussion of TQ3EllipseData
for notes
on the interpretation of uMin
and uMax
.
The u and v limits here do not have anything to do with the uv parametrization used by
shaders.
- origin
- The center of the disk.
- majorRadius
- A vector from the origin to a point on the perimeter of the disk.
- minorRadius
- A vector from the origin to a point on the perimeter of the disk.
- uMin
- Starting value of the u parameter, which goes around the perimeter counterclockwise. Typically 0, must be in the range [0, 1].
- uMax
- Ending value of the u parameter, which goes around the perimeter counterclockwise. Typically 1, must be in the range [0, 1].
- vMin
- Minimum value of the v parameter, which goes from the perimeter to the origin. Typically 0, must be in the range [0, 1].
- vMax
- Maximum value of the v parameter, which goes from the perimeter to the origin. Typically 1, must be in the range [0, 1].
- diskAttributeSet
- Attributes for the disk. May be nullptr.
TQ3EllipseData |
typedef struct TQ3EllipseData { TQ3Point3D origin; TQ3Vector3D majorRadius; TQ3Vector3D minorRadius; float uMin; float uMax; TQ3AttributeSet _Nullable ellipseAttributeSet; } TQ3EllipseData;
Data describing the state of an ellipse. The major radius and minor radius
vectors need not be orthogonal, though they should be independent.
You can make a partial ellipse by using values other than 0 and 1 for the
uMin
and uMax
fields. The ellipse travels
counterclockwise from the uMin
to the uMax
value.
It is permissible for uMin
to be greater than uMax
.
For example, if uMin
= 7/8 and uMax
= 1/8, then the
ellipse covers a range of 45 degrees, including the zero angle.
- origin
- Center of the ellipse.
- majorRadius
- A vector from the origin to a point on the curve.
- minorRadius
- Another vector from the origin to a point on the curve.
- uMin
- Starting value of the u parameter. Typically 0.
- uMax
- Ending value of the u parameter. Typically 1.
- ellipseAttributeSet
- Attributes for the ellipse. May be nullptr.
TQ3EllipsoidData |
typedef struct TQ3EllipsoidData { TQ3Point3D origin; TQ3Vector3D orientation; TQ3Vector3D majorRadius; TQ3Vector3D minorRadius; float uMin; float uMax; float vMin; float vMax; TQ3EndCap caps; TQ3AttributeSet _Nullable interiorAttributeSet; TQ3AttributeSet _Nullable ellipsoidAttributeSet; } TQ3EllipsoidData;
Data describing the state of an ellipsoid. The major axis, minor axis, and
orientation vectors need not be orthogonal, but should be independent, i.e.,
not coplanar.
The ellipsoid can be expressed by a parametric equation
f(u,v) = origin - cos(πv)orientation + sin(πv)(cos(2πu)majorRadius + sin(2πu)minorRadius)
where u and v range from 0 to 1.
The values uMin
, uMax
, vMin
, and vMax
allow partial ellipsoids, e.g., an ellipsoid with a wedge cut out of it.
Partial ellipsoids were not implemented in QuickDraw 3D.
- origin
- Center of the ellipsoid.
- orientation
- A vector from the origin to a point on the ellipsoid.
- majorRadius
- A vector from the origin to a point on the ellipsoid.
- minorRadius
- A vector from the origin to a point on the ellipsoid.
- uMin
- Minimum value of the u parameter, which goes around the perimeter (the ellipse determined by the major and minor axes). Typically 0.
- uMax
- Maximum value of the u parameter. Typically 1.
- vMin
- Minimum value of the v parameter, which goes from the south pole (origin - orientation) to the north pole (origin + orientation). Typically 0.
- vMax
- Minimum value of the v parameter. Typically 1.
- caps
- Style of caps to be used on partial ellipsoids.
- interiorAttributeSet
- Interior attributes, used for end or interior caps. May be nullptr.
- ellipsoidAttributeSet
- Attributes for the ellipsoid surface. May be nullptr.
TQ3GeneralPolygonContourData |
typedef struct TQ3GeneralPolygonContourData { TQ3Uns32 numVertices; TQ3Vertex3D * _Nonnull vertices; } TQ3GeneralPolygonContourData;
An ordered list of vertices forming a contour of a general polygon.
Used within the TQ3GeneralPolygonData
structure.
- numVertices
- Number of vertices. Must be at least 3.
- vertices
- Array of vertices.
TQ3GeneralPolygonData |
typedef struct TQ3GeneralPolygonData { TQ3Uns32 numContours; TQ3GeneralPolygonContourData * _Nullable contours; TQ3GeneralPolygonShapeHint shapeHint; TQ3AttributeSet _Nullable generalPolygonAttributeSet; } TQ3GeneralPolygonData;
Data describing a general polygon. A general polygon is a closed figure defined by one or more coplanar closed curves called contours. If there are holes, the even-odd rule determines which parts are inside.
- numContours
- Number of contours in the following array. Must be at least 1.
- contours
- Array of contours.
- shapeHint
- Information about the shape of the general polygon, which may be used by the renderer to optimize drawing.
- generalPolygonAttributeSet
- Set of attributes for the polygon. May be nullptr.
TQ3LayerShifts |
typedef struct TQ3LayerShifts { TQ3Uns32 numPoints; TQ3Float32 coords[]; } TQ3LayerShifts;
- numPoints
- Number of points (vertices) in the TriMesh.
- coords
- Array of coordinate data. The number of values here must be numPoints, or in other words the data size is 4 * numPoints bytes.
TQ3LineData |
typedef struct TQ3LineData { TQ3Vertex3D vertices[2]; TQ3AttributeSet _Nullable lineAttributeSet; } TQ3LineData;
Data describing a line.
- vertices
- Array of two vertices, the ends of the line.
- lineAttributeSet
- Set of attributes for the line. May be nullptr.
TQ3MarkerData |
typedef struct TQ3MarkerData { TQ3Point3D location; TQ3Int32 xOffset; TQ3Int32 yOffset; TQ3Bitmap bitmap; TQ3AttributeSet _Nullable markerAttributeSet; } TQ3MarkerData;
Data describing a bitmap marker, a 2-dimensional image drawn on top of a scene at a specified location.
- location
- Location of the marker, in local coordinates.
- xOffset
- Horizontal offset from the
location
to the upper left corner of the marker, in pixels.- yOffset
- Vertical offset from the
location
to the upper left corner of the marker, in pixels.- bitmap
- A bitmap. Each bit corresponds to a pixel in the image.
- markerAttributeSet
- Marker attributes, which can for instance modify the color or transparency of the 1 bits. May be nullptr.
TQ3MeshContourData |
typedef struct TQ3MeshContourData { TQ3Uns32 numVertices; TQ3Uns32 * _Nullable vertexIndices; } TQ3MeshContourData;
Data describing a contour within a mesh face.
Note that a TQ3MeshContourData
is an external data structure
for use with the Q3Mesh_Set/Get/EmptyData
functions.
In contrast, a TQ3MeshContour
is a pointer to an opaque internal
data structure, which is most likely not a TQ3MeshContourData
.
This structure is not available in QD3D.
- numVertices
- Number of vertices. Must be at least 3.
- vertexIndices
- Indices of the vertices of the contour.
TQ3MeshCornerData |
typedef struct TQ3MeshCornerData { TQ3Uns32 numFaces; TQ3Uns32 * _Nonnull faceIndices; TQ3AttributeSet _Nonnull cornerAttributeSet; } TQ3MeshCornerData;
Data describing a corner for a mesh vertex.
Note that a TQ3MeshCornerData
is an external data structure
for use with the Q3Mesh_Set/Get/EmptyData
functions.
This structure is not available in QD3D.
- numFaces
- Number of faces. Must be at least 1.
- faceIndices
- Indices of the faces.
- cornerAttributeSet
- Set of attributes for the corner. Should not be nullptr.
TQ3MeshData |
typedef struct TQ3MeshData { TQ3Uns32 numVertices; TQ3MeshVertexData * _Nullable vertices; TQ3Uns32 numEdges; TQ3MeshEdgeData * _Nullable edges; TQ3Uns32 numFaces; TQ3MeshFaceData * _Nullable faces; TQ3AttributeSet _Nullable meshAttributeSet; } TQ3MeshData;
Data describing a mesh.
Note that a TQ3MeshData
is an external data structure
for use with the Q3Mesh_Set/Get/EmptyData
functions.
This structure is not available in QD3D.
- numVertices
- Number of vertices in the following array.
- vertices
- Pointer to array of vertices of the mesh.
- numEdges
- Number of edges in the following array. May be 0 if you do not want to specify any edges.
- edges
- Pointer to an array of edges. May be nullptr if you also specify 0 for
numEdges
.- numFaces
- Number of faces in the mesh.
- faces
- Pointer to an array of faces.
- meshAttributeSet
- Set of attributes for the mesh. May be nullptr.
TQ3MeshEdgeData |
typedef struct TQ3MeshEdgeData { TQ3Uns32 vertexIndices[2]; TQ3AttributeSet _Nullable edgeAttributeSet; } TQ3MeshEdgeData;
Data describing an edge within a mesh.
Used within the TQ3MeshData
structure.
Note that a TQ3MeshEdgeData
is an external data structure
for use with the Q3Mesh_Set/Get/EmptyData
functions.
In contrast, a TQ3MeshEdge
is a pointer to an opaque internal
data structure, which is most likely not a TQ3MeshEdgeData
.
This structure is not available in QD3D.
- vertexIndices
- Indices of the two vertices that are ends of the edge.
- edgeAttributeSet
- Set of attributes for the edge. May be nullptr.
TQ3MeshFaceData |
typedef struct TQ3MeshFaceData { TQ3Uns32 numContours; TQ3MeshContourData * _Nullable contours; TQ3AttributeSet _Nullable faceAttributeSet; } TQ3MeshFaceData;
Data describing a face within a mesh.
Note that a TQ3MeshFaceData
is an external data structure
for use with the Q3Mesh_Set/Get/EmptyData
functions.
In contrast, a TQ3MeshFace
is a pointer to an opaque internal
data structure, which is most likely not a TQ3MeshFaceData
.
This structure is not available in QD3D.
- numContours
- Number of contours. Must be at least 1.
- contours
- Contours of the face.
- faceAttributeSet
- Set of attributes for the face. May be nullptr.
TQ3MeshIterator |
typedef struct TQ3MeshIterator { void * _Null_unspecified var1; void * _Null_unspecified var2; void * _Null_unspecified var3; struct { void * _Null_unspecified field1; char field2[4]; } var4;
This structure is used for iterating through various parts of a Mesh. You should consider it opaque, because the meanings of the fields are not documented.
TQ3MeshVertexData |
typedef struct TQ3MeshVertexData { TQ3Point3D point; TQ3Uns32 numCorners; TQ3MeshCornerData * _Nullable corners; TQ3AttributeSet _Nullable attributeSet; } TQ3MeshVertexData;
Data describing a vertex within a mesh.
Note that a TQ3MeshVertexData
is an external data structure
for use with the Q3Mesh_Set/Get/EmptyData
functions.