Intersector performs an intersection test for a given screen point and stores a list of intersections.
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. |
|
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__ () |
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.
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] |