class TdGfxPfIntersectionTest : public TcGfxIntersectionTest Performer Cavelib Intersection Test
Performer Cavelib Intersection Test. This class provides an interface to Performer's pfSegSet. It can be automatically updated by passing it to the intersection manager, or the client can chose to update the intersection.
TdGfxPfIntersectionTest(const TcUtString &isectName, const TdGfxPfIntersectionTest::Sensor sensor, TcGfxComponent &rootNode, const unsigned int &isectMask, const unsigned int &activeMask = 0x01, const int &modeMask = PFTRAV_IS_PATH | PFTRAV_IS_GSET | PFTRAV_IS_CULL_BACK)
sensor - Determines whether doTcIntersection automatically updates the
intersection test from a sensor position and direction.
rootNode - Sets the subtree in the graphics hierarchy that the intersection is
tested from.
isectMask - Sets a bit field mask to test for.
activeMask - Sets the initial number of segments that are to be tested.
This is a bitfield that determines which intersection segments are active.
modeMask - This is a Performer mask that determines the behavior of the
intersection test. See pfSegSet.
~TdGfxPfIntersectionTest()
void setActiveSegments(const int &numSegs = 1)
void setIsectMask(const unsigned int &isectMask)
void setMode(const int &modeMask)
void setRayLength(const float &rayLength, const int &segNum = 0)
segNum - Determines the segment to apply this length to. This must be
less than the number of active segments.
virtual IsectState doTcIntersectionTest()
const TcUtVector3f& getIsectNormal(const int &segNum = 0)
const TcUtVector3f& getLastIsectPoint(const CoordType &type = LOCAL, const int &segNum = 0)
segNum - Returns the point for the given line segment. This is a number
starting from 0 and must be within the range of the active segments.
void setRayStartPositionFromWand(const int &segNum = 0)
void setRayDirectionFromWand(const int &segNum = 0)
void setRayStartPositionFromHead(const int &segNum = 0)
void setRayDirectionFromHead(const int &segNum = 0)
void setRayStartPosition(const TcUtVector3f &vector, const CoordType &type = WORLD, const int &segNum = 0)
type - Currently if type is WORLD it will be converted to the
viewpoint (local) coord system (CAVEConvertWorldToNav).
This assumes the intersection starts from pfScene node.
segNum - This is a number starting from 0 and must be within the range
of the active segments.
void setRayDirection(const TcUtVector3f &vector, const CoordType &type = WORLD, const int &segNum = 0)
type - Currently if type is WORLD it will be converted to the
viewpoint (local) coord system (CAVEConvertVectorWorldToNav).
This assumes the intersection starts from pfScene node.
segNum - This is a number starting from 0 and must be within the range
of the active segments.
void setCurSeg(const int &num)
alphabetic index hierarchy of classes
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de