TQ3Status
Q3Box_EmptyData (
TQ3BoxData *boxData
);
Releases the memory allocated by a prior call to Q3Box_GetData.
Result: Success or failure of the operation.
Name Description boxData A pointer to the box data allocated by 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.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. boxData Receives the box object's description.
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.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3Box_GetMajorAxis (
TQ3GeometryObject box,
TQ3Vector3D *majorAxis
);
Gets the major axis of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. majorAxis Receives the major axis of the box.
TQ3Status
Q3Box_GetMinorAxis (
TQ3GeometryObject box,
TQ3Vector3D *minorAxis
);
Gets the minor axis of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. minorAxis Receives the minor axis of the box.
TQ3Status
Q3Box_GetOrientation (
TQ3GeometryObject box,
TQ3Vector3D *orientation
);
Gets the orientation of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. orientation Receives the orientation vector of the box.
TQ3Status
Q3Box_GetOrigin (
TQ3GeometryObject box,
TQ3Point3D *origin
);
Gets the origin of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. origin Receives the origin of the box object.
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.
Result: A reference to the new geometry object, or NULL on failure.
Name Description boxData Instance data passed in specifying the parameters of the new box object, or NULL.
TQ3Status
Q3Box_SetData (
TQ3GeometryObject box,
const TQ3BoxData *boxData
);
Sets the properties of an existing box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. boxData A pointer to the box data to apply to the box object.
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).
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. faceIndex The index of the face of the box. faceAttributeSet An attribute set to be applied.
TQ3Status
Q3Box_SetMajorAxis (
TQ3GeometryObject box,
const TQ3Vector3D *majorAxis
);
Sets the major axis of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. majorAxis The vector to which to set 'box's major axis.
TQ3Status
Q3Box_SetMinorAxis (
TQ3GeometryObject box,
const TQ3Vector3D *minorAxis
);
Sets the minor axis of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. minorAxis The vector to which to set 'box's minor axis.
TQ3Status
Q3Box_SetOrientation (
TQ3GeometryObject box,
const TQ3Vector3D *orientation
);
Sets the orientation of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. orientation The vector to which to set 'box's orientation.
TQ3Status
Q3Box_SetOrigin (
TQ3GeometryObject box,
const TQ3Point3D *origin
);
Sets the origin of a box object.
Result: Success or failure of the operation.
Name Description box A reference to a box geometry object. origin The point to which to set 'box's origin.
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.
Result: Success or failure of the operation.
Name Description boxData A pointer to a TQ3BoxDatastructure specifying the box to be drawn.view The view to submit the box to.
TQ3Status
Q3Cone_EmptyData (
TQ3ConeData *coneData
);
Release memory allocated by Q3Cone_GetData.
Result: Success or failure of the operation.
Name Description coneData Data describing a cone, previously obtained with Q3Cone_GetData.
TQ3Status
Q3Cone_GetBottomAttributeSet (
TQ3GeometryObject cone,
TQ3AttributeSet *bottomAttributeSet
);
Get the attribute set for the bottom cap of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. bottomAttributeSet Receives a reference to the bottom attribute set, or NULL.
TQ3Status
Q3Cone_GetCaps (
TQ3GeometryObject cone,
TQ3EndCap *caps
);
Get the end cap flags of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. caps Receives the end cap flags. See TQ3EndCapMasks, defined in Quesa.h, for values.
TQ3Status
Q3Cone_GetData (
TQ3GeometryObject cone,
TQ3ConeData *coneData
);
Get data describing a cone object.
This may allocate memory, which should be freed using Q3Cone_EmptyData.
Result: Success or failure of the operation.
Name Description cone The cone object. coneData Receives data describing the cone.
TQ3Status
Q3Cone_GetFaceAttributeSet (
TQ3GeometryObject cone,
TQ3AttributeSet *faceAttributeSet
);
Get the attribute set for the face (as opposed to the bottom cap) of a cone.
Result: Success or failure of the operation.
Name Description cone The cone object. faceAttributeSet Receives the attribute set for the face, or NULL.
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.
Result: Success or failure of the operation.
Name Description cylinder A cone object. faceAttributeSet Receives the attribute set for the interior, or NULL.
TQ3Status
Q3Cone_GetMajorRadius (
TQ3GeometryObject cone,
TQ3Vector3D *majorRadius
);
Get the major radius vector of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. majorRadius Receives the major radius vector.
TQ3Status
Q3Cone_GetMinorRadius (
TQ3GeometryObject cone,
TQ3Vector3D *minorRadius
);
Get the minor radius vector of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. minorRadius Receives the minor radius vector.
TQ3Status
Q3Cone_GetOrientation (
TQ3GeometryObject cone,
TQ3Vector3D *orientation
);
Get the orientation vector of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. orientation Receives the orientation vector.
TQ3Status
Q3Cone_GetOrigin (
TQ3GeometryObject cone,
TQ3Point3D *origin
);
Get the origin of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. origin Receives the origin.
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.
Result: The new cone object, or NULL on failure.
Name Description coneData Pointer to data describing the cone, or NULL.
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.
Result: Success or failure of the operation.
Name Description cone The cone object. bottomAttributeSet New bottom attribute set. May be NULL.
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.
Result: Success or failure of the operation.
Name Description cone The cone object. caps End cap value (do not include kQ3EndCapMaskTop).
TQ3Status
Q3Cone_SetData (
TQ3GeometryObject cone,
const TQ3ConeData *coneData
);
Modify a cone object by supplying new data.
Result: Success or failure of the operation.
Name Description cone The cone object. coneData Pointer to data describing a cone.
TQ3Status
Q3Cone_SetFaceAttributeSet (
TQ3GeometryObject cone,
TQ3AttributeSet faceAttributeSet
);
Set the attribute set for the face (as opposed to the bottom cap) of a cone.
Result: Success or failure of the operation.
Name Description cone The cone object. faceAttributeSet New face attribute set. May be NULL.
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.
Result: Success or failure of the operation.
Name Description cylinder A cone object. faceAttributeSet New attribute set for the interior of the cone.
TQ3Status
Q3Cone_SetMajorRadius (
TQ3GeometryObject cone,
const TQ3Vector3D *majorRadius
);
Change the major radius vector of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. majorRadius New major radius vector.
TQ3Status
Q3Cone_SetMinorRadius (
TQ3GeometryObject cone,
const TQ3Vector3D *minorRadius
);
Change the minor radius vector of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. minorRadius New minor radius vector.
TQ3Status
Q3Cone_SetOrientation (
TQ3GeometryObject cone,
const TQ3Vector3D *orientation
);
Change the orientation vector of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. orientation The new orientation vector.
TQ3Status
Q3Cone_SetOrigin (
TQ3GeometryObject cone,
const TQ3Point3D *origin
);
Change the origin of a cone object.
Result: Success or failure of the operation.
Name Description cone The cone object. origin The new origin.
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.
Result: Success or failure of the operation.
Name Description coneData Pointer to data describing a cone. view A view object.
TQ3Status
Q3Cylinder_EmptyData (
TQ3CylinderData *cylinderData
);
Free memory allocated by Q3Cylinder_GetData.
Result: Success or failure of the operation.
Name Description cylinderData Cylinder data previously obtained using Q3Cylinder_GetData.
TQ3Status
Q3Cylinder_GetBottomAttributeSet (
TQ3GeometryObject cylinder,
TQ3AttributeSet *bottomAttributeSet
);
Get the attribute set for the bottom cap of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. bottomAttributeSet Receives the attribute set for the bottom cap, or NULL.
TQ3Status
Q3Cylinder_GetCaps (
TQ3GeometryObject cylinder,
TQ3EndCap *caps
);
Get the cap flags of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. caps Receives the end cap flags. See TQ3EndCapMasks, defined in Quesa.h, for values.
TQ3Status
Q3Cylinder_GetData (
TQ3GeometryObject cylinder,
TQ3CylinderData *cylinderData
);
Get data describing a cylinder.
This operation may allocate memory, which should be freed using
Q3Cylinder_EmptyData.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. cylinderData Receives data describing the cylinder.
TQ3Status
Q3Cylinder_GetFaceAttributeSet (
TQ3GeometryObject cylinder,
TQ3AttributeSet *faceAttributeSet
);
Get the attribute set for the face of a cylinder object (i.e., neither end).
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. faceAttributeSet Receives the attribute set for the face, or NULL.
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.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. faceAttributeSet Receives the attribute set for the interior, or NULL.
TQ3Status
Q3Cylinder_GetMajorRadius (
TQ3GeometryObject cylinder,
TQ3Vector3D *majorRadius
);
Get the major radius vector of a cylinder.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. majorRadius Receives the major radius vector of the cylinder.
TQ3Status
Q3Cylinder_GetMinorRadius (
TQ3GeometryObject cylinder,
TQ3Vector3D *minorRadius
);
Get the minor radius vector of a cylinder.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. minorRadius Receives the minor radius vector of the cylinder.
TQ3Status
Q3Cylinder_GetOrientation (
TQ3GeometryObject cylinder,
TQ3Vector3D *orientation
);
Get the orientation vector of a cylinder.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. orientation Receives the orientation vector of the cylinder.
TQ3Status
Q3Cylinder_GetOrigin (
TQ3GeometryObject cylinder,
TQ3Point3D *origin
);
Get the origin of a cylinder.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. origin Receives the origin of the cylinder.
TQ3Status
Q3Cylinder_GetTopAttributeSet (
TQ3GeometryObject cylinder,
TQ3AttributeSet *topAttributeSet
);
Get the attribute set for the top cap of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. topAttributeSet Receives the attribute set for the top cap, or NULL.
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.
Result: Reference to a new Cylinder geometry object, or NULL on failure.
Name Description cylinderData Data describing a cylinder, or NULL.
TQ3Status
Q3Cylinder_SetBottomAttributeSet (
TQ3GeometryObject cylinder,
TQ3AttributeSet bottomAttributeSet
);
Set the attribute set for the bottom cap of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. bottomAttributeSet New attribute set for the bottom cap.
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.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. caps The end cap flags. See TQ3EndCapMasks, defined in Quesa.h, for values.
TQ3Status
Q3Cylinder_SetData (
TQ3GeometryObject cylinder,
const TQ3CylinderData *cylinderData
);
Modify a cylinder object by supplying all new data.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. cylinderData Data describing a cylinder.
TQ3Status
Q3Cylinder_SetFaceAttributeSet (
TQ3GeometryObject cylinder,
TQ3AttributeSet faceAttributeSet
);
Set the attribute set for the face of a cylinder object (i.e., neither end).
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. faceAttributeSet New attribute set for the face of the cylinder.
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.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. faceAttributeSet New attribute set for the interior of the cylinder.
TQ3Status
Q3Cylinder_SetMajorRadius (
TQ3GeometryObject cylinder,
const TQ3Vector3D *majorRadius
);
Change the major radius vector of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. majorRadius New major radius vector for the cylinder.
TQ3Status
Q3Cylinder_SetMinorRadius (
TQ3GeometryObject cylinder,
const TQ3Vector3D *minorRadius
);
Change the minor radius vector of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. minorRadius New minor radius vector for the cylinder.
TQ3Status
Q3Cylinder_SetOrientation (
TQ3GeometryObject cylinder,
const TQ3Vector3D *orientation
);
Change the orientation vector of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. orientation New orientation vector for the cylinder.
TQ3Status
Q3Cylinder_SetOrigin (
TQ3GeometryObject cylinder,
const TQ3Point3D *origin
);
Change the origin of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. origin New point of origin.
TQ3Status
Q3Cylinder_SetTopAttributeSet (
TQ3GeometryObject cylinder,
TQ3AttributeSet topAttributeSet
);
Set the attribute set for the top cap of a cylinder object.
Result: Success or failure of the operation.
Name Description cylinder A cylinder object. topAttributeSet New attribute set for the top cap.
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.
Result: Success or failure of the operation.
Name Description cylinderData Data describing a cylinder. view A view object.
TQ3Status
Q3Disk_EmptyData (
TQ3DiskData *diskData
);
Free memory allocated by Q3Disk_GetData.
Result: Success or failure of the operation.
Name Description diskData Data describing a disk object, previously obtained by 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.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. diskData Data describing a disk object.
TQ3Status
Q3Disk_GetMajorRadius (
TQ3GeometryObject disk,
TQ3Vector3D *majorRadius
);
Get the major radius vector of a disk object.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. majorRadius Receives the major radius vector of the disk.
TQ3Status
Q3Disk_GetMinorRadius (
TQ3GeometryObject disk,
TQ3Vector3D *minorRadius
);
Get the minor radius vector of a disk object.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. minorRadius Receives the minor radius vector of the disk.
TQ3Status
Q3Disk_GetOrigin (
TQ3GeometryObject disk,
TQ3Point3D *origin
);
Get the origin of a disk object.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. origin Receives the origin of the disk.
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.
Result: Reference to a new Disk geometry object, or NULL on failure.
Name Description diskData Data describing a disk object, or NULL.
TQ3Status
Q3Disk_SetData (
TQ3GeometryObject disk,
const TQ3DiskData *diskData
);
Modify a disk object by supplying a whole new set of data.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. diskData Data describing a disk object.
TQ3Status
Q3Disk_SetMajorRadius (
TQ3GeometryObject disk,
const TQ3Vector3D *majorRadius
);
Change the major radius vector of a disk object.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. majorRadius New major radius vector for the disk object.
TQ3Status
Q3Disk_SetMinorRadius (
TQ3GeometryObject disk,
const TQ3Vector3D *minorRadius
);
Change the minor radius vector of a disk object.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. minorRadius New minor radius vector for the disk object.
TQ3Status
Q3Disk_SetOrigin (
TQ3GeometryObject disk,
const TQ3Point3D *origin
);
Change the origin of a Disk object.
Result: Success or failure of the operation.
Name Description disk A disk geometry object. origin New origin for the disk.
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.
Result: Success or failure of the operation.
Name Description diskData Data describing a disk object. view A view object.
TQ3Status
Q3Ellipse_EmptyData (
TQ3EllipseData *ellipseData
);
Release memory allocated by Q3Ellipse_GetData.
Result: Success or failure of the operation.
Name Description ellipseData Data describing an ellipse, previously obtained with 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.
Result: Success or failure of the operation.
Name Description ellipse An ellipse object. ellipseData Receives data describing the ellipse object.
TQ3Status
Q3Ellipse_GetMajorRadius (
TQ3GeometryObject ellipse,
TQ3Vector3D *majorRadius
);
Get the major radius vector of an Ellipse object.
Result: Success or failure of the operation.
Name Description ellipse The Ellipse object. majorRadius Receives the major radius vector.
TQ3Status
Q3Ellipse_GetMinorRadius (
TQ3GeometryObject ellipse,
TQ3Vector3D *minorRadius
);
Get the minor radius vector of an Ellipse object.
Result: Success or failure of the operation.
Name Description ellipse The Ellipse object. minorRadius Receives the minor radius vector.
TQ3Status
Q3Ellipse_GetOrigin (
TQ3GeometryObject ellipse,
TQ3Point3D *origin
);
Get the origin of an Ellipse object.
Result: Success or failure of the operation.
Name Description ellipse The Ellipse object. origin Receives the origin.
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.
Result: Reference to a new Ellipse geometry object, or NULL on failure.
Name Description ellipseData Data describing an ellipse, or NULL.
TQ3Status
Q3Ellipse_SetData (
TQ3GeometryObject ellipse,
const TQ3EllipseData *ellipseData
);
Modify an ellipse object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description ellipse An ellipse object. ellipseData Data describing an ellipse.
TQ3Status
Q3Ellipse_SetMajorRadius (
TQ3GeometryObject ellipse,
const TQ3Vector3D *majorRadius
);
Change the major radius vector of an Ellipse object.
Result: Success or failure of the operation.
Name Description ellipse The Ellipse object. majorRadius New major radius vector.
TQ3Status
Q3Ellipse_SetMinorRadius (
TQ3GeometryObject ellipse,
const TQ3Vector3D *minorRadius
);
Change the minor radius vector of an Ellipse object.
Result: Success or failure of the operation.
Name Description ellipse The Ellipse object. minorRadius New minor radius vector.
TQ3Status
Q3Ellipse_SetOrigin (
TQ3GeometryObject ellipse,
const TQ3Point3D *origin
);
Change the origin of an ellipse object.
Result: Success or failure of the operation.
Name Description ellipse The ellipse object. origin The new origin.
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.
Result: Success or failure of the operation.
Name Description ellipseData Data describing an ellipse. view A view object.
TQ3Status
Q3Ellipsoid_EmptyData (
TQ3EllipsoidData *ellipsoidData
);
Release memory allocated by Q3Ellipsoid_GetData.
Result: Success or failure of the operation.
Name Description ellipsoidData Data describing an Ellipsoid, previously obtained with 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.
Result: Success or failure of the operation.
Name Description ellipsoid An ellipsoid object. ellipsoidData Receives data describing the ellipsoid object.
TQ3Status
Q3Ellipsoid_GetMajorRadius (
TQ3GeometryObject ellipsoid,
TQ3Vector3D *majorRadius
);
Get the major radius vector of an Ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid The Ellipsoid object. majorRadius Receives the major radius vector.
TQ3Status
Q3Ellipsoid_GetMinorRadius (
TQ3GeometryObject ellipsoid,
TQ3Vector3D *minorRadius
);
Get the minor radius vector of an Ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid The Ellipsoid object. minorRadius Receives the minor radius vector.
TQ3Status
Q3Ellipsoid_GetOrientation (
TQ3GeometryObject ellipsoid,
TQ3Vector3D *orientation
);
Get the orientation vector of an Ellipsoid.
Result: Success or failure of the operation.
Name Description ellipsoid An Ellipsoid object. orientation Receives the orientation vector of the Ellipsoid.
TQ3Status
Q3Ellipsoid_GetOrigin (
TQ3GeometryObject ellipsoid,
TQ3Point3D *origin
);
Get the origin of an Ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid The Ellipsoid object. origin Receives the origin.
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.
Result: Reference to a new Ellipsoid geometry object, or NULL on failure.
Name Description ellipsoidData Data describing an ellipsoid, or NULL.
TQ3Status
Q3Ellipsoid_SetData (
TQ3GeometryObject ellipsoid,
const TQ3EllipsoidData *ellipsoidData
);
Modify an ellipsoid object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description ellipsoid An ellipsoid object. ellipsoidData Data describing an ellipsoid.
TQ3Status
Q3Ellipsoid_SetMajorRadius (
TQ3GeometryObject ellipsoid,
const TQ3Vector3D *majorRadius
);
Change the major radius vector of an Ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid The Ellipsoid object. majorRadius New major radius vector.
TQ3Status
Q3Ellipsoid_SetMinorRadius (
TQ3GeometryObject ellipsoid,
const TQ3Vector3D *minorRadius
);
Change the minor radius vector of an Ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid The Ellipsoid object. minorRadius New minor radius vector.
TQ3Status
Q3Ellipsoid_SetOrientation (
TQ3GeometryObject ellipsoid,
const TQ3Vector3D *orientation
);
Change the orientation vector of an Ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid An Ellipsoid object. orientation New orientation vector for the Ellipsoid.
TQ3Status
Q3Ellipsoid_SetOrigin (
TQ3GeometryObject ellipsoid,
const TQ3Point3D *origin
);
Change the origin of an ellipsoid object.
Result: Success or failure of the operation.
Name Description ellipsoid The ellipsoid object. origin The new origin.
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.
Result: Success or failure of the operation.
Name Description ellipsoidData Data describing an ellipsoid. view A view object.
Macro to aid in iterating over edges of a component of a Mesh object.
Name Description _c The component. _e The edge. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over vertices of a component of a Mesh object.
Name Description _c The component. _v The vertex. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over edges of a contour of a Mesh object.
Name Description _h The contour. _e An edge of the contour. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over edges of a contour of a Mesh object.
Name Description _h The contour. _v An edge of the contour. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over vertices of a contour of a Mesh object.
Name Description _h The contour. _v A vertex of the contour. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over contours of a face of a Mesh object.
Name Description _f The face. _h A contour of the face. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over edges incident to a face of a Mesh object.
Name Description _f The face. _e An incident edge. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over faces adjacent to a face of a Mesh object.
Name Description _f The face. _n An incident face. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over vertices incident to a face of a Mesh object.
Name Description _f The face. _v An incident vertex. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over components of a Mesh object. Example:
TQ3MeshIterator iter; TQ3MeshComponent comp; Q3ForEachMeshComponent( myMesh, comp, &iter ) { DoSomething( comp ); }
Name Description _m The mesh object. _c The component. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over edges of a Mesh object.
Name Description _m The mesh. _e The edge. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over faces of a Mesh object.
Name Description _m The mesh. _f The face. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over vertices of a Mesh object.
Name Description _m The mesh. _v The vertex. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over edges incident to a vertex of a Mesh object.
Name Description _v The vertex. _e The edge. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over faces incident to a vertex of a Mesh object.
Name Description _v The vertex. _f An incident face. _i Address of a TQ3MeshIterator.
Macro to aid in iterating over vertices adjacent to a vertex of a Mesh object.
Name Description _v The vertex. _n An adjacent vertex. _i Address of a TQ3MeshIterator.
TQ3Status
Q3GeneralPolygon_EmptyData (
TQ3GeneralPolygonData *generalPolygonData
);
Release memory allocated by Q3GeneralPolygon_GetData.
Result: Success or failure of the operation.
Name Description generalPolygonData Data describing a General Polygon, previously obtained with 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.
Result: Success or failure of the operation.
Name Description polygon A general polygon object. generalPolygonData Receives data describing the general polygon object.
TQ3Status
Q3GeneralPolygon_GetShapeHint (
TQ3GeometryObject generalPolygon,
TQ3GeneralPolygonShapeHint *shapeHint
);
Get the shape hint of a general polygon.
Result: Success or failure of the operation.
Name Description generalPolygon A general polygon object. shapeHint Receives the shape hint.
TQ3Status
Q3GeneralPolygon_GetVertexAttributeSet (
TQ3GeometryObject generalPolygon,
TQ3Uns32 contourIndex,
TQ3Uns32 pointIndex,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a vertex of a general polygon.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3GeneralPolygon_GetVertexPosition (
TQ3GeometryObject generalPolygon,
TQ3Uns32 contourIndex,
TQ3Uns32 pointIndex,
TQ3Point3D *position
);
Get the 3D position of a vertex in a general polygon.
Result: Success or failure of the operation.
Name Description 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.
TQ3GeometryObject
Q3GeneralPolygon_New (
const TQ3GeneralPolygonData *generalPolygonData
);
Create a new general polygon geometry object.
Result: Reference to a new General Polygon geometry object, or NULL on failure.
Name Description generalPolygonData Data describing a general polygon.
TQ3Status
Q3GeneralPolygon_SetData (
TQ3GeometryObject generalPolygon,
const TQ3GeneralPolygonData *generalPolygonData
);
Modify a general polygon object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description generalPolygon A general polygon object. generalPolygonData Data describing a general polygon object.
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.
Result: Success or failure of the operation.
Name Description generalPolygon A general polygon object. shapeHint The shape hint.
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.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3GeneralPolygon_SetVertexPosition (
TQ3GeometryObject generalPolygon,
TQ3Uns32 contourIndex,
TQ3Uns32 pointIndex,
const TQ3Point3D *position
);
Set the 3D position of a vertex in a general polygon.
Result: Success or failure of the operation.
Name Description 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.
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.
Result: Success or failure of the operation.
Name Description generalPolygonData Data describing a general polygon. view A view object.
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().
Result: Success or failure of the operation.
Name Description geometry A reference to a geometry object. attributeSet Receives a reference to the attribute set of the geometry.
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.
Result: A new reference to a group or geometry object, or NULL.
Name Description geometry A geometry object. view A view object
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.
Result: A constant enumerating the type of 'geometry'.
Name Description geometry A reference to a geometry object.
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.
Result: Success or failure of the operation.
Name Description geometry A reference to a geometry object. attributeSet The attribute set to apply to the object.
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.
Result: Success or failure of the operation.
Name Description geometry A reference to a (retained) geometry object. view The view to submit the geometric object to.
TQ3Status
Q3Line_EmptyData (
TQ3LineData *lineData
);
Release memory allocated by Q3Line_GetData.
Result: Success or failure of the operation.
Name Description lineData Data describing a Line, previously obtained with 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.
Result: Success or failure of the operation.
Name Description line A Line object. lineData Receives data describing the Line object.
TQ3Status
Q3Line_GetVertexAttributeSet (
TQ3GeometryObject line,
TQ3Uns32 index,
TQ3AttributeSet *attributeSet
);
Get the attribute set of one of the ends of a line object.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3Line_GetVertexPosition (
TQ3GeometryObject line,
TQ3Uns32 index,
TQ3Point3D *position
);
Get the position of one of the ends of a line.
Result: Success or failure of the operation.
Name Description line A line object. index An index, 0 or 1, specifying an end of the line. position Receives the position of the vertex.
TQ3GeometryObject
Q3Line_New (
const TQ3LineData *lineData
);
Create a new line geometry object.
Result: Reference to a new Line geometry object, or NULL on failure.
Name Description lineData Data describing a line.
TQ3Status
Q3Line_SetData (
TQ3GeometryObject line,
const TQ3LineData *lineData
);
Modify a line object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description line A line object. lineData Data describing a line.
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.
Result: Success or failure of the operation.
Name Description line A line object. index An index, 0 or 1, specifying an end of the line. attributeSet The new attribute set.
TQ3Status
Q3Line_SetVertexPosition (
TQ3GeometryObject line,
TQ3Uns32 index,
const TQ3Point3D *position
);
Change the position of one of the ends of a line object.
Result: Success or failure of the operation.
Name Description line A line object. index An index, 0 or 1, specifying an end of the line. position New position of the vertex.
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.
Result: Success or failure of the operation.
Name Description lineData Data describing a line. view A view object.
TQ3Status
Q3Marker_EmptyData (
TQ3MarkerData *markerData
);
Release memory allocated by Q3Marker_GetData.
Result: Success or failure of the operation.
Name Description markerData Data describing a Marker, previously obtained with Q3Marker_GetData.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. bitmap Receives a copy of the bitmap of the marker.
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.
Result: Success or failure of the operation.
Name Description geometry A Marker object. markerData Receives data describing the Marker object.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. location Receives the location of the marker object.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. xOffset Receives the horizontal offset in pixels.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. yOffset Receives the vertical offset in pixels.
TQ3GeometryObject
Q3Marker_New (
const TQ3MarkerData *markerData
);
Create a new marker geometry object.
Result: Reference to a new Marker geometry object, or NULL on failure.
Name Description markerData Data describing a marker.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. bitmap New bitmap to be used by the marker.
TQ3Status
Q3Marker_SetData (
TQ3GeometryObject geometry,
const TQ3MarkerData *markerData
);
Modify a marker object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description geometry A marker object. markerData Data describing a marker.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. location New location of the marker object.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. xOffset New horizontal offset in pixels.
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.
Result: Success or failure of the operation.
Name Description marker A marker object. yOffset New vertical offset in pixels.
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.
Result: Success or failure of the operation.
Name Description markerData Data describing a marker. view A view object.
TQ3MeshFace
Q3Mesh_ContourToFace (
TQ3GeometryObject mesh,
TQ3MeshContour contour
);
Convert a mesh face to a contour.
Result: The new mesh face.
Name Description mesh The mesh to update. contour The contour to convert to a face.
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.
Result: Success or failure of the operation.
Name Description mesh The mesh to delay updates on.
TQ3Status
Q3Mesh_EmptyData (
TQ3MeshData *meshData
);
Releases the memory allocated by a prior call to Q3Mesh_GetData.
This function is not available in QD3D.
Result: Success or failure of the operation.
Name Description meshData A pointer to the mesh data allocated by Q3Mesh_GetData().
TQ3Status
Q3Mesh_FaceDelete (
TQ3GeometryObject mesh,
TQ3MeshFace face
);
Delete a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to remove the face from. face The mesh face to delete.
TQ3MeshFace
Q3Mesh_FaceNew (
TQ3GeometryObject mesh,
TQ3Uns32 numVertices,
const TQ3MeshVertex *vertices,
TQ3AttributeSet attributeSet
);
Create a new mesh face.
Result: The new mesh face.
Name Description 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.
TQ3MeshContour
Q3Mesh_FaceToContour (
TQ3GeometryObject mesh,
TQ3MeshFace containerFace,
TQ3MeshFace face
);
Convert a mesh face to a contour.
Result: The new mesh contour.
Name Description mesh The mesh to update. containerFace The face containing the face which will be converted. face The face to convert to a contour.
TQ3MeshEdge
Q3Mesh_FirstComponentEdge (
TQ3MeshComponent component,
TQ3MeshIterator *iterator
);
Get the first edge in a mesh component.
Result: The first edge in the component.
Name Description component The component to query. iterator Receives the mesh iterator.
TQ3MeshVertex
Q3Mesh_FirstComponentVertex (
TQ3MeshComponent component,
TQ3MeshIterator *iterator
);
Get the first vertex in a mesh component.
Result: The first vertex in the component.
Name Description component The component to query. iterator Receives the mesh iterator.
TQ3MeshEdge
Q3Mesh_FirstContourEdge (
TQ3MeshContour contour,
TQ3MeshIterator *iterator
);
Get the first edge in a mesh contour.
Result: The first edge in the contour.
Name Description contour The contour to query. iterator Receives the mesh iterator.
TQ3MeshFace
Q3Mesh_FirstContourFace (
TQ3MeshContour contour,
TQ3MeshIterator *iterator
);
Get the first face in a mesh contour.
Result: The first face in the contour.
Name Description contour The contour to query. iterator Receives the mesh iterator.
TQ3MeshVertex
Q3Mesh_FirstContourVertex (
TQ3MeshContour contour,
TQ3MeshIterator *iterator
);
Get the first vertex in a mesh contour.
Result: The first vertex in the contour.
Name Description contour The contour to query. iterator Receives the mesh iterator.
TQ3MeshContour
Q3Mesh_FirstFaceContour (
TQ3MeshFace face,
TQ3MeshIterator *iterator
);
Get the first contour in a mesh face.
Result: The first contour in the face.
Name Description face The face to query. iterator Receives the mesh iterator.
TQ3MeshEdge
Q3Mesh_FirstFaceEdge (
TQ3MeshFace face,
TQ3MeshIterator *iterator
);
Get the first edge in a mesh face.
Result: The first edge in the face.
Name Description face The face to query. iterator Receives the mesh iterator.
TQ3MeshFace
Q3Mesh_FirstFaceFace (
TQ3MeshFace face,
TQ3MeshIterator *iterator
);
Get the first face in a mesh face.
Result: The first face in the face.
Name Description face The face to query. iterator Receives the mesh iterator.
TQ3MeshVertex
Q3Mesh_FirstFaceVertex (
TQ3MeshFace face,
TQ3MeshIterator *iterator
);
Get the first vertex in a mesh face.
Result: The first vertex in the face.
Name Description face The face to query. iterator Receives the mesh iterator.
TQ3MeshComponent
Q3Mesh_FirstMeshComponent (
TQ3GeometryObject mesh,
TQ3MeshIterator *iterator
);
Get the first component in a mesh.
Result: The first component in the mesh.
Name Description mesh The mesh to query. iterator Receives the mesh iterator.
TQ3MeshEdge
Q3Mesh_FirstMeshEdge (
TQ3GeometryObject mesh,
TQ3MeshIterator *iterator
);
Get the first edge in a mesh.
Result: The first edge in the mesh.
Name Description mesh The mesh to query. iterator Receives the mesh iterator.
TQ3MeshFace
Q3Mesh_FirstMeshFace (
TQ3GeometryObject mesh,
TQ3MeshIterator *iterator
);
Get the first face in a mesh.
Result: The first face in the mesh.
Name Description mesh The mesh to query. iterator Receives the mesh iterator.
TQ3MeshVertex
Q3Mesh_FirstMeshVertex (
TQ3GeometryObject mesh,
TQ3MeshIterator *iterator
);
Get the first vertex in a mesh.
Result: The first vertex in the mesh.
Name Description mesh The mesh to query. iterator Receives the mesh iterator.
TQ3MeshEdge
Q3Mesh_FirstVertexEdge (
TQ3MeshVertex vertex,
TQ3MeshIterator *iterator
);
Get the first edge in a mesh vertex.
Result: The first edge in the vertex.
Name Description vertex The vertex to query. iterator Receives the mesh iterator.
TQ3MeshFace
Q3Mesh_FirstVertexFace (
TQ3MeshVertex vertex,
TQ3MeshIterator *iterator
);
Get the first face in a mesh vertex.
Result: The first face in the vertex.
Name Description vertex The vertex to query. iterator Receives the mesh iterator.
TQ3MeshVertex
Q3Mesh_FirstVertexVertex (
TQ3MeshVertex vertex,
TQ3MeshIterator *iterator
);
Get the first vertex in a mesh vertex.
Result: The first vertex in the vertex.
Name Description vertex The vertex to query. iterator Receives the mesh iterator.
TQ3Status
Q3Mesh_GetComponentBoundingBox (
TQ3GeometryObject mesh,
TQ3MeshComponent component,
TQ3BoundingBox *boundingBox
);
Get the bounding box of a mesh component
Result: Success or failure of the operation.
Name Description mesh The mesh to query. component The component to query. boundingBox Receives the bounding box of the component.
TQ3Status
Q3Mesh_GetComponentNumEdges (
TQ3GeometryObject mesh,
TQ3MeshComponent component,
TQ3Uns32 *numEdges
);
Get the number of edges in a mesh component
Result: Success or failure of the operation.
Name Description mesh The mesh to query. component The component to query. numEdges Receives the number of edges in the component.
TQ3Status
Q3Mesh_GetComponentNumVertices (
TQ3GeometryObject mesh,
TQ3MeshComponent component,
TQ3Uns32 *numVertices
);
Get the number of vertices in a mesh component
Result: Success or failure of the operation.
Name Description mesh The mesh to query. component The component to query. numVertices Receives the number of vertices in the component.
TQ3Status
Q3Mesh_GetComponentOrientable (
TQ3GeometryObject mesh,
TQ3MeshComponent component,
TQ3Boolean *orientable
);
Get the orientable state of a mesh component
Result: Success or failure of the operation.
Name Description mesh The mesh to query. component The component to query. orientable Receives the orientable state of the component.
TQ3Status
Q3Mesh_GetContourFace (
TQ3GeometryObject mesh,
TQ3MeshContour contour,
TQ3MeshFace *face
);
Get the face of a mesh contour.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. contour The contour to query. face Receives the face of the mesh contour.
TQ3Status
Q3Mesh_GetContourNumVertices (
TQ3GeometryObject mesh,
TQ3MeshContour contour,
TQ3Uns32 *numVertices
);
Get the number of vertices in a mesh contour.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. contour The contour to query. numVertices Receives the number of vertices in the mesh contour.
TQ3Status
Q3Mesh_GetCornerAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3MeshFace face,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a mesh corner.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. vertex The vertex to query. face The face to query. attributeSet Receives the attribute set of the mesh corner.
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.
Result: Success or failure of the operation.
Name Description mesh A reference to a mesh geometry object. meshData Receives the mesh object's description.
TQ3Status
Q3Mesh_GetEdgeAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshEdge edge,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a mesh edge.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. edge The edge to query. attributeSet Receives the attribute set of the mesh edge.
TQ3Status
Q3Mesh_GetEdgeComponent (
TQ3GeometryObject mesh,
TQ3MeshEdge edge,
TQ3MeshComponent *component
);
Get the component of a mesh edge.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. edge The edge to query. component Receives the component of the mesh edge.
TQ3Status
Q3Mesh_GetEdgeFaces (
TQ3GeometryObject mesh,
TQ3MeshEdge edge,
TQ3MeshFace *face1,
TQ3MeshFace *face2
);
Get the faces of a mesh edge.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3Mesh_GetEdgeOnBoundary (
TQ3GeometryObject mesh,
TQ3MeshEdge edge,
TQ3Boolean *onBoundary
);
Get the boundary state of a mesh edge.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. edge The edge to query. onBoundary Receives the boundary state of the mesh edge.
TQ3Status
Q3Mesh_GetEdgeVertices (
TQ3GeometryObject mesh,
TQ3MeshEdge edge,
TQ3MeshVertex *vertex1,
TQ3MeshVertex *vertex2
);
Get the vertices of a mesh edge.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3Mesh_GetFaceAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. face The face to query. attributeSet Receives the attribute set of the mesh face.
TQ3Status
Q3Mesh_GetFaceComponent (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3MeshComponent *component
);
Get the component of a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. face The face to query. component Receives the component of the mesh face.
TQ3Status
Q3Mesh_GetFaceIndex (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3Uns32 *index
);
Get the index of a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. face The face to query. index Receives the index of the mesh face.
TQ3Status
Q3Mesh_GetFaceNumContours (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3Uns32 *numContours
);
Get the number of contours of a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. face The face to query. numContours Receives the number of contours of the mesh face.
TQ3Status
Q3Mesh_GetFaceNumVertices (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3Uns32 *numVertices
);
Get the number of vertices in a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. face The face to query. numVertices Receives the number of vertices in the mesh face.
TQ3Status
Q3Mesh_GetFacePlaneEquation (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3PlaneEquation *planeEquation
);
Get the plane equation of a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. face The face to query. planeEquation Receives the plane equation of the mesh face.
TQ3Status
Q3Mesh_GetNumComponents (
TQ3GeometryObject mesh,
TQ3Uns32 *numComponents
);
Get the number of components of a mesh.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. numComponents Receives the number of components of the mesh.
TQ3Status
Q3Mesh_GetNumCorners (
TQ3GeometryObject mesh,
TQ3Uns32 *numCorners
);
Get the number of corners in a mesh
Result: Success or failure of the operation.
Name Description mesh The mesh to query. numCorners Receives the number of corners in the mesh.
TQ3Status
Q3Mesh_GetNumEdges (
TQ3GeometryObject mesh,
TQ3Uns32 *numEdges
);
Get the number of edges in a mesh
Result: Success or failure of the operation.
Name Description mesh The mesh to query. numEdges Receives the number of edges in the mesh.
TQ3Status
Q3Mesh_GetNumFaces (
TQ3GeometryObject mesh,
TQ3Uns32 *numFaces
);
Get the number of faces in a mesh
Result: Success or failure of the operation.
Name Description mesh The mesh to query. numFaces Receives the number of faces in the mesh.
TQ3Status
Q3Mesh_GetNumVertices (
TQ3GeometryObject mesh,
TQ3Uns32 *numVertices
);
Get the number of vertices in a mesh
Result: Success or failure of the operation.
Name Description mesh The mesh to query. numVertices Receives the number of vertices in the mesh.
TQ3Status
Q3Mesh_GetOrientable (
TQ3GeometryObject mesh,
TQ3Boolean *orientable
);
Get the mesh orientable state
Result: Success or failure of the operation.
Name Description mesh The mesh to query. orientable Receives the mesh orientable state.
TQ3Status
Q3Mesh_GetVertexAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a mesh vertex.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. vertex The vertex to query. attributeSet Receives the attribute set of the mesh vertex.
TQ3Status
Q3Mesh_GetVertexComponent (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3MeshComponent *component
);
Get the component of a mesh vertex.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. vertex The vertex to query. component Receives the component of the mesh vertex.
TQ3Status
Q3Mesh_GetVertexCoordinates (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3Point3D *coordinates
);
Get the coordinates of a mesh vertex.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. vertex The vertex to query. coordinates Receives the coordinates of the vertex.
TQ3Status
Q3Mesh_GetVertexIndex (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3Uns32 *index
);
Get the index of a mesh vertex.
Result: Success or failure of the operation.
Name Description mesh The mesh to query. vertex The vertex to query. index Receives the index of the vertex.
TQ3Status
Q3Mesh_GetVertexOnBoundary (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3Boolean *onBoundary
);
Get the boundary state for a mesh vertex
Result: Success or failure of the operation.
Name Description mesh The mesh to query. vertex The vertex to query. onBoundary Receives the vertex boundary state.
TQ3GeometryObject
Q3Mesh_New (
void
);
Create a new empty Mesh geometry object.
TQ3MeshEdge
Q3Mesh_NextComponentEdge (
TQ3MeshIterator *iterator
);
Get the next edge in a mesh component.
Result: The next edge in the component.
Name Description iterator The mesh iterator.
TQ3MeshVertex
Q3Mesh_NextComponentVertex (
TQ3MeshIterator *iterator
);
Get the next vertex in a mesh component.
Result: The next vertex in the component.
Name Description iterator The mesh iterator.
TQ3MeshEdge
Q3Mesh_NextContourEdge (
TQ3MeshIterator *iterator
);
Get the next edge in a mesh contour.
Result: The next edge in the contour.
Name Description iterator The mesh iterator.
TQ3MeshFace
Q3Mesh_NextContourFace (
TQ3MeshIterator *iterator
);
Get the next face in a mesh contour.
Result: The next face in the contour.
Name Description iterator The mesh iterator.
TQ3MeshVertex
Q3Mesh_NextContourVertex (
TQ3MeshIterator *iterator
);
Get the next vertex in a mesh contour.
Result: The next vertex in the contour.
Name Description iterator The mesh iterator.
TQ3MeshContour
Q3Mesh_NextFaceContour (
TQ3MeshIterator *iterator
);
Get the next contour in a mesh face.
Result: The next contour in the face.
Name Description iterator The mesh iterator.
TQ3MeshEdge
Q3Mesh_NextFaceEdge (
TQ3MeshIterator *iterator
);
Get the next edge in a mesh face.
Result: The next edge in the face.
Name Description iterator The mesh iterator.
TQ3MeshFace
Q3Mesh_NextFaceFace (
TQ3MeshIterator *iterator
);
Get the next face in a mesh face.
Result: The next face in the face.
Name Description iterator The mesh iterator.
TQ3MeshVertex
Q3Mesh_NextFaceVertex (
TQ3MeshIterator *iterator
);
Get the next vertex in a mesh face.
Result: The next vertex in the face.
Name Description iterator The mesh iterator.
TQ3MeshComponent
Q3Mesh_NextMeshComponent (
TQ3MeshIterator *iterator
);
Get the next component in a mesh.
Result: The next component in the mesh.
Name Description iterator The mesh iterator.
TQ3MeshEdge
Q3Mesh_NextMeshEdge (
TQ3MeshIterator *iterator
);
Get the next edge in a mesh.
Result: The next edge in the mesh.
Name Description iterator The mesh iterator.
TQ3MeshFace
Q3Mesh_NextMeshFace (
TQ3MeshIterator *iterator
);
Get the next face in a mesh.
Result: The next face in the mesh.
Name Description iterator The mesh iterator.
TQ3MeshVertex
Q3Mesh_NextMeshVertex (
TQ3MeshIterator *iterator
);
Get the next vertex in a mesh.
Result: The next vertex in the mesh.
Name Description iterator The mesh iterator.
TQ3MeshEdge
Q3Mesh_NextVertexEdge (
TQ3MeshIterator *iterator
);
Get the next edge in a mesh vertex.
Result: The next edge in the vertex.
Name Description iterator The mesh iterator.
TQ3MeshFace
Q3Mesh_NextVertexFace (
TQ3MeshIterator *iterator
);
Get the next face in a mesh vertex.
Result: The next face in the vertex.
Name Description iterator The mesh iterator.
TQ3MeshVertex
Q3Mesh_NextVertexVertex (
TQ3MeshIterator *iterator
);
Get the next vertex in a mesh vertex.
Result: The next vertex in the vertex.
Name Description iterator The mesh iterator.
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.
Result: Success or failure of the operation.
Name Description mesh The mesh to resume updatse for.
TQ3Status
Q3Mesh_SetCornerAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3MeshFace face,
TQ3AttributeSet attributeSet
);
Set the attribute set for a mesh corner.
Result: Success or failure of the operation.
Name Description mesh The mesh to update. vertex The vertex to update. face The face to update. attributeSet The new attribute set for the mesh corner.
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.
Result: Success or failure of the operation.
Name Description mesh A reference to a mesh geometry object. meshData A pointer to the mesh data to apply to the mesh object.
TQ3Status
Q3Mesh_SetEdgeAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshEdge edge,
TQ3AttributeSet attributeSet
);
Set the attribute set for a mesh edge.
Result: Success or failure of the operation.
Name Description mesh The mesh to update. edge The edge to update. attributeSet The new attribute set for the mesh edge.
TQ3Status
Q3Mesh_SetFaceAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshFace face,
TQ3AttributeSet attributeSet
);
Set the attribute set of a mesh face.
Result: Success or failure of the operation.
Name Description mesh The mesh to update. face The face to update. attributeSet The new attribute set for the mesh face.
TQ3Status
Q3Mesh_SetVertexAttributeSet (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
TQ3AttributeSet attributeSet
);
Set the attribute set of a mesh vertex
Result: Success or failure of the operation.
Name Description mesh The mesh to udate. vertex The vertex to update. attributeSet The new attribute set for the mesh vertex.
TQ3Status
Q3Mesh_SetVertexCoordinates (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex,
const TQ3Point3D *coordinates
);
Set the coordinates of a mesh vertex.
Result: Success or failure of the operation.
Name Description mesh The mesh to update. vertex The vertex to update. coordinates The new coordinates for the mesh vertex.
TQ3Status
Q3Mesh_VertexDelete (
TQ3GeometryObject mesh,
TQ3MeshVertex vertex
);
Delete a mesh vertex.
Result: Success or failure of the operation.
Name Description mesh The mesh to remove the vertex from. vertex The mesh vertex to delete.
TQ3MeshVertex
Q3Mesh_VertexNew (
TQ3GeometryObject mesh,
const TQ3Vertex3D *vertex
);
Create a new mesh vertex.
Result: The new mesh vertex.
Name Description mesh The mesh to create the vertex within. vertex The data for the vertex.
TQ3Status
Q3NURBCurve_EmptyData (
TQ3NURBCurveData *nurbCurveData
);
Release memory allocated by Q3NURBCurve_GetData.
Result: Success or failure of the operation.
Name Description nurbCurveData Data describing a NURB Curve, previously obtained with Q3NURBCurve_GetData.
TQ3Status
Q3NURBCurve_GetControlPoint (
TQ3GeometryObject curve,
TQ3Uns32 pointIndex,
TQ3RationalPoint4D *point4D
);
Get a control point from a NURB curve.
Result: Success or failure of the operation.
Name Description curve The NURB curve to query. pointIndex The index of the point to query. point4D Receives the control point value.
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.
Result: Success or failure of the operation.
Name Description curve A NURB Curve object. nurbCurveData Receives data describing the NURB Curve object.
TQ3Status
Q3NURBCurve_GetKnot (
TQ3GeometryObject curve,
TQ3Uns32 knotIndex,
float *knotValue
);
Get a knot from a NURB curve.
Result: Success or failure of the operation.
Name Description curve The NURB curve to query. knotIndex The index of the knot to query. knotValue Receives the knot value.
TQ3GeometryObject
Q3NURBCurve_New (
const TQ3NURBCurveData *curveData
);
Create a new NURB curve geometry object.
Result: Reference to a new NURB curve geometry object, or NULL on failure.
Name Description curveData Data describing a NURB curve.
TQ3Status
Q3NURBCurve_SetControlPoint (
TQ3GeometryObject curve,
TQ3Uns32 pointIndex,
const TQ3RationalPoint4D *point4D
);
Set a control point for a NURB curve.
Result: Success or failure of the operation.
Name Description curve The NURB curve to update. pointIndex The index of the point to update. point4D The new control point value.
TQ3Status
Q3NURBCurve_SetData (
TQ3GeometryObject curve,
const TQ3NURBCurveData *nurbCurveData
);
Modify a NURB curve object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description curve A NURB curve object. nurbCurveData Data describing a NURB curve object.
TQ3Status
Q3NURBCurve_SetKnot (
TQ3GeometryObject curve,
TQ3Uns32 knotIndex,
float knotValue
);
Set a knot for a NURB curve.
Result: Success or failure of the operation.
Name Description curve The NURB curve to update. knotIndex The index of the knot to update. knotValue The new knot value.
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.
Result: Success or failure of the operation.
Name Description curveData Data describing a NURB curve. view A view object.
TQ3Status
Q3NURBPatch_EmptyData (
TQ3NURBPatchData *nurbPatchData
);
Release memory allocated by Q3NURBPatch_GetData.
Result: Success or failure of the operation.
Name Description nurbPatchData Data describing a NURB Patch, previously obtained with Q3NURBPatch_GetData.
TQ3Status
Q3NURBPatch_GetControlPoint (
TQ3GeometryObject nurbPatch,
TQ3Uns32 rowIndex,
TQ3Uns32 columnIndex,
TQ3RationalPoint4D *point4D
);
Get a control point for a NURB patch.
Result: Success or failure of the operation.
Name Description 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.
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.
Result: Success or failure of the operation.
Name Description nurbPatch A NURB Patch object. nurbPatchData Receives data describing the NURB Patch object.
TQ3Status
Q3NURBPatch_GetUKnot (
TQ3GeometryObject nurbPatch,
TQ3Uns32 knotIndex,
float *knotValue
);
Get a U knot from a NURB patch.
Result: Success or failure of the operation.
Name Description nurbPatch The NURB patch to query. knotIndex The index of the knot to query. knotValue Rceives the knot value.
TQ3Status
Q3NURBPatch_GetVKnot (
TQ3GeometryObject nurbPatch,
TQ3Uns32 knotIndex,
float *knotValue
);
Get a V knot from a NURB patch.
Result: Success or failure of the operation.
Name Description nurbPatch The NURB patch to query. knotIndex The index of the knot to query. knotValue Rceives the knot value.
TQ3GeometryObject
Q3NURBPatch_New (
const TQ3NURBPatchData *nurbPatchData
);
Create a new NURB patch geometry object.
Result: Reference to a new NURB patch geometry object, or NULL on failure.
Name Description nurbPatchData Data describing a NURB patch.
TQ3Status
Q3NURBPatch_SetControlPoint (
TQ3GeometryObject nurbPatch,
TQ3Uns32 rowIndex,
TQ3Uns32 columnIndex,
const TQ3RationalPoint4D *point4D
);
Set a control point for a NURB patch.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3NURBPatch_SetData (
TQ3GeometryObject nurbPatch,
const TQ3NURBPatchData *nurbPatchData
);
Modify a NURB patch object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description nurbPatch A NURB patch object. nurbPatchData Data describing a NURB patch object.
TQ3Status
Q3NURBPatch_SetUKnot (
TQ3GeometryObject nurbPatch,
TQ3Uns32 knotIndex,
float knotValue
);
Set a U knot for a NURB patch.
Result: Success or failure of the operation.
Name Description nurbPatch The NURB patch to update. knotIndex The index of the knot to update. knotValue The new value for the knot.
TQ3Status
Q3NURBPatch_SetVKnot (
TQ3GeometryObject nurbPatch,
TQ3Uns32 knotIndex,
float knotValue
);
Set a K knot for a NURB patch.
Result: Success or failure of the operation.
Name Description nurbPatch The NURB patch to update. knotIndex The index of the knot to update. knotValue The new value for the knot.
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.
Result: Success or failure of the operation.
Name Description nurbPatchData Data describing a NURB patch. view A view object.
TQ3Status
Q3PixmapMarker_EmptyData (
TQ3PixmapMarkerData *pixmapMarkerData
);
Release memory allocated by Q3PixmapMarker_GetData.
Result: Success or failure of the operation.
Name Description pixmapMarkerData Data describing a Pixmap Marker, previously obtained with 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.
Result: Success or failure of the operation.
Name Description geometry A Pixmap Marker object. pixmapMarkerData Receives data describing the Pixmap Marker object.
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.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. pixmap Receives the pixmap structure of the marker.
TQ3Status
Q3PixmapMarker_GetPosition (
TQ3GeometryObject pixmapMarker,
TQ3Point3D *position
);
Get the position of the pixmap marker in world coordinates.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. position Receives the position of the pixmap marker.
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.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. xOffset Receives the horizontal offset of the marker in pixels.
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.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. yOffset Receives the vertical offset of the marker in pixels.
TQ3GeometryObject
Q3PixmapMarker_New (
const TQ3PixmapMarkerData *pixmapMarkerData
);
Create a new pixmap marker geometry object.
Result: Reference to a new pixmap marker geometry object, or NULL on failure.
Name Description pixmapMarkerData Data describing a pixmap marker.
TQ3Status
Q3PixmapMarker_SetData (
TQ3GeometryObject geometry,
const TQ3PixmapMarkerData *pixmapMarkerData
);
Modify a pixmap marker object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description geometry A pixmap marker object. pixmapMarkerData Data describing a pixmap marker object.
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.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. pixmap New pixmap to be used by the marker.
TQ3Status
Q3PixmapMarker_SetPosition (
TQ3GeometryObject pixmapMarker,
const TQ3Point3D *position
);
Change the position of a pixmap marker object.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. position New position of the pixmap marker in world coordinates.
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.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. xOffset The horizontal offset of the marker in pixels.
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.
Result: Success or failure of the operation.
Name Description pixmapMarker A pixmap marker object. yOffset The vertical offset of the marker in pixels.
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.
Result: Success or failure of the operation.
Name Description pixmapMarkerData Data describing a pixmap marker. view A view object.
TQ3Status
Q3Point_EmptyData (
TQ3PointData *pointData
);
Release memory allocated by Q3Point_GetData.
Result: Success or failure of the operation.
Name Description pointData Data describing a Point, previously obtained with 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.
Result: Success or failure of the operation.
Name Description point A Point object. pointData Receives data describing the Point object.
TQ3Status
Q3Point_GetPosition (
TQ3GeometryObject point,
TQ3Point3D *position
);
Get the position of a point object.
Result: Success or failure of the operation.
Name Description point A point object. position Receives the position of the point.
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.
Result: Reference to a new Point geometry object, or NULL on failure.
Name Description pointData Data describing a point, or NULL.
TQ3Status
Q3Point_SetData (
TQ3GeometryObject point,
const TQ3PointData *pointData
);
Modify a point object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description point A point object pointData Data describing a point object.
TQ3Status
Q3Point_SetPosition (
TQ3GeometryObject point,
const TQ3Point3D *position
);
Change the position of a point object.
Result: Success or failure of the operation.
Name Description point A point object. position New position for the point.
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.
Result: Success or failure of the operation.
Name Description pointData Data describing a point. view A view object.
TQ3Status
Q3PolyLine_EmptyData (
TQ3PolyLineData *polyLineData
);
Release memory allocated by Q3PolyLine_GetData.
Result: Success or failure of the operation.
Name Description polyLineData Data describing a PolyLine, previously obtained with 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.
Result: Success or failure of the operation.
Name Description polyLine A PolyLine object. polyLineData Receives data describing the PolyLine object.
TQ3Status
Q3PolyLine_GetSegmentAttributeSet (
TQ3GeometryObject polyLine,
TQ3Uns32 index,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a polyline segment.
Result: Success or failure of the operation.
Name Description polyLine The polyline to query. index The index of the segment to query. attributeSet Receives the attribute set of the polyline segment.
TQ3Status
Q3PolyLine_GetVertexAttributeSet (
TQ3GeometryObject polyLine,
TQ3Uns32 index,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a polyline vertex.
Result: Success or failure of the operation.
Name Description polyLine The polyline to query. index The index of the vertex to query. attributeSet Receives the attribute set of the polyline vertex.
TQ3Status
Q3PolyLine_GetVertexPosition (
TQ3GeometryObject polyLine,
TQ3Uns32 index,
TQ3Point3D *position
);
Get the position of a polyline vertex.
Result: Success or failure of the operation.
Name Description polyLine The polyline to query. index The index of the vertex to query. position Receives the position of the polyline vertex.
TQ3GeometryObject
Q3PolyLine_New (
const TQ3PolyLineData *polylineData
);
Create a new polyline geometry object.
Result: Reference to a new Polyline geometry object, or NULL on failure.
Name Description polylineData Data describing a polyline.
TQ3Status
Q3PolyLine_SetData (
TQ3GeometryObject polyLine,
const TQ3PolyLineData *polyLineData
);
Modify a PolyLine object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description polyLine A PolyLine object. polyLineData Data describing a PolyLine.
TQ3Status
Q3PolyLine_SetSegmentAttributeSet (
TQ3GeometryObject polyLine,
TQ3Uns32 index,
TQ3AttributeSet attributeSet
);
Set the attribute set of a polyline segment.
Result: Success or failure of the operation.
Name Description polyLine The polyline to update. index The index of the segment to update. attributeSet The new attribute set for the polyline segment.
TQ3Status
Q3PolyLine_SetVertexAttributeSet (
TQ3GeometryObject polyLine,
TQ3Uns32 index,
TQ3AttributeSet attributeSet
);
Set the attribute set of a polyline vertex.
Result: Success or failure of the operation.
Name Description polyLine The polyline to update. index The index of the vertex to update. attributeSet The new attribute set for the polyline vertex.
TQ3Status
Q3PolyLine_SetVertexPosition (
TQ3GeometryObject polyLine,
TQ3Uns32 index,
const TQ3Point3D *position
);
Set the position of a polyline vertex.
Result: Success or failure of the operation.
Name Description polyLine The polyline to update. index The index of the vertex to update. position The new position for the polyline vertex.
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.
Result: Success or failure of the operation.
Name Description polyLineData Data describing a PolyLine. view A view object.
TQ3Status
Q3Polygon_EmptyData (
TQ3PolygonData *polygonData
);
Release memory allocated by Q3Polygon_GetData.
Result: Success or failure of the operation.
Name Description polygonData Data describing a Polygon, previously obtained with 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.
Result: Success or failure of the operation.
Name Description polygon A Polygon object. polygonData Receives data describing the Polygon object.
TQ3Status
Q3Polygon_GetVertexAttributeSet (
TQ3GeometryObject polygon,
TQ3Uns32 index,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a vertex in a polygon object.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3Polygon_GetVertexPosition (
TQ3GeometryObject polygon,
TQ3Uns32 index,
TQ3Point3D *point
);
Get the 3D position of a vertex of a polygon object.
Result: Success or failure of the operation.
Name Description polygon A polygon object. index A 0-based index into the array of vertices of the polygon. point Receives the position of the vertex.
TQ3GeometryObject
Q3Polygon_New (
const TQ3PolygonData *polygonData
);
Create a new polygon geometry object.
Result: Reference to a new Polygon geometry object, or NULL on failure.
Name Description polygonData Data describing a polygon.
TQ3Status
Q3Polygon_SetData (
TQ3GeometryObject polygon,
const TQ3PolygonData *polygonData
);
Modify a polygon object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description polygon A polygon object. polygonData Data describing a polygon.
TQ3Status
Q3Polygon_SetVertexAttributeSet (
TQ3GeometryObject polygon,
TQ3Uns32 index,
TQ3AttributeSet attributeSet
);
Change the attribute set of a vertex in a polygon object.
Result: Success or failure of the operation.
Name Description polygon A polygon object. index A 0-based index into the array of vertices of the polygon. attributeSet New attribute set for the vertex.
TQ3Status
Q3Polygon_SetVertexPosition (
TQ3GeometryObject polygon,
TQ3Uns32 index,
const TQ3Point3D *point
);
Change the 3D position of a vertex of a polygon object.
Result: Success or failure of the operation.
Name Description polygon A polygon object. index A 0-based index into the array of vertices of the polygon. point New position of the vertex.
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.
Result: Success or failure of the operation.
Name Description polygonData Data describing a polygon. view A view object.
TQ3Status
Q3Polyhedron_EmptyData (
TQ3PolyhedronData *polyhedronData
);
Release memory allocated by Q3Polyhedron_GetData.
Result: Success or failure of the operation.
Name Description polyhedronData Data describing a Polyhedron, previously obtained with 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.
Result: Success or failure of the operation.
Name Description polyhedron A Polyhedron object. polyhedronData Receives data describing the Polyhedron object.
TQ3Status
Q3Polyhedron_GetEdgeData (
TQ3GeometryObject polyhedron,
TQ3Uns32 edgeIndex,
TQ3PolyhedronEdgeData *edgeData
);
Get the data of a polyhedron edge.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to query. edgeIndex The index of the edge to query. edgeData Receives the data of the edge.
TQ3Status
Q3Polyhedron_GetTriangleData (
TQ3GeometryObject polyhedron,
TQ3Uns32 triangleIndex,
TQ3PolyhedronTriangleData *triangleData
);
Get the data of a polyhedron triangle.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to query. triangleIndex The index of the triangle to query. triangleData Receives the data of the triangle.
TQ3Status
Q3Polyhedron_GetVertexAttributeSet (
TQ3GeometryObject polyhedron,
TQ3Uns32 index,
TQ3AttributeSet *attributeSet
);
Get the position of a polyhedron vertex.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to query. index The index of the vertex to query. attributeSet Receives the attribute set of the vertex.
TQ3Status
Q3Polyhedron_GetVertexPosition (
TQ3GeometryObject polyhedron,
TQ3Uns32 index,
TQ3Point3D *point
);
Get the position of a polyhedron vertex.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to query. index The index of the vertex to query. point Receives the position of the vertex.
TQ3GeometryObject
Q3Polyhedron_New (
const TQ3PolyhedronData *polyhedronData
);
Create a new polyhedron geometry object.
Result: Reference to a new Polyhedron geometry object, or NULL on failure.
Name Description polyhedronData Data describing a polyhedron.
TQ3Status
Q3Polyhedron_SetData (
TQ3GeometryObject polyhedron,
const TQ3PolyhedronData *polyhedronData
);
Modify a polyhedron object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description polyhedron A polyhedron object. polyhedronData Data describing a polyhedron.
TQ3Status
Q3Polyhedron_SetEdgeData (
TQ3GeometryObject polyhedron,
TQ3Uns32 edgeIndex,
const TQ3PolyhedronEdgeData *edgeData
);
Set the data of a polyhedron edge.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to update. edgeIndex The index of the edge to update. edgeData The new data for the edge.
TQ3Status
Q3Polyhedron_SetTriangleData (
TQ3GeometryObject polyhedron,
TQ3Uns32 triangleIndex,
const TQ3PolyhedronTriangleData *triangleData
);
Set the data of a polyhedron triangle.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to update. triangleIndex The index of the triangle to update. triangleData The new data for the triangle.
TQ3Status
Q3Polyhedron_SetVertexAttributeSet (
TQ3GeometryObject polyhedron,
TQ3Uns32 index,
TQ3AttributeSet attributeSet
);
Set the attribute set of a polyhedron vertex.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to update. index The index of the vertex to update. attributeSet The new attribute set for the vertex.
TQ3Status
Q3Polyhedron_SetVertexPosition (
TQ3GeometryObject polyhedron,
TQ3Uns32 index,
const TQ3Point3D *point
);
Set the position of a polyhedron vertex.
Result: Success or failure of the operation.
Name Description polyhedron The polyhedron to update. index The index of the vertex to update. point The new position for the vertex.
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.
Result: Success or failure of the operation.
Name Description polyhedronData Data describing a polyhedron. view A view object.
TQ3Status
Q3Torus_EmptyData (
TQ3TorusData *torusData
);
Release memory allocated by Q3Torus_GetData.
Result: Success or failure of the operation.
Name Description torusData Data describing a Torus, previously obtained with 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.
Result: Success or failure of the operation.
Name Description torus A Torus object. torusData Receives data describing the Torus object.
TQ3Status
Q3Torus_GetMajorRadius (
TQ3GeometryObject torus,
TQ3Vector3D *majorRadius
);
Get the major radius vector of a Torus object.
Result: Success or failure of the operation.
Name Description torus The Torus object. majorRadius Receives the major radius vector.
TQ3Status
Q3Torus_GetMinorRadius (
TQ3GeometryObject torus,
TQ3Vector3D *minorRadius
);
Get the minor radius vector of a Torus object.
Result: Success or failure of the operation.
Name Description torus The Torus object. minorRadius Receives the minor radius vector.
TQ3Status
Q3Torus_GetOrientation (
TQ3GeometryObject torus,
TQ3Vector3D *orientation
);
Get the orientation vector of a torus.
Result: Success or failure of the operation.
Name Description torus A torus object. orientation Receives the orientation vector of the torus.
TQ3Status
Q3Torus_GetOrigin (
TQ3GeometryObject torus,
TQ3Point3D *origin
);
Get the origin of a Torus object.
Result: Success or failure of the operation.
Name Description torus The Torus object. origin Receives the origin.
TQ3Status
Q3Torus_GetRatio (
TQ3GeometryObject torus,
float *ratio
);
Get the ratio of a torus.
Result: Success or failure of the operation.
Name Description torus The torus to query. ratio Receives the ratio of the torus.
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.
Result: Reference to a new Torus geometry object, or NULL on failure.
Name Description torusData Data describing a torus, or NULL.
TQ3Status
Q3Torus_SetData (
TQ3GeometryObject torus,
const TQ3TorusData *torusData
);
Modify a torus object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description torus A torus object. torusData Data describing a torus.
TQ3Status
Q3Torus_SetMajorRadius (
TQ3GeometryObject torus,
const TQ3Vector3D *majorRadius
);
Change the major radius vector of a Torus object.
Result: Success or failure of the operation.
Name Description torus The Torus object. majorRadius New major radius vector.
TQ3Status
Q3Torus_SetMinorRadius (
TQ3GeometryObject torus,
const TQ3Vector3D *minorRadius
);
Change the minor radius vector of a Torus object.
Result: Success or failure of the operation.
Name Description torus The Torus object. minorRadius New minor radius vector.
TQ3Status
Q3Torus_SetOrientation (
TQ3GeometryObject torus,
const TQ3Vector3D *orientation
);
Change the orientation vector of a torus object.
Result: Success or failure of the operation.
Name Description torus A torus object. orientation New orientation vector for the torus.
TQ3Status
Q3Torus_SetOrigin (
TQ3GeometryObject torus,
const TQ3Point3D *origin
);
Change the origin of a torus object.
Result: Success or failure of the operation.
Name Description torus The torus object. origin The new origin.
TQ3Status
Q3Torus_SetRatio (
TQ3GeometryObject torus,
float ratio
);
Set the ratio of a torus.
Result: Success or failure of the operation.
Name Description torus The torus to update. ratio The new ratio for the torus.
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.
Result: Success or failure of the operation.
Name Description torusData Data describing a torus. view A view object.
TQ3Status
Q3TriGrid_EmptyData (
TQ3TriGridData *triGridData
);
Release memory allocated by Q3TriGrid_GetData.
Result: Success or failure of the operation.
Name Description triGridData Data describing a TriGrid, previously obtained with 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.
Result: Success or failure of the operation.
Name Description triGrid A TriGrid object. triGridData Receives data describing the TriGrid object.
TQ3Status
Q3TriGrid_GetFacetAttributeSet (
TQ3GeometryObject triGrid,
TQ3Uns32 faceIndex,
TQ3AttributeSet *facetAttributeSet
);
Get the attribute set of a trigrid face.
Result: Success or failure of the operation.
Name Description triGrid The trigrid to query. faceIndex The index of the face to query. facetAttributeSet Receives the attribute set of the trigrid face.
TQ3Status
Q3TriGrid_GetVertexAttributeSet (
TQ3GeometryObject triGrid,
TQ3Uns32 rowIndex,
TQ3Uns32 columnIndex,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a trigrid vertex.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3TriGrid_GetVertexPosition (
TQ3GeometryObject triGrid,
TQ3Uns32 rowIndex,
TQ3Uns32 columnIndex,
TQ3Point3D *position
);
Get the position of a trigrid vertex.
Result: Success or failure of the operation.
Name Description 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.
TQ3GeometryObject
Q3TriGrid_New (
const TQ3TriGridData *triGridData
);
Create a new TriGrid geometry object.
Result: Reference to a new TriGrid geometry object, or NULL on failure.
Name Description triGridData Data describing a TriGrid.
TQ3Status
Q3TriGrid_SetData (
TQ3GeometryObject triGrid,
const TQ3TriGridData *triGridData
);
Modify a TriGrid object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description triGrid A TriGrid object. triGridData Data describing a TriGrid.
TQ3Status
Q3TriGrid_SetFacetAttributeSet (
TQ3GeometryObject triGrid,
TQ3Uns32 faceIndex,
TQ3AttributeSet facetAttributeSet
);
Set the attribute set of a trigrid face.
Result: Success or failure of the operation.
Name Description triGrid The trigrid to update. faceIndex The index of the face to update. facetAttributeSet The new attribute set for the trigrid face.
TQ3Status
Q3TriGrid_SetVertexAttributeSet (
TQ3GeometryObject triGrid,
TQ3Uns32 rowIndex,
TQ3Uns32 columnIndex,
TQ3AttributeSet attributeSet
);
Set the attribute set of a trigrid vertex.
Result: Success or failure of the operation.
Name Description 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.
TQ3Status
Q3TriGrid_SetVertexPosition (
TQ3GeometryObject triGrid,
TQ3Uns32 rowIndex,
TQ3Uns32 columnIndex,
const TQ3Point3D *position
);
Set the position of a trigrid vertex.
Result: Success or failure of the operation.
Name Description 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.
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.
Result: Success or failure of the operation.
Name Description triGridData Data describing a TriGrid. view A view object.
TQ3Status
Q3TriMesh_EmptyData (
TQ3TriMeshData *triMeshData
);
Release memory allocated by Q3TriMesh_GetData.
Result: Success or failure of the operation.
Name Description triMeshData Data describing a TriMesh, previously obtained with 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.
Result: Success or failure of the operation.
Name Description triMesh A TriMesh object. triMeshData Receives data describing the TriMesh object.
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.
Result: Success or failure of the operation.
Name Description triMesh The TriMesh to lock. readOnly Indicates if the returned data is read-only. triMeshData Receives a pointer to the TQ3TriMeshData for the TriMesh.
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.
Result: Reference to a new TriMesh geometry object, or NULL on failure.
Name Description triMeshData Data describing a TriMesh.
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.
Result: Success or failure of the operation.
Name Description triMesh A TriMesh object. triMeshData Data describing a TriMesh.
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.
Result: Success or failure of the operation.
Name Description triMeshData Data describing a TriMesh. view A view object.
TQ3Status
Q3TriMesh_UnlockData (
TQ3GeometryObject triMesh
);
Unlocks a TriMesh previously locked with Q3TriMesh_LockData.
This function is not available in QD3D.
Result: Success or failure of the operation.
Name Description triMesh The TriMesh to unlock.
TQ3Status
Q3Triangle_EmptyData (
TQ3TriangleData *triangleData
);
Release memory allocated by Q3Triangle_GetData.
Result: Success or failure of the operation.
Name Description triangleData Data describing a Triangle, previously obtained with 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.
Result: Success or failure of the operation.
Name Description triangle A Triangle object. triangleData Receives data describing the Triangle object.
TQ3Status
Q3Triangle_GetVertexAttributeSet (
TQ3GeometryObject triangle,
TQ3Uns32 index,
TQ3AttributeSet *attributeSet
);
Get the attribute set of a triangle vertex.
Result: Success or failure of the operation.
Name Description triangle The triangle to query. index The index of the vertex to query. attributeSet Receives the attribute set of the triangle vertex.
TQ3Status
Q3Triangle_GetVertexPosition (
TQ3GeometryObject triangle,
TQ3Uns32 index,
TQ3Point3D *point
);
Get the position of a triangle vertex.
Result: Success or failure of the operation.
Name Description triangle The triangle to query. index The index of the vertex to query. point Receives the position of the triangle vertex.
TQ3GeometryObject
Q3Triangle_New (
const TQ3TriangleData *triangleData
);
Create a new triangle geometry object.
Result: Reference to a new Triangle geometry object, or NULL on failure.
Name Description triangleData Data describing a triangle.
TQ3Status
Q3Triangle_SetData (
TQ3GeometryObject triangle,
const TQ3TriangleData *triangleData
);
Modify a triangle object by supplying a full new set of data.
Result: Success or failure of the operation.
Name Description triangle A triangle object. triangleData Data describing a triangle.
TQ3Status
Q3Triangle_SetVertexAttributeSet (
TQ3GeometryObject triangle,
TQ3Uns32 index,
TQ3AttributeSet attributeSet
);
Set the attribute set of a triangle vertex.
Result: Success or failure of the operation.
Name Description triangle The triangle to update. index The index of the vertex to update. attributeSet The new attribute set for the triangle vertex.
TQ3Status
Q3Triangle_SetVertexPosition (
TQ3GeometryObject triangle,
TQ3Uns32 index,
const TQ3Point3D *point
);
Set the position of a triangle vertex.
Result: Success or failure of the operation.
Name Description triangle The triangle to update. index The index of the vertex to update. point The new position for the triangle vertex.
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.
Result: Success or failure of the operation.
Name Description triangleData Data describing a triangle. view A view object.
Copyright © 1999-2003 Quesa Developers last updated on 8/10/2003