awViewing.Intersector Class Reference


Detailed Description

Intersector performs an intersection test for a given screen point and stores a list of intersections.

#include <classaw_viewing_1_1_intersector.h>

List of all members.

Public Member Functions

  __init__ ()
bool  intersect (float x, float y)
  Returns true if any object in the scene was hit by a ray projected into the scene.
int  hitCount ()
  Returns the number of hits.
awScene NodeRef  getHit (int index)
  Returns the node for a particular hit.
awLinear Point  getIntersectionPoint (int index)
  Returns the the intersection point by index.
awLinear Normal  getNormalAtIntersection (int index)
  Returns the normal at the intersection by index.
float  getDistanceAtIntersection (int index)
  Returns the distance to the intersection by index.
int  getPatchIndexAtIntersection (awScene.NodeRef node, int index)
  Returns the patch index at the intersection by index.
awLinear Point2  getUVAtIntersection (int index)
  Returns the uv at the intersection by index.
bool  intersectManips (float x, float y, awScene.NodeRef startNode)

Protected Member Functions

  __del__ ()

Member Function Documentation

awViewing.Intersector.__init__ ( )
bool awViewing.Intersector.intersect ( float  x,
float  y 
)

Returns true if any object in the scene was hit by a ray projected into the scene.

int awViewing.Intersector.hitCount ( )

Returns the number of hits.

awScene NodeRef awViewing.Intersector.getHit ( int  index )

Returns the node for a particular hit.

awLinear Point awViewing.Intersector.getIntersectionPoint ( int  index )

Returns the the intersection point by index.

If there is no intersection, then the origin is returned.

awLinear Normal awViewing.Intersector.getNormalAtIntersection ( int  index )

Returns the normal at the intersection by index.

If there is no intersection, then a zero vector is returned.

float awViewing.Intersector.getDistanceAtIntersection ( int  index )

Returns the distance to the intersection by index.

Return -1.0 if index is out of range.

int awViewing.Intersector.getPatchIndexAtIntersection ( awScene.NodeRef  node,
int  index 
)

Returns the patch index at the intersection by index.

If there is no intersection, -1 is returned. Node is necessary in order to map back into the original file indices, instead of the potentially optimized one.

awLinear Point2 awViewing.Intersector.getUVAtIntersection ( int  index )

Returns the uv at the intersection by index.

If there is no intersection, then a zero vector is returned. You must make sure that the specified index is less than the hit count.

bool awViewing.Intersector.intersectManips ( float  x,
float  y,
awScene.NodeRef  startNode 
)
awViewing.Intersector.__del__ ( ) [protected]

awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector
awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector awViewing.Intersector