Q3Box_EmptyData |
( TQ3Status ) Q3Box_EmptyData ( TQ3BoxData *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 box, TQ3BoxData *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 box, TQ3Uns32 faceIndex, TQ3AttributeSet *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 NULL if the face does not have an attribute set.
Q3Box_GetMajorAxis |
( TQ3Status ) Q3Box_GetMajorAxis ( TQ3GeometryObject box, TQ3Vector3D *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 box, TQ3Vector3D *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 box, TQ3Vector3D *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 box, TQ3Point3D *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 ) Q3Box_New ( const TQ3BoxData *boxData );
Constructs a new Box geometry object.
If you pass NULL, 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 NULL.
Q3Box_SetData |
( TQ3Status ) Q3Box_SetData ( TQ3GeometryObject box, const TQ3BoxData *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 box, TQ3Uns32 faceIndex, TQ3AttributeSet 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 box, const TQ3Vector3D *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 box, const TQ3Vector3D *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 box, const TQ3Vector3D *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 box, const TQ3Point3D *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 *boxData, TQ3ViewObject 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
TQ3BoxDatastructure specifying the box to be drawn.- view
- The view to submit the box to.
Q3Cone_EmptyData |
( TQ3Status ) Q3Cone_EmptyData ( TQ3ConeData *coneData );
Release memory allocated by Q3Cone_GetData.
- coneData
- Data describing a cone, previously obtained with
Q3Cone_GetData.
Q3Cone_GetBottomAttributeSet |
( TQ3Status ) Q3Cone_GetBottomAttributeSet ( TQ3GeometryObject cone, TQ3AttributeSet *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 NULL.
Q3Cone_GetCaps |
( TQ3Status ) Q3Cone_GetCaps ( TQ3GeometryObject cone, TQ3EndCap *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 cone, TQ3ConeData *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 cone, TQ3AttributeSet *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 NULL.
Q3Cone_GetInteriorAttributeSet |
( TQ3Status ) Q3Cone_GetInteriorAttributeSet ( TQ3GeometryObject cone, TQ3AttributeSet *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 NULL.
Q3Cone_GetMajorRadius |
( TQ3Status ) Q3Cone_GetMajorRadius ( TQ3GeometryObject cone, TQ3Vector3D *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 cone, TQ3Vector3D *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 cone, TQ3Vector3D *orientation );
Get the orientation vector of a cone object.
- cone
- The cone object.
- orientation
- Receives the orientation vector.
Q3Cone_GetOrigin |
( TQ3Status ) Q3Cone_GetOrigin ( TQ3GeometryObject cone, TQ3Point3D *origin );
Get the origin of a cone object.
- cone
- The cone object.
- origin
- Receives the origin.
Q3Cone_New |
( TQ3GeometryObject ) Q3Cone_New ( const TQ3ConeData *coneData );
Create a cone geometry object.
If you pass NULL, 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 NULL.
Q3Cone_SetBottomAttributeSet |
( TQ3Status ) Q3Cone_SetBottomAttributeSet ( TQ3GeometryObject cone, TQ3AttributeSet 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 NULL.
Q3Cone_SetCaps |
( TQ3Status ) Q3Cone_SetCaps ( TQ3GeometryObject 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 cone, const TQ3ConeData *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 cone, TQ3AttributeSet 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 NULL.
Q3Cone_SetInteriorAttributeSet |
( TQ3Status ) Q3Cone_SetInteriorAttributeSet ( TQ3GeometryObject cone, TQ3AttributeSet 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 cone, const TQ3Vector3D *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 cone, const TQ3Vector3D *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 cone, const TQ3Vector3D *orientation );
Change the orientation vector of a cone object.
- cone
- The cone object.
- orientation
- The new orientation vector.
Q3Cone_SetOrigin |
( TQ3Status ) Q3Cone_SetOrigin ( TQ3GeometryObject cone, const TQ3Point3D *origin );
Change the origin of a cone object.
- cone
- The cone object.
- origin
- The new origin.
Q3Cone_Submit |
( TQ3Status ) Q3Cone_Submit ( const TQ3ConeData *coneData, TQ3ViewObject 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 *cylinderData );
Free memory allocated by Q3Cylinder_GetData.
- cylinderData
- Cylinder data previously obtained using
Q3Cylinder_GetData.
Q3Cylinder_GetBottomAttributeSet |
( TQ3Status ) Q3Cylinder_GetBottomAttributeSet ( TQ3GeometryObject cylinder, TQ3AttributeSet *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 NULL.
Q3Cylinder_GetCaps |
( TQ3Status ) Q3Cylinder_GetCaps ( TQ3GeometryObject cylinder, TQ3EndCap *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 cylinder, TQ3CylinderData *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 cylinder, TQ3AttributeSet *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 NULL.
Q3Cylinder_GetInteriorAttributeSet |
( TQ3Status ) Q3Cylinder_GetInteriorAttributeSet ( TQ3GeometryObject cylinder, TQ3AttributeSet *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 NULL.
Q3Cylinder_GetMajorRadius |
( TQ3Status ) Q3Cylinder_GetMajorRadius ( TQ3GeometryObject cylinder, TQ3Vector3D *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 cylinder, TQ3Vector3D *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 cylinder, TQ3Vector3D *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 cylinder, TQ3Point3D *origin );
Get the origin of a cylinder.
- cylinder
- A cylinder object.
- origin
- Receives the origin of the cylinder.
Q3Cylinder_GetTopAttributeSet |
( TQ3Status ) Q3Cylinder_GetTopAttributeSet ( TQ3GeometryObject cylinder, TQ3AttributeSet *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 NULL.
Q3Cylinder_New |
( TQ3GeometryObject ) Q3Cylinder_New ( const TQ3CylinderData *cylinderData );
Create a new Cylinder object.
If you pass NULL, 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 NULL.
Q3Cylinder_SetBottomAttributeSet |
( TQ3Status ) Q3Cylinder_SetBottomAttributeSet ( TQ3GeometryObject cylinder, TQ3AttributeSet 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 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 cylinder, const TQ3CylinderData *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 cylinder, TQ3AttributeSet 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 cylinder, TQ3AttributeSet 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 cylinder, const TQ3Vector3D *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 cylinder, const TQ3Vector3D *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 cylinder, const TQ3Vector3D *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 cylinder, const TQ3Point3D *origin );
Change the origin of a cylinder object.
- cylinder
- A cylinder object.
- origin
- New point of origin.
Q3Cylinder_SetTopAttributeSet |
( TQ3Status ) Q3Cylinder_SetTopAttributeSet ( TQ3GeometryObject cylinder, TQ3AttributeSet 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 *cylinderData, TQ3ViewObject 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 *diskData );
Free memory allocated by Q3Disk_GetData.
- diskData
- Data describing a disk object, previously obtained by
Q3Disk_GetData.
Q3Disk_GetData |
( TQ3Status ) Q3Disk_GetData ( TQ3GeometryObject disk, TQ3DiskData *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 disk, TQ3Vector3D *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 disk, TQ3Vector3D *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 disk, TQ3Point3D *origin );
Get the origin of a disk object.
- disk
- A disk geometry object.
- origin
- Receives the origin of the disk.
Q3Disk_New |
( TQ3GeometryObject ) Q3Disk_New ( const TQ3DiskData *diskData );
Create a new disk object.
If you pass NULL 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 disk, const TQ3DiskData *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 disk, const TQ3Vector3D *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 disk, const TQ3Vector3D *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 disk, const TQ3Point3D *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 *diskData, TQ3ViewObject 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 *ellipseData );
Release memory allocated by Q3Ellipse_GetData.
- ellipseData
- Data describing an ellipse, previously obtained with
Q3Ellipse_GetData.
Q3Ellipse_GetData |
( TQ3Status ) Q3Ellipse_GetData ( TQ3GeometryObject ellipse, TQ3EllipseData *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 ellipse, TQ3Vector3D *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 ellipse, TQ3Vector3D *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 ellipse, TQ3Point3D *origin );
Get the origin of an Ellipse object.
- ellipse
- The Ellipse object.
- origin
- Receives the origin.
Q3Ellipse_New |
( TQ3GeometryObject ) Q3Ellipse_New ( const TQ3EllipseData *ellipseData );
Create a new ellipse geometry object.
If you pass NULL, 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 ellipse, const TQ3EllipseData *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 ellipse, const TQ3Vector3D *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 ellipse, const TQ3Vector3D *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 ellipse, const TQ3Point3D *origin );
Change the origin of an ellipse object.
- ellipse
- The ellipse object.
- origin
- The new origin.
Q3Ellipse_Submit |
( TQ3Status ) Q3Ellipse_Submit ( const TQ3EllipseData *ellipseData, TQ3ViewObject 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 *ellipsoidData );
Release memory allocated by Q3Ellipsoid_GetData.
- ellipsoidData
- Data describing an Ellipsoid, previously obtained with
Q3Ellipsoid_GetData.
Q3Ellipsoid_GetData |
( TQ3Status ) Q3Ellipsoid_GetData ( TQ3GeometryObject ellipsoid, TQ3EllipsoidData *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 ellipsoid, TQ3Vector3D *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 ellipsoid, TQ3Vector3D *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 ellipsoid, TQ3Vector3D *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 ellipsoid, TQ3Point3D *origin );
Get the origin of an Ellipsoid object.
- ellipsoid
- The Ellipsoid object.
- origin
- Receives the origin.
Q3Ellipsoid_New |
( TQ3GeometryObject ) Q3Ellipsoid_New ( const TQ3EllipsoidData *ellipsoidData );
Create a new ellipsoid geometry object.
If you pass NULL, 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 ellipsoid, const TQ3EllipsoidData *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 ellipsoid, const TQ3Vector3D *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 ellipsoid, const TQ3Vector3D *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 ellipsoid, const TQ3Vector3D *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 ellipsoid, const TQ3Point3D *origin );
Change the origin of an ellipsoid object.
- ellipsoid
- The ellipsoid object.
- origin
- The new origin.
Q3Ellipsoid_Submit |
( TQ3Status ) Q3Ellipsoid_Submit ( const TQ3EllipsoidData *ellipsoidData, TQ3ViewObject 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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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) != NULL; \
(_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 *generalPolygonData );
Release memory allocated by Q3GeneralPolygon_GetData.
- generalPolygonData
- Data describing a General Polygon, previously obtained with
Q3GeneralPolygon_GetData.
Q3GeneralPolygon_GetData |
( TQ3Status ) Q3GeneralPolygon_GetData ( TQ3GeometryObject polygon, TQ3GeneralPolygonData *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_GetShapeHint |
( TQ3Status ) Q3GeneralPolygon_GetShapeHint ( TQ3GeometryObject generalPolygon, TQ3GeneralPolygonShapeHint *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 generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, TQ3AttributeSet *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 NULL.
Q3GeneralPolygon_GetVertexPosition |
( TQ3Status ) Q3GeneralPolygon_GetVertexPosition ( TQ3GeometryObject generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, TQ3Point3D *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 ) Q3GeneralPolygon_New ( const TQ3GeneralPolygonData *generalPolygonData );
Create a new general polygon geometry object.
- generalPolygonData
- Data describing a general polygon.
Q3GeneralPolygon_SetData |
( TQ3Status ) Q3GeneralPolygon_SetData ( TQ3GeometryObject generalPolygon, const TQ3GeneralPolygonData *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 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 generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, TQ3AttributeSet 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 generalPolygon, TQ3Uns32 contourIndex, TQ3Uns32 pointIndex, const TQ3Point3D *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 *generalPolygonData, TQ3ViewObject 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 geometry, TQ3AttributeSet *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 ) Q3Geometry_GetDecomposed ( TQ3GeometryObject geometry, TQ3ViewObject 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, NULL 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 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 geometry, TQ3AttributeSet 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 geometry, TQ3ViewObject 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 *lineData );
Release memory allocated by Q3Line_GetData.
- lineData
- Data describing a Line, previously obtained with
Q3Line_GetData.
Q3Line_GetData |
( TQ3Status ) Q3Line_GetData ( TQ3GeometryObject line, TQ3LineData *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 line, TQ3Uns32 index, TQ3AttributeSet *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 NULL.
Q3Line_GetVertexPosition |
( TQ3Status ) Q3Line_GetVertexPosition ( TQ3GeometryObject line, TQ3Uns32 index, TQ3Point3D *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 ) Q3Line_New ( const TQ3LineData *lineData );
Create a new line geometry object.
- lineData
- Data describing a line.
Q3Line_SetData |
( TQ3Status ) Q3Line_SetData ( TQ3GeometryObject line, const TQ3LineData *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 line, TQ3Uns32 index, TQ3AttributeSet 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 line, TQ3Uns32 index, const TQ3Point3D *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 *lineData, TQ3ViewObject 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 *markerData );
Release memory allocated by Q3Marker_GetData.
- markerData
- Data describing a Marker, previously obtained with
Q3Marker_GetData.
Q3Marker_GetBitmap |
( TQ3Status ) Q3Marker_GetBitmap ( TQ3GeometryObject marker, TQ3Bitmap *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 geometry, TQ3MarkerData *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 marker, TQ3Point3D *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 marker, TQ3Int32 *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 marker, TQ3Int32 *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 ) Q3Marker_New ( const TQ3MarkerData *markerData );
Create a new marker geometry object.
- markerData
- Data describing a marker.
Q3Marker_SetBitmap |
( TQ3Status ) Q3Marker_SetBitmap ( TQ3GeometryObject marker, const TQ3Bitmap *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 geometry, const TQ3MarkerData *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 marker, const TQ3Point3D *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 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 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 *markerData, TQ3ViewObject 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 ) Q3Mesh_ContourToFace ( TQ3GeometryObject mesh, TQ3MeshContour 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 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 *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_FaceDelete |
( TQ3Status ) Q3Mesh_FaceDelete ( TQ3GeometryObject mesh, TQ3MeshFace face );
Delete a mesh face.
- mesh
- The mesh to remove the face from.
- face
- The mesh face to delete.
Q3Mesh_FaceNew |
( TQ3MeshFace ) Q3Mesh_FaceNew ( TQ3GeometryObject mesh, TQ3Uns32 numVertices, const TQ3MeshVertex *vertices, TQ3AttributeSet 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 ) Q3Mesh_FaceToContour ( TQ3GeometryObject mesh, TQ3MeshFace containerFace, TQ3MeshFace 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 ) Q3Mesh_FirstComponentEdge ( TQ3MeshComponent component, TQ3MeshIterator *iterator );
Get the first edge in a mesh component.
- component
- The component to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstComponentVertex |
( TQ3MeshVertex ) Q3Mesh_FirstComponentVertex ( TQ3MeshComponent component, TQ3MeshIterator *iterator );
Get the first vertex in a mesh component.
- component
- The component to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstContourEdge |
( TQ3MeshEdge ) Q3Mesh_FirstContourEdge ( TQ3MeshContour contour, TQ3MeshIterator *iterator );
Get the first edge in a mesh contour.
- contour
- The contour to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstContourFace |
( TQ3MeshFace ) Q3Mesh_FirstContourFace ( TQ3MeshContour contour, TQ3MeshIterator *iterator );
Get the first face in a mesh contour.
- contour
- The contour to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstContourVertex |
( TQ3MeshVertex ) Q3Mesh_FirstContourVertex ( TQ3MeshContour contour, TQ3MeshIterator *iterator );
Get the first vertex in a mesh contour.
- contour
- The contour to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceContour |
( TQ3MeshContour ) Q3Mesh_FirstFaceContour ( TQ3MeshFace face, TQ3MeshIterator *iterator );
Get the first contour in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceEdge |
( TQ3MeshEdge ) Q3Mesh_FirstFaceEdge ( TQ3MeshFace face, TQ3MeshIterator *iterator );
Get the first edge in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceFace |
( TQ3MeshFace ) Q3Mesh_FirstFaceFace ( TQ3MeshFace face, TQ3MeshIterator *iterator );
Get the first face in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstFaceVertex |
( TQ3MeshVertex ) Q3Mesh_FirstFaceVertex ( TQ3MeshFace face, TQ3MeshIterator *iterator );
Get the first vertex in a mesh face.
- face
- The face to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshComponent |
( TQ3MeshComponent ) Q3Mesh_FirstMeshComponent ( TQ3GeometryObject mesh, TQ3MeshIterator *iterator );
Get the first component in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshEdge |
( TQ3MeshEdge ) Q3Mesh_FirstMeshEdge ( TQ3GeometryObject mesh, TQ3MeshIterator *iterator );
Get the first edge in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshFace |
( TQ3MeshFace ) Q3Mesh_FirstMeshFace ( TQ3GeometryObject mesh, TQ3MeshIterator *iterator );
Get the first face in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstMeshVertex |
( TQ3MeshVertex ) Q3Mesh_FirstMeshVertex ( TQ3GeometryObject mesh, TQ3MeshIterator *iterator );
Get the first vertex in a mesh.
- mesh
- The mesh to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstVertexEdge |
( TQ3MeshEdge ) Q3Mesh_FirstVertexEdge ( TQ3MeshVertex vertex, TQ3MeshIterator *iterator );
Get the first edge in a mesh vertex.
- vertex
- The vertex to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstVertexFace |
( TQ3MeshFace ) Q3Mesh_FirstVertexFace ( TQ3MeshVertex vertex, TQ3MeshIterator *iterator );
Get the first face in a mesh vertex.
- vertex
- The vertex to query.
- iterator
- Receives the mesh iterator.
Q3Mesh_FirstVertexVertex |
( TQ3MeshVertex ) Q3Mesh_FirstVertexVertex ( TQ3MeshVertex vertex, TQ3MeshIterator *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 mesh, TQ3MeshComponent component, TQ3BoundingBox *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 mesh, TQ3MeshComponent component, TQ3Uns32 *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 mesh, TQ3MeshComponent component, TQ3Uns32 *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 mesh, TQ3MeshComponent component, TQ3Boolean *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 mesh, TQ3MeshContour contour, TQ3MeshFace *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 mesh, TQ3MeshContour contour, TQ3Uns32 *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 mesh, TQ3MeshVertex vertex, TQ3MeshFace face, TQ3AttributeSet *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 mesh, TQ3MeshData *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 mesh, TQ3MeshEdge edge, TQ3AttributeSet *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 mesh, TQ3MeshEdge edge, TQ3MeshComponent *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 mesh, TQ3MeshEdge edge, TQ3MeshFace *face1, TQ3MeshFace *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 mesh, TQ3MeshEdge edge, TQ3Boolean *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 mesh, TQ3MeshEdge edge, TQ3MeshVertex *vertex1, TQ3MeshVertex *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 mesh, TQ3MeshFace face, TQ3AttributeSet *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 mesh, TQ3MeshFace face, TQ3MeshComponent *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 mesh, TQ3MeshFace face, TQ3Uns32 *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 mesh, TQ3MeshFace face, TQ3Uns32 *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 mesh, TQ3MeshFace face, TQ3Uns32 *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 mesh, TQ3MeshFace face, TQ3PlaneEquation *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 mesh, TQ3Uns32 *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 mesh, TQ3Uns32 *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 mesh, TQ3Uns32 *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 mesh, TQ3Uns32 *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 mesh, TQ3Uns32 *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 mesh, TQ3Boolean *orientable );
Get the mesh orientable state
- mesh
- The mesh to query.
- orientable
- Receives the mesh orientable state.
Q3Mesh_GetVertexAttributeSet |
( TQ3Status ) Q3Mesh_GetVertexAttributeSet ( TQ3GeometryObject mesh, TQ3MeshVertex vertex, TQ3AttributeSet *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 mesh, TQ3MeshVertex vertex, TQ3MeshComponent *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 mesh, TQ3MeshVertex vertex, TQ3Point3D *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 mesh, TQ3MeshVertex vertex, TQ3Uns32 *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 mesh, TQ3MeshVertex vertex, TQ3Boolean *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 ) Q3Mesh_New (void);
Create a new empty Mesh geometry object.
Q3Mesh_NextComponentEdge |
( TQ3MeshEdge ) Q3Mesh_NextComponentEdge ( TQ3MeshIterator *iterator );
Get the next edge in a mesh component.
- iterator
- The mesh iterator.
Q3Mesh_NextComponentVertex |
( TQ3MeshVertex ) Q3Mesh_NextComponentVertex ( TQ3MeshIterator *iterator );
Get the next vertex in a mesh component.
- iterator
- The mesh iterator.
Q3Mesh_NextContourEdge |
( TQ3MeshEdge ) Q3Mesh_NextContourEdge ( TQ3MeshIterator *iterator );
Get the next edge in a mesh contour.
- iterator
- The mesh iterator.
Q3Mesh_NextContourFace |
( TQ3MeshFace ) Q3Mesh_NextContourFace ( TQ3MeshIterator *iterator );
Get the next face in a mesh contour.
- iterator
- The mesh iterator.
Q3Mesh_NextContourVertex |
( TQ3MeshVertex ) Q3Mesh_NextContourVertex ( TQ3MeshIterator *iterator );
Get the next vertex in a mesh contour.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceContour |
( TQ3MeshContour ) Q3Mesh_NextFaceContour ( TQ3MeshIterator *iterator );
Get the next contour in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceEdge |
( TQ3MeshEdge ) Q3Mesh_NextFaceEdge ( TQ3MeshIterator *iterator );
Get the next edge in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceFace |
( TQ3MeshFace ) Q3Mesh_NextFaceFace ( TQ3MeshIterator *iterator );
Get the next face in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextFaceVertex |
( TQ3MeshVertex ) Q3Mesh_NextFaceVertex ( TQ3MeshIterator *iterator );
Get the next vertex in a mesh face.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshComponent |
( TQ3MeshComponent ) Q3Mesh_NextMeshComponent ( TQ3MeshIterator *iterator );
Get the next component in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshEdge |
( TQ3MeshEdge ) Q3Mesh_NextMeshEdge ( TQ3MeshIterator *iterator );
Get the next edge in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshFace |
( TQ3MeshFace ) Q3Mesh_NextMeshFace ( TQ3MeshIterator *iterator );
Get the next face in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextMeshVertex |
( TQ3MeshVertex ) Q3Mesh_NextMeshVertex ( TQ3MeshIterator *iterator );
Get the next vertex in a mesh.
- iterator
- The mesh iterator.
Q3Mesh_NextVertexEdge |
( TQ3MeshEdge ) Q3Mesh_NextVertexEdge ( TQ3MeshIterator *iterator );
Get the next edge in a mesh vertex.
- iterator
- The mesh iterator.
Q3Mesh_NextVertexFace |
( TQ3MeshFace ) Q3Mesh_NextVertexFace ( TQ3MeshIterator *iterator );
Get the next face in a mesh vertex.
- iterator
- The mesh iterator.
Q3Mesh_NextVertexVertex |
( TQ3MeshVertex ) Q3Mesh_NextVertexVertex ( TQ3MeshIterator *iterator );
Get the next vertex in a mesh vertex.
- iterator
- The mesh iterator.
Q3Mesh_ResumeUpdates |
( TQ3Status ) Q3Mesh_ResumeUpdates ( TQ3GeometryObject 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 mesh, TQ3MeshVertex vertex, TQ3MeshFace face, TQ3AttributeSet 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 mesh, const TQ3MeshData *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 mesh, TQ3MeshEdge edge, TQ3AttributeSet 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 mesh, TQ3MeshFace face, TQ3AttributeSet 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 mesh, TQ3MeshVertex vertex, TQ3AttributeSet 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 mesh, TQ3MeshVertex vertex, const TQ3Point3D *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 mesh, TQ3MeshVertex vertex );
Delete a mesh vertex.
- mesh
- The mesh to remove the vertex from.
- vertex
- The mesh vertex to delete.
Q3Mesh_VertexNew |
( TQ3MeshVertex ) Q3Mesh_VertexNew ( TQ3GeometryObject mesh, const TQ3Vertex3D *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 *nurbCurveData );
Release memory allocated by Q3NURBCurve_GetData.
- nurbCurveData
- Data describing a NURB Curve, previously obtained with
Q3NURBCurve_GetData.
Q3NURBCurve_GetControlPoint |
( TQ3Status ) Q3NURBCurve_GetControlPoint ( TQ3GeometryObject curve, TQ3Uns32 pointIndex, TQ3RationalPoint4D *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 curve, TQ3NURBCurveData *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 curve, TQ3Uns32 knotIndex, float *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 ) Q3NURBCurve_New ( const TQ3NURBCurveData *curveData );
Create a new NURB curve geometry object.
- curveData
- Data describing a NURB curve.
Q3NURBCurve_SetControlPoint |
( TQ3Status ) Q3NURBCurve_SetControlPoint ( TQ3GeometryObject curve, TQ3Uns32 pointIndex, const TQ3RationalPoint4D *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 curve, const TQ3NURBCurveData *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 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 *curveData, TQ3ViewObject 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 *nurbPatchData );
Release memory allocated by Q3NURBPatch_GetData.
- nurbPatchData
- Data describing a NURB Patch, previously obtained with
Q3NURBPatch_GetData.
Q3NURBPatch_GetControlPoint |
( TQ3Status ) Q3NURBPatch_GetControlPoint ( TQ3GeometryObject nurbPatch, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3RationalPoint4D *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 nurbPatch, TQ3NURBPatchData *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 nurbPatch, TQ3Uns32 knotIndex, float *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 nurbPatch, TQ3Uns32 knotIndex, float *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 ) Q3NURBPatch_New ( const TQ3NURBPatchData *nurbPatchData );
Create a new NURB patch geometry object.
- nurbPatchData
- Data describing a NURB patch.
Q3NURBPatch_SetControlPoint |
( TQ3Status ) Q3NURBPatch_SetControlPoint ( TQ3GeometryObject nurbPatch, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, const TQ3RationalPoint4D *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 nurbPatch, const TQ3NURBPatchData *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 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 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 *nurbPatchData, TQ3ViewObject 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 *pixmapMarkerData );
Release memory allocated by Q3PixmapMarker_GetData.
- pixmapMarkerData
- Data describing a Pixmap Marker, previously obtained with
Q3PixmapMarker_GetData.
Q3PixmapMarker_GetData |
( TQ3Status ) Q3PixmapMarker_GetData ( TQ3GeometryObject geometry, TQ3PixmapMarkerData *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 pixmapMarker, TQ3StoragePixmap *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 pixmapMarker, TQ3Point3D *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 pixmapMarker, TQ3Int32 *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 pixmapMarker, TQ3Int32 *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 ) Q3PixmapMarker_New ( const TQ3PixmapMarkerData *pixmapMarkerData );
Create a new pixmap marker geometry object.
- pixmapMarkerData
- Data describing a pixmap marker.
Q3PixmapMarker_SetData |
( TQ3Status ) Q3PixmapMarker_SetData ( TQ3GeometryObject geometry, const TQ3PixmapMarkerData *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 pixmapMarker, const TQ3StoragePixmap *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 pixmapMarker, const TQ3Point3D *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 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 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 *pixmapMarkerData, TQ3ViewObject 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 *pointData );
Release memory allocated by Q3Point_GetData.
- pointData
- Data describing a Point, previously obtained with
Q3Point_GetData.
Q3Point_GetData |
( TQ3Status ) Q3Point_GetData ( TQ3GeometryObject point, TQ3PointData *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 point, TQ3Point3D *position );
Get the position of a point object.
- point
- A point object.
- position
- Receives the position of the point.
Q3Point_New |
( TQ3GeometryObject ) Q3Point_New ( const TQ3PointData *pointData );
Create a new point geometry object.
If you pass NULL 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 point, const TQ3PointData *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 point, const TQ3Point3D *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 *pointData, TQ3ViewObject 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 *polyLineData );
Release memory allocated by Q3PolyLine_GetData.
- polyLineData
- Data describing a PolyLine, previously obtained with
Q3PolyLine_GetData.
Q3PolyLine_GetData |
( TQ3Status ) Q3PolyLine_GetData ( TQ3GeometryObject polyLine, TQ3PolyLineData *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 polyLine, TQ3Uns32 index, TQ3AttributeSet *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 polyLine, TQ3Uns32 index, TQ3AttributeSet *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 polyLine, TQ3Uns32 index, TQ3Point3D *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 ) Q3PolyLine_New ( const TQ3PolyLineData *polylineData );
Create a new polyline geometry object.
- polylineData
- Data describing a polyline.
Q3PolyLine_SetData |
( TQ3Status ) Q3PolyLine_SetData ( TQ3GeometryObject polyLine, const TQ3PolyLineData *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 polyLine, TQ3Uns32 index, TQ3AttributeSet 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 polyLine, TQ3Uns32 index, TQ3AttributeSet 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 polyLine, TQ3Uns32 index, const TQ3Point3D *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 *polyLineData, TQ3ViewObject 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 *polygonData );
Release memory allocated by Q3Polygon_GetData.
- polygonData
- Data describing a Polygon, previously obtained with
Q3Polygon_GetData.
Q3Polygon_GetData |
( TQ3Status ) Q3Polygon_GetData ( TQ3GeometryObject polygon, TQ3PolygonData *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 polygon, TQ3Uns32 index, TQ3AttributeSet *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 NULL.
Q3Polygon_GetVertexPosition |
( TQ3Status ) Q3Polygon_GetVertexPosition ( TQ3GeometryObject polygon, TQ3Uns32 index, TQ3Point3D *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 ) Q3Polygon_New ( const TQ3PolygonData *polygonData );
Create a new polygon geometry object.
- polygonData
- Data describing a polygon.
Q3Polygon_SetData |
( TQ3Status ) Q3Polygon_SetData ( TQ3GeometryObject polygon, const TQ3PolygonData *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 polygon, TQ3Uns32 index, TQ3AttributeSet 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 polygon, TQ3Uns32 index, const TQ3Point3D *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 *polygonData, TQ3ViewObject 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 *polyhedronData );
Release memory allocated by Q3Polyhedron_GetData.
- polyhedronData
- Data describing a Polyhedron, previously obtained with
Q3Polyhedron_GetData.
Q3Polyhedron_GetData |
( TQ3Status ) Q3Polyhedron_GetData ( TQ3GeometryObject polyhedron, TQ3PolyhedronData *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 polyhedron, TQ3Uns32 edgeIndex, TQ3PolyhedronEdgeData *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 polyhedron, TQ3Uns32 triangleIndex, TQ3PolyhedronTriangleData *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 polyhedron, TQ3Uns32 index, TQ3AttributeSet *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 polyhedron, TQ3Uns32 index, TQ3Point3D *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 ) Q3Polyhedron_New ( const TQ3PolyhedronData *polyhedronData );
Create a new polyhedron geometry object.
- polyhedronData
- Data describing a polyhedron.
Q3Polyhedron_SetData |
( TQ3Status ) Q3Polyhedron_SetData ( TQ3GeometryObject polyhedron, const TQ3PolyhedronData *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 polyhedron, TQ3Uns32 edgeIndex, const TQ3PolyhedronEdgeData *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 polyhedron, TQ3Uns32 triangleIndex, const TQ3PolyhedronTriangleData *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 polyhedron, TQ3Uns32 index, TQ3AttributeSet 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 polyhedron, TQ3Uns32 index, const TQ3Point3D *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 *polyhedronData, TQ3ViewObject 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 *torusData );
Release memory allocated by Q3Torus_GetData.
- torusData
- Data describing a Torus, previously obtained with
Q3Torus_GetData.
Q3Torus_GetData |
( TQ3Status ) Q3Torus_GetData ( TQ3GeometryObject torus, TQ3TorusData *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 torus, TQ3Vector3D *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 torus, TQ3Vector3D *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 torus, TQ3Vector3D *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 torus, TQ3Point3D *origin );
Get the origin of a Torus object.
- torus
- The Torus object.
- origin
- Receives the origin.
Q3Torus_GetRatio |
( TQ3Status ) Q3Torus_GetRatio ( TQ3GeometryObject torus, float *ratio );
Get the ratio of a torus.
- torus
- The torus to query.
- ratio
- Receives the ratio of the torus.
Q3Torus_New |
( TQ3GeometryObject ) Q3Torus_New ( const TQ3TorusData *torusData );
Create a new torus geometry object.
If you pass NULL, 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 NULL.
Q3Torus_SetData |
( TQ3Status ) Q3Torus_SetData ( TQ3GeometryObject torus, const TQ3TorusData *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 torus, const TQ3Vector3D *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 torus, const TQ3Vector3D *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 torus, const TQ3Vector3D *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 torus, const TQ3Point3D *origin );
Change the origin of a torus object.
- torus
- The torus object.
- origin
- The new origin.
Q3Torus_SetRatio |
( TQ3Status ) Q3Torus_SetRatio ( TQ3GeometryObject 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 *torusData, TQ3ViewObject 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 *triGridData );
Release memory allocated by Q3TriGrid_GetData.
- triGridData
- Data describing a TriGrid, previously obtained with
Q3TriGrid_GetData.
Q3TriGrid_GetData |
( TQ3Status ) Q3TriGrid_GetData ( TQ3GeometryObject triGrid, TQ3TriGridData *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 triGrid, TQ3Uns32 faceIndex, TQ3AttributeSet *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 triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3AttributeSet *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 triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3Point3D *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 ) Q3TriGrid_New ( const TQ3TriGridData *triGridData );
Create a new TriGrid geometry object.
- triGridData
- Data describing a TriGrid.
Q3TriGrid_SetData |
( TQ3Status ) Q3TriGrid_SetData ( TQ3GeometryObject triGrid, const TQ3TriGridData *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 triGrid, TQ3Uns32 faceIndex, TQ3AttributeSet 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 triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, TQ3AttributeSet 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 triGrid, TQ3Uns32 rowIndex, TQ3Uns32 columnIndex, const TQ3Point3D *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 *triGridData, TQ3ViewObject 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 *triMeshData );
Release memory allocated by Q3TriMesh_GetData.
- triMeshData
- Data describing a TriMesh, previously obtained with
Q3TriMesh_GetData.
Q3TriMesh_GetData |
( TQ3Status ) Q3TriMesh_GetData ( TQ3GeometryObject triMesh, TQ3TriMeshData *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_LockData |
( TQ3Status ) Q3TriMesh_LockData ( TQ3GeometryObject triMesh, TQ3Boolean readOnly, TQ3TriMeshData **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* inTriangles, TQ3Uns32* outStripLength, TQ3Uns32** 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 ) Q3TriMesh_New ( const TQ3TriMeshData *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.
- triMeshData
- Data describing a TriMesh.
Q3TriMesh_Optimize |
( TQ3GeometryObject ) Q3TriMesh_Optimize ( TQ3GeometryObject inTriMesh );
See discussion of Q3TriMesh_OptimizeData for the optimizations
that are performed. If no optimizations are needed, NULL is returned.
This function is not available in QD3D.
- inTriMesh
- A TriMesh geometry.
Q3TriMesh_OptimizeData |
( TQ3Status ) Q3TriMesh_OptimizeData ( const TQ3TriMeshData* inData, TQ3TriMeshData* outData, TQ3Boolean* 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 triMesh, const TQ3TriMeshData *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_Submit |
( TQ3Status ) Q3TriMesh_Submit ( const TQ3TriMeshData *triMeshData, TQ3ViewObject 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 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 *triangleData );
Release memory allocated by Q3Triangle_GetData.
- triangleData
- Data describing a Triangle, previously obtained with
Q3Triangle_GetData.
Q3Triangle_GetData |
( TQ3Status ) Q3Triangle_GetData ( TQ3GeometryObject triangle, TQ3TriangleData *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 triangle, TQ3Uns32 index, TQ3AttributeSet *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 triangle, TQ3Uns32 index, TQ3Point3D *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 ) Q3Triangle_New ( const TQ3TriangleData *triangleData );
Create a new triangle geometry object.
- triangleData
- Data describing a triangle.
Q3Triangle_SetData |
( TQ3Status ) Q3Triangle_SetData ( TQ3GeometryObject triangle, const TQ3TriangleData *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 triangle, TQ3Uns32 index, TQ3AttributeSet 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 triangle, TQ3Uns32 index, const TQ3Point3D *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 *triangleData, TQ3ViewObject 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 *faceAttributeSet;
TQ3AttributeSet 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 interiorAttributeSet;
TQ3AttributeSet faceAttributeSet;
TQ3AttributeSet bottomAttributeSet;
TQ3AttributeSet 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 NULL.
- bottomAttributeSet
- Attributes that affect the bottom end cap. May be NULL.
- coneAttributeSet
- Attributes for all parts of the cone. May be NULL.
TQ3CylinderData |
typedef struct TQ3CylinderData {
TQ3Point3D origin;
TQ3Vector3D orientation;
TQ3Vector3D majorRadius;
TQ3Vector3D minorRadius;
float uMin;
float uMax;
float vMin;
float vMax;
TQ3EndCap caps;
TQ3AttributeSet interiorAttributeSet;
TQ3AttributeSet topAttributeSet;
TQ3AttributeSet faceAttributeSet;
TQ3AttributeSet bottomAttributeSet;
TQ3AttributeSet 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 left-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 NULL. Unused by QD3D.
- topAttributeSet
- Attributes that affect the top end cap. May be NULL.
- faceAttributeSet
- Attributes that affect the face but not the bottom or top. May be NULL.
- bottomAttributeSet
- Attributes that affect the bottom end cap. May be NULL.
- cylinderAttributeSet
- Attributes for all parts of the cylinder. May be NULL.
TQ3DiskData |
typedef struct TQ3DiskData {
TQ3Point3D origin;
TQ3Vector3D majorRadius;
TQ3Vector3D minorRadius;
float uMin;
float uMax;
float vMin;
float vMax;
TQ3AttributeSet 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 NULL.
TQ3EllipseData |
typedef struct TQ3EllipseData {
TQ3Point3D origin;
TQ3Vector3D majorRadius;
TQ3Vector3D minorRadius;
float uMin;
float uMax;
TQ3AttributeSet 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 NULL.
TQ3EllipsoidData |
typedef struct TQ3EllipsoidData {
TQ3Point3D origin;
TQ3Vector3D orientation;
TQ3Vector3D majorRadius;
TQ3Vector3D minorRadius;
float uMin;
float uMax;
float vMin;
float vMax;
TQ3EndCap caps;
TQ3AttributeSet interiorAttributeSet;
TQ3AttributeSet 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 NULL.
- ellipsoidAttributeSet
- Attributes for the ellipsoid surface. May be NULL.
TQ3GeneralPolygonContourData |
typedef struct TQ3GeneralPolygonContourData {
TQ3Uns32 numVertices;
TQ3Vertex3D *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 *contours;
TQ3GeneralPolygonShapeHint shapeHint;
TQ3AttributeSet 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 NULL.
TQ3LineData |
typedef struct TQ3LineData {
TQ3Vertex3D vertices[2];
TQ3AttributeSet 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 NULL.
TQ3MarkerData |
typedef struct TQ3MarkerData {
TQ3Point3D location;
TQ3Int32 xOffset;
TQ3Int32 yOffset;
TQ3Bitmap bitmap;
TQ3AttributeSet 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
locationto the upper left corner of the marker, in pixels.- yOffset
- Vertical offset from the
locationto 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 NULL.
TQ3MeshContourData |
typedef struct TQ3MeshContourData {
TQ3Uns32 numVertices;
TQ3Uns32 *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 *faceIndices;
TQ3AttributeSet 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 NULL.
TQ3MeshData |
typedef struct TQ3MeshData {
TQ3Uns32 numVertices;
TQ3MeshVertexData *vertices;
TQ3Uns32 numEdges;
TQ3MeshEdgeData *edges;
TQ3Uns32 numFaces;
TQ3MeshFaceData *faces;
TQ3AttributeSet 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 NULL 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 NULL.
TQ3MeshEdgeData |
typedef struct TQ3MeshEdgeData {
TQ3Uns32 vertexIndices[2];
TQ3AttributeSet 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 NULL.
TQ3MeshFaceData |
typedef struct TQ3MeshFaceData {
TQ3Uns32 numContours;
TQ3MeshContourData *contours;
TQ3AttributeSet 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 NULL.
TQ3MeshIterator |
typedef struct TQ3MeshIterator {
void *var1;
void *var2;
void *var3;
struct {
void *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 *corners;
TQ3AttributeSet 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.
In contrast, a TQ3MeshVertex is a pointer to an opaque internal
data structure, which is most likely not a TQ3MeshVertexData.
This structure is not available in QD3D.
- point
- Location of the vertex.
- numCorners
- Number of corners in the following array. May be 0 if you do not want to specify any corners.
- corners
- Pointer to an array of corners. May be NULL if you also specify 0 for
numCorners.- attributeSet
- Attribute set for the vertex.
TQ3NURBCurveData |
typedef struct TQ3NURBCurveData {
TQ3Uns32 order;
TQ3Uns32 numPoints;
TQ3RationalPoint4D *controlPoints;
float *knots;
TQ3AttributeSet curveAttributeSet;
} TQ3NURBCurveData;
Data defining a NURBS curve, a 3-dimensional curve represented by a nonuniform rational B-spline equation.
- order
- The order of the curve, one more than the degree of the polynomials defining the curve. Must be greater than one.
- numPoints
- Number of control points. Must be greater than or equal to the order.
- controlPoints
- Array of rational 4-dimensional control points.
- knots
- Array of knots that define the curve. The number of knots must equal the sum of
orderandnumPoints. The values must be nondecreasing.- curveAttributeSet
- Set of attributes for the curve. May be NULL.
TQ3NURBPatchData |
typedef struct TQ3NURBPatchData {
TQ3Uns32 uOrder;
TQ3Uns32 vOrder;
TQ3Uns32 numRows;
TQ3Uns32 numColumns;
TQ3RationalPoint4D *controlPoints;
float *uKnots;
float *vKnots;
TQ3Uns32 numTrimLoops;
TQ3NURBPatchTrimLoopData *trimLoops;
TQ3AttributeSet patchAttributeSet;
} TQ3NURBPatchData;
Data describing a NURB patch, a surface defined by a ratio of B-spline surfaces.
- uOrder
- Order of the NURB patch in the u parametric direction. The order is one greater than the degree of the polynomial functions involved, and must be greater than one.
- vOrder
- Order of the NURB patch in the v parametric direction. The order is one greater than the degree of the polynomial functions involved, and must be greater than one.
- numRows
- Number of control points in the u parametric equation. Must be greater than 1.
- numColumns
- Number of control points in the v parametric equation. Must be greater than 1.
- controlPoints
- Array of rational 4-dimensional control points. They are listed first in the direction of increasing u and then in the direction of increasing v. The number of control points is
numRowstimesnumColumns.- uKnots
- Array of knots in the u parametric direction. The number of these knots is the sum of
uOrderandnumColumns. The values must be nondecreasing.- vKnots
- Array of knots in the v parametric direction. The number of these knots is the sum of
vOrderandnumRows. The values must be nondecreasing.- numTrimLoops
- Number of trim loops in the following array. Currently this should be 0.
- trimLoops
- Pointer to an array of trim loop structures. Currently this should be NULL.
- patchAttributeSet
- Set of attributes for the patch. May be NULL.
TQ3NURBPatchTrimCurveData |
typedef struct TQ3NURBPatchTrimCurveData {
TQ3Uns32 order;
TQ3Uns32 numPoints;
TQ3RationalPoint3D *controlPoints;
float *knots;
} TQ3NURBPatchTrimCurveData;
Curve that trims a NURB patch. Note that this is similar to TQ3NURBCurveData, but lacks an attribute set.
- order
- The order of the curve, one more than the degree of the polynomials defining the curve. Must be greater than one.
- numPoints
- Number of control points. Must be greater than or equal to the order.
- controlPoints
- Array of rational 4-dimensional control points.
- knots
- Array of knots that define the curve. The number of knots must equal the sum of
orderandnumPoints. The values must be nondecreasing.
TQ3NURBPatchTrimLoopData |
typedef struct TQ3NURBPatchTrimLoopData {
TQ3Uns32 numTrimCurves;
TQ3NURBPatchTrimCurveData *trimCurves;
} TQ3NURBPatchTrimLoopData;
Data describing curves that trim a NURB patch.
- numTrimCurves
- Number of curves in the following array.
- trimCurves
- Pointer to an array of curves.
TQ3PixmapMarkerData |
typedef struct TQ3PixmapMarkerData {
TQ3Point3D position;
TQ3Int32 xOffset;
TQ3Int32 yOffset;
TQ3StoragePixmap pixmap;
TQ3AttributeSet pixmapMarkerAttributeSet;
} TQ3PixmapMarkerData;
Data describing a pixmap marker, a 2-dimensional color image drawn on top of a scene at a specified location.
- position
- Location of the marker, in local coordinates.
- xOffset
- Horizontal offset from the
positionto the upper left corner of the marker, in pixels.- yOffset
- Vertical offset from the
positionto the upper left corner of the marker, in pixels.- pixmap
- A pixmap.
- pixmapMarkerAttributeSet
- A set of attributes for the marker. May be NULL.
TQ3PointData |
typedef struct TQ3PointData {
TQ3Point3D point;
TQ3AttributeSet pointAttributeSet;
} TQ3PointData;
Data describing a point object.
- point
- Location of the point.
- pointAttributeSet
- Set of attributes for the point. May be NULL.
TQ3PolyLineData |
typedef struct TQ3PolyLineData {
TQ3Uns32 numVertices;
TQ3Vertex3D *vertices;
TQ3AttributeSet *segmentAttributeSet;
TQ3AttributeSet polyLineAttributeSet;
} TQ3PolyLineData;
Data describing a connected but not closed curve made up of several straight line segments.
- numVertices
- Number of vertices of the curve (one more than the number of line segments). Must be at least 2.
- vertices
- Pointer to an array of vertices.
- segmentAttributeSet
- Pointer to an array of attribute sets, one for each segment. If you do not want to assign attributes to any segment, this pointer may be NULL.
- polyLineAttributeSet
- Set of attributes for the whole curve. May be NULL.
TQ3PolygonData |
typedef struct TQ3PolygonData {
TQ3Uns32 numVertices;
TQ3Vertex3D *vertices;
TQ3AttributeSet polygonAttributeSet;
} TQ3PolygonData;
Data describing a simple convex polygon.
- numVertices
- Number of vertices. Must be at least 3.
- vertices
- Pointer to an array of vertices.
- polygonAttributeSet
- Set of attributes for the polygon. May be NULL.
TQ3PolyhedronData |
typedef struct TQ3PolyhedronData {
TQ3Uns32 numVertices;
TQ3Vertex3D *vertices;
TQ3Uns32 numEdges;
TQ3PolyhedronEdgeData *edges;
TQ3Uns32 numTriangles;
TQ3PolyhedronTriangleData *triangles;
TQ3AttributeSet polyhedronAttributeSet;
} TQ3PolyhedronData;
Data describing a polyhedron.
- numVertices
- Number of vertices in the following array.
- vertices
- Pointer to array of vertices of the polyhedron.
- 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 NULL if you also specify 0 for
numEdges.- numTriangles
- Number of triangles (faces) in the polygon.
- triangles
- Pointer to an array of triangles.
- polyhedronAttributeSet
- Set of attributes for the polyhedron. May be NULL.
TQ3PolyhedronEdgeData |
typedef struct TQ3PolyhedronEdgeData {
TQ3Uns32 vertexIndices[2];
TQ3Uns32 triangleIndices[2];
TQ3AttributeSet edgeAttributeSet;
} TQ3PolyhedronEdgeData;
Data describing an edge within a polyhedron.
- vertexIndices
- Indices of the two vertices that are ends of the edge.
- triangleIndices
- Indices of the two triangles that contain the edge.
- edgeAttributeSet
- Set of attributes for the edge. May be NULL.
TQ3PolyhedronTriangleData |
typedef struct TQ3PolyhedronTriangleData {
TQ3Uns32 vertexIndices[3];
TQ3PolyhedronEdge edgeFlag;
TQ3AttributeSet triangleAttributeSet;
} TQ3PolyhedronTriangleData;
Data describing a triangle within a polyhedron.
- vertexIndices
- Indices of the 3 vertices of the triangle.
- edgeFlag
- Flags indicating which edges of the triangle should be rendered. See
TQ3PolyhedronEdgeMasks.- triangleAttributeSet
- Set of attributes for the triangle. May be NULL.
TQ3TorusData |
typedef struct TQ3TorusData {
TQ3Point3D origin;
TQ3Vector3D orientation;
TQ3Vector3D majorRadius;
TQ3Vector3D minorRadius;
float ratio;
float uMin;
float uMax;
float vMin;
float vMax;
TQ3EndCap caps;
TQ3AttributeSet interiorAttributeSet;
TQ3AttributeSet torusAttributeSet;
} TQ3TorusData;
Data describing a generalized torus. A torus is a surface formed by rotating an
ellipse about an axis that is in the same plane as the ellipse but does not pass
through the ellipse.
To express the torus as a parametric equation, we first define the
elliptical central axis by the equation
axis(u) = cos(2πu) majorRadius + sin(2πu) minorRadius
where majorRadius and minorRadius are independent vectors, and u varies
from 0 to 1. Then we define the torus surface by
f(u,v) = origin + axis(u) - sin(2πv) orientation -
(cos(2πv) * ratio * |orientation| / |axis(u)|) axis(u)
where v also varies from 0 to 1 and vertical bars indicate length of a
vector.
The kind of torus usually encountered in elementary mathematics, with circular
cross sections, would be one where the orientation, majorRadius,
and minorRadius vectors are mutually orthogonal, where
majorRadius and minorRadius have the same length, and where
ratio is 1.
The values uMin, uMax, vMin, and
vMax allow one to create partial tori, e.g., a torus with
a wedge cut out of it. QuickDraw 3D did not implement this feature.
- origin
- Center of rotation.
- orientation
- Vector whose direction is the axis of rotation, and whose length is the length of the radius of the cross-sectional ellipse in the direction of the axis of rotation.
- majorRadius
- Vector from the origin to the center of the ellipse.
- minorRadius
- Vector from the origin to the center of a different cross-sectional ellipse.
- ratio
- The ratio between the radius of the cross-sectional ellipse in the direction of
majorRadius, and the length oforientation.- uMin
- Minimum value in the u parametric direction (the long way around.) Normally 0, must be in interval [0, 1].
- uMax
- Maximum value in the u parametric direction (the long way around.) Normally 1, must be in interval [0, 1].
- vMin
- Minimum value in the v parametric direction (the short way around.) Normally 0, must be in interval [0, 1].
- vMax
- Maximum value in the v parametric direction (the short way around.) Normally 1, must be in interval [0, 1].
- caps
- Cap style. Should be kQ3EndCapNone.
- interiorAttributeSet
- Interior attribute set. Not currently used.
- torusAttributeSet
- Overall attribute set.
TQ3TriGridData |
typedef struct TQ3TriGridData {
TQ3Uns32 numRows;
TQ3Uns32 numColumns;
TQ3Vertex3D *vertices;
TQ3AttributeSet *facetAttributeSet;
TQ3AttributeSet triGridAttributeSet;
} TQ3TriGridData;
Data describing a TriGrid object. A TriGrid is defined by a grid of points in 3-dimensional space. Each set of 4 adjacent points (in the mth and (m+1)st row and nth and (n+1)st column) defines a quadrilateral that can be subdivided into triangles in 2 natural ways. This subdivision is done in an alternating way, such that the vertex in the first row and first column belongs to two triangles.
- numRows
- Number of rows of vertices. Should be at least 2.
- numColumns
- Number of columns of vertices. Should be at least 2.
- vertices
- Pointer to an array of vertices, listed in rectangular order, first by increasing columns and then by increasing rows. The number of vertices should be
numRowstimesnumColumns.- facetAttributeSet
- Pointer to an array of triangle attributes. May be NULL, but otherwise should point to an array of 2×(
numRows-1)×(numColumns-1) attribute sets.- triGridAttributeSet
- Set of attributes for the whole TriGrid object. May be NULL.
TQ3TriMeshAttributeData |
typedef struct TQ3TriMeshAttributeData {
TQ3AttributeType attributeType;
void *data;
char *attributeUseArray;
} TQ3TriMeshAttributeData;
A structure holding an array of attribute data of a particular type.
- attributeType
- Type of the attribute.
- data
- Pointer to an array of attribute data. The number of members in the array is determined by context in the enclosing
TQ3TriMeshDatastructure; for instance, if these are vertex attributes, the number of members is the number of vertices. The size of each member depends on the attribute type.- attributeUseArray
- For non-custom attribute types, this must be NULL. For custom attribute types, it can point to an array of 1-byte 0s and 1s, with 1s indicating which items have the custom attribute.
TQ3TriMeshData |
typedef struct TQ3TriMeshData {
TQ3AttributeSet triMeshAttributeSet;
TQ3Uns32 numTriangles;
TQ3TriMeshTriangleData *triangles;
TQ3Uns32 numTriangleAttributeTypes;
TQ3TriMeshAttributeData *triangleAttributeTypes;
TQ3Uns32 numEdges;
TQ3TriMeshEdgeData *edges;
TQ3Uns32 numEdgeAttributeTypes;
TQ3TriMeshAttributeData *edgeAttributeTypes;
TQ3Uns32 numPoints;
TQ3Point3D *points;
TQ3Uns32 numVertexAttributeTypes;
TQ3TriMeshAttributeData *vertexAttributeTypes;
TQ3BoundingBox bBox;
} TQ3TriMeshData;
Structure describing a TriMesh object, which is an object composed of vertices, edges, and triangular faces. The main difference between a TriMesh and a Polyhedron is that attribute data for vertices, edges, and faces are not stored in attribute sets, but in arrays of attribute data. This is normally more efficient, so long as you are going to be assigning an attribute to every vertex, or every edge, or every face.
- triMeshAttributeSet
- Set of attributes for the whole object. May be NULL.
- numTriangles
- Number of triangles in the following array.
- triangles
- Pointer to an array of triangle data.
- numTriangleAttributeTypes
- Number of triangle attribute types listed in the following array.
- triangleAttributeTypes
- Pointer to an array of attribute data for triangles (faces). May be NULL, if
numTriangleAttributeTypesis 0.- numEdges
- Number of edges in the following array.
- edges
- Pointer to an array of edge data. If you do not wish to specify any edges, you can set this to NULL, and set
numEdgesto 0.- numEdgeAttributeTypes
- Number of edge attribute types in the following array.
- edgeAttributeTypes
- Pointer to an array of edge attribute types. May be NULL, provided that
numEdgeAttributeTypesis 0.- numPoints
- Number of points (vertices).
- points
- Pointer to an array of points.
- numVertexAttributeTypes
- Number of vertex attribute types in the following array.
- vertexAttributeTypes
- Pointer to an array of vertex attribute data. May be NULL, so long as
numVertexAttributeTypesis 0.- bBox
- Bounding box of the TriMesh.
TQ3TriMeshEdgeData |
typedef struct TQ3TriMeshEdgeData {
TQ3Uns32 pointIndices[2];
TQ3Uns32 triangleIndices[2];
} TQ3TriMeshEdgeData;
Data defining an edge within a TriMesh.
- pointIndices
- Array of 2 indices into the TriMesh array of points, the ends of the edge.
- triangleIndices
- Array of 2 indices into the TriMesh array of triangles, the triangles containing the edge.
TQ3TriMeshTriangleData |
typedef struct TQ3TriMeshTriangleData {
TQ3Uns32 pointIndices[3];
} TQ3TriMeshTriangleData;
Data defining a triangle within a TriMesh.
- pointIndices
- Array of 3 indices into the TriMesh array of points.
TQ3TriangleData |
typedef struct TQ3TriangleData {
TQ3Vertex3D vertices[3];
TQ3AttributeSet triangleAttributeSet;
} TQ3TriangleData;
Data defining a single triangle.
- vertices
- The 3 vertices of the triangle.
- triangleAttributeSet
- Set of attributes for the triangle. May be NULL.
Geometry Property Types |
enum
{
kQ3GeometryPropertyNonCartoon = Q3_OBJECT_TYPE('n', 'c', 'a', 'r')
};
- kQ3GeometryPropertyNonCartoon
- This property indicates to the cartoon renderer or to the quantized per-pixel lighting mode of the OpenGL renderer that this geometry should be rendered normally.
Data type: TQ3Boolean. Default value: kQ3False.
Nurb Limits |
enum {
kQ3NURBCurveMaxOrder = 16,
kQ3NURBPatchMaxOrder = 16
};
Miscellaneous limits for NURB curves and patches.
- kQ3NURBCurveMaxOrder
- Maximum order for NURB curves.
- kQ3NURBPatchMaxOrder
- Maximum order for NURB patches. Note that this was set to 11 in QD3DGeometry.h, however a Develop article on NURBs indicated it should be 16.
TQ3GeneralPolygonShapeHint |
typedef enum TQ3GeneralPolygonShapeHint {
kQ3GeneralPolygonShapeHintComplex = 0,
kQ3GeneralPolygonShapeHintConcave = 1,
kQ3GeneralPolygonShapeHintConvex = 2,
kQ3GeneralPolygonShapeHintSize32 = 0xFFFFFFFF
} TQ3GeneralPolygonShapeHint;
A general polygon has a shape hint that may be used by the renderer to optimize drawing.
- kQ3GeneralPolygonShapeHintComplex
- The general polygon has more than one contour, or is self-intersecting, or it is not known whether it is concave or convex.
- kQ3GeneralPolygonShapeHintConcave
- There is exactly one contour, which is concave.
- kQ3GeneralPolygonShapeHintConvex
- There is exactly one contour, which is convex.
TQ3PolyhedronEdgeMasks |
typedef enum TQ3PolyhedronEdgeMasks {
kQ3PolyhedronEdgeNone = 0,
kQ3PolyhedronEdge01 = (1 << 0),
kQ3PolyhedronEdge12 = (1 << 1),
kQ3PolyhedronEdge20 = (1 << 2),
kQ3PolyhedronEdgeAll = (kQ3PolyhedronEdge01 | kQ3PolyhedronEdge12 | kQ3PolyhedronEdge20),
kQ3PolyhedronEdgeSize32 = 0xFFFFFFFF
} TQ3PolyhedronEdgeMasks;
These are flags indicating which edges of a polyhedral triangle should be rendered.
- kQ3PolyhedronEdgeNone
- No Edge.
- kQ3PolyhedronEdge01
- Render the edge between vertex 0 and vertex 1.
- kQ3PolyhedronEdge12
- Render the edge between vertex 1 and vertex 2.
- kQ3PolyhedronEdge20
- Render the edge between vertex 2 and vertex 0.
- kQ3PolyhedronEdgeAll
- Render all the edges.
© 1999-2008 Quesa Developers (Last Updated 5/10/2008)