osgUtil::PolytopeIntersector Class Reference

Concrent class for implementing polytope intersections with the scene graph. More...

Inheritance diagram for osgUtil::PolytopeIntersector:

Inheritance graph
[legend]

List of all members.

Public Types

typedef std::set
< Intersection
Intersections

Public Member Functions

 PolytopeIntersector (const osg::Polytope &polytope)
 Construct a PolytopeIntersector using speified polytope in MODEL coordinates.
 PolytopeIntersector (CoordinateFrame cf, const osg::Polytope &polytope)
 Construct a PolytopeIntersector using speified polytope in specified coordinate frame.
 PolytopeIntersector (CoordinateFrame cf, double xMin, double yMin, double xMax, double yMax)
 Convinience constructor for supporting picking in WINDOW, or PROJECTION coorindates In WINDOW coordinates (clip space cube) creates a five sided polytope box that has a front face at 0.0 and sides around box xMin, yMin, xMax, yMax.
void insertIntersection (const Intersection &intersection)
IntersectionsgetIntersections ()
Intersection getFirstIntersection ()
virtual Intersectorclone (osgUtil::IntersectionVisitor &iv)
virtual bool enter (const osg::Node &node)
virtual void leave ()
virtual void intersect (osgUtil::IntersectionVisitor &iv, osg::Drawable *drawable)
virtual void reset ()
virtual bool containsIntersections ()

Protected Attributes

PolytopeIntersector_parent
osg::Polytope _polytope
Intersections _intersections

Classes

struct  Intersection


Detailed Description

Concrent class for implementing polytope intersections with the scene graph.

To be used in conjunction with IntersectionVisitor.


Member Typedef Documentation

typedef std::set<Intersection> osgUtil::PolytopeIntersector::Intersections


Constructor & Destructor Documentation

osgUtil::PolytopeIntersector::PolytopeIntersector ( const osg::Polytope polytope  ) 

Construct a PolytopeIntersector using speified polytope in MODEL coordinates.

osgUtil::PolytopeIntersector::PolytopeIntersector ( CoordinateFrame  cf,
const osg::Polytope polytope 
)

Construct a PolytopeIntersector using speified polytope in specified coordinate frame.

osgUtil::PolytopeIntersector::PolytopeIntersector ( CoordinateFrame  cf,
double  xMin,
double  yMin,
double  xMax,
double  yMax 
)

Convinience constructor for supporting picking in WINDOW, or PROJECTION coorindates In WINDOW coordinates (clip space cube) creates a five sided polytope box that has a front face at 0.0 and sides around box xMin, yMin, xMax, yMax.

In PROJECTION coordinates (clip space cube) creates a five sided polytope box that has a front face at -1 and sides around box xMin, yMin, xMax, yMax. In VIEW and MODEL coordinates (clip space cube) creates a five sided polytope box that has a front face at 0.0 and sides around box xMin, yMin, xMax, yMax.


Member Function Documentation

void osgUtil::PolytopeIntersector::insertIntersection ( const Intersection intersection  )  [inline]

Intersections& osgUtil::PolytopeIntersector::getIntersections (  )  [inline]

Intersection osgUtil::PolytopeIntersector::getFirstIntersection (  )  [inline]

virtual Intersector* osgUtil::PolytopeIntersector::clone ( osgUtil::IntersectionVisitor iv  )  [virtual]

Implements osgUtil::Intersector.

virtual bool osgUtil::PolytopeIntersector::enter ( const osg::Node node  )  [virtual]

Implements osgUtil::Intersector.

virtual void osgUtil::PolytopeIntersector::leave (  )  [virtual]

Implements osgUtil::Intersector.

virtual void osgUtil::PolytopeIntersector::intersect ( osgUtil::IntersectionVisitor iv,
osg::Drawable drawable 
) [virtual]

Implements osgUtil::Intersector.

virtual void osgUtil::PolytopeIntersector::reset (  )  [virtual]

Reimplemented from osgUtil::Intersector.

virtual bool osgUtil::PolytopeIntersector::containsIntersections (  )  [inline, virtual]

Implements osgUtil::Intersector.


Member Data Documentation

PolytopeIntersector* osgUtil::PolytopeIntersector::_parent [protected]

osg::Polytope osgUtil::PolytopeIntersector::_polytope [protected]

Intersections osgUtil::PolytopeIntersector::_intersections [protected]


The documentation for this class was generated from the following file:
Generated at Sun Oct 14 02:12:51 2007 for the OpenSceneGraph by doxygen 1.5.3.