Class CtrlHitRecord

3DS Max Plug-In SDK

Class CtrlHitRecord

class CtrlHitRecord

Description:

This class provides a data structure used during controller gizmo hit-testing. All methods are implemented by the system.

Friend Class:

class CtrlHitLog;

Data Members:

public:

INode *nodeRef;

This identifies the node the user has clicked on.

DWORD distance;

The 'distance' of the hit. What the distance actually represents depends on the rendering level of the viewport. For wireframe modes, it refers to the distance in the screen XY plane from the mouse to the sub-object component. In a shaded mode, it refers to the Z depth of the sub-object component. In both cases, smaller values indicate that the sub-object component is 'closer' to the mouse cursor.

ulong hitInfo;

A general unsigned long value. Most controllers will just need this to identity the sub-object element. The meaning of this value (how it is used to identify the element) is up to the plug-in.

DWORD infoExtra;

If the above hitInfo data member is not sufficient to describe the sub-object element this data member may be used as well.

Methods:

Prototype:

CtrlHitRecord()

Remarks:

Constructor. The data members are initialized as follows: next=NULL; distance=0;

 hitInfo=0; nodeRef=NULL;

Prototype:

CtrlHitRecord(CtrlHitRecord *nxt,INode *nr, DWORD d,

 ulong inf, DWORD extra)

Remarks:

Constructor. The data members are initialized to the data passed.

Prototype:

CtrlHitRecord *Next()

Remarks:

Each CtrlHitRecord maintains a pointer to another CtrlHitRecord. This method returns the next hit record.