Structs



TQ3HitPath


typedef struct TQ3HitPath {
    TQ3GroupObject                              rootGroup;
    TQ3Uns32                                    depth;
    TQ3GroupPosition                            *positions;
} TQ3HitPath;
Discussion

Hit path data.

Returned by Q3Pick_GetPickDetailData for the kQ3PickDetailMaskPath pick selector. Disposed of by Q3HitPath_EmptyData.

rootGroup holds the top level group which encloses the picked object. positions holds an array for each nested group within the submit sequence, indicating the position that was submitted at each level. This array contains depth values.

E.g., assuming 'object' is the picked object, then submitting:

group1(object)

would produce a rootGroup field of group 1, a depth field of 1, and positions[0] would contain the position of object within group1.

Submitting:

group1(group2(object))

would produce a rootGroup field of group1, a depth field of 2, positions[0] would hold the position of group2 within group1, and positions[1] would hold the position of object within group2.


Note that the contents of the position array are only valid if the submitted groups are unchanged since they were submitted for picking.

If these groups have had items added or removed since they were submitted, the positions array will no longer be valid.

Field Descriptions
rootGroup
Top level group which was submitted.
depth
Number of valid entries within positions.
positions
Array of group positions leading to the picked object.

TQ3PickData


typedef struct TQ3PickData {
    TQ3PickSort                                 sort;
    TQ3PickDetail                               mask;
    TQ3Uns32                                    numHitsToReturn;
} TQ3PickData;
Discussion

Describes the common state for a pick object.

Field Descriptions
sort
The type of sorting, if any, to performed on the results.
mask
The type of pick information to be returned.
numHitsToReturn
The number of hits to return. Set to kQ3ReturnAllHits to retrieve all hits.

TQ3WindowPointPickData


typedef struct TQ3WindowPointPickData {
    TQ3PickData                                 data;
    TQ3Point2D                                  point;
    float                                       vertexTolerance;
    float                                       edgeTolerance;
} TQ3WindowPointPickData;
Discussion

Describes the state for a window-point pick object.

Field Descriptions
data
The common state for the pick.
point
The pick point in local window coordinates. Note that on Win32, this means relative to the HWND which contains the view.
vertexTolerance
The vertex tolerance. Only relevant to picking Point objects.
edgeTolerance
The edge tolerance. Only relevant to picking one-dimensional objects such as Lines and PolyLines.

TQ3WindowRectPickData


typedef struct TQ3WindowRectPickData {
    TQ3PickData                                 data;
    TQ3Area                                     rect;
} TQ3WindowRectPickData;
Discussion

Describes the state for a window-rect pick object.

Field Descriptions
data
The common state for the pick.
rect
The pick rect in local window coordinates.

TQ3WorldRayPickData


typedef struct TQ3WorldRayPickData {
    TQ3PickData                                 data;
    TQ3Ray3D                                    ray;
    float                                       vertexTolerance;
    float                                       edgeTolerance;
} TQ3WorldRayPickData;
Discussion

Describes the state for a world-ray pick object.

Field Descriptions
data
The common state for the pick.
ray
The pick ray in world coordinates.
vertexTolerance
The vertex tolerance. Only relevant to picking Point objects.
edgeTolerance
The edge tolerance. Only relevant to picking one-dimensional objects such as Lines and PolyLines.

© 1999-2008 Quesa Developers (Last Updated 5/10/2008)