osgUtil::PlaneIntersector Class Reference

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

Inheritance diagram for osgUtil::PlaneIntersector:

Inheritance graph
[legend]

List of all members.

Public Types

typedef std::vector
< Intersection
Intersections

Public Member Functions

 PlaneIntersector (const osg::Plane &plane, const osg::Polytope &boundingPolytope=osg::Polytope())
 Construct a PolytopeIntersector using speified polytope in MODEL coordinates.
 PlaneIntersector (CoordinateFrame cf, const osg::Plane &plane, const osg::Polytope &boundingPolytope=osg::Polytope())
 Construct a PolytopeIntersector using speified polytope in specified coordinate frame.
void insertIntersection (const Intersection &intersection)
IntersectionsgetIntersections ()
void setRecordHeightsAsAttributes (bool flag)
bool getRecordHeightsAsAttributes () const
void setEllipsoidModel (osg::EllipsoidModel *em)
const
osg::EllipsoidModel
getEllipsoidModel () const
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

PlaneIntersector_parent
bool _recordHeightsAsAttributes
osg::ref_ptr
< osg::EllipsoidModel
_em
osg::Plane _plane
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::vector<Intersection> osgUtil::PlaneIntersector::Intersections


Constructor & Destructor Documentation

osgUtil::PlaneIntersector::PlaneIntersector ( const osg::Plane plane,
const osg::Polytope boundingPolytope = osg::Polytope() 
)

Construct a PolytopeIntersector using speified polytope in MODEL coordinates.

osgUtil::PlaneIntersector::PlaneIntersector ( CoordinateFrame  cf,
const osg::Plane plane,
const osg::Polytope boundingPolytope = osg::Polytope() 
)

Construct a PolytopeIntersector using speified polytope in specified coordinate frame.


Member Function Documentation

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

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

void osgUtil::PlaneIntersector::setRecordHeightsAsAttributes ( bool  flag  )  [inline]

bool osgUtil::PlaneIntersector::getRecordHeightsAsAttributes (  )  const [inline]

void osgUtil::PlaneIntersector::setEllipsoidModel ( osg::EllipsoidModel em  )  [inline]

const osg::EllipsoidModel* osgUtil::PlaneIntersector::getEllipsoidModel (  )  const [inline]

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

Implements osgUtil::Intersector.

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

Implements osgUtil::Intersector.

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

Implements osgUtil::Intersector.

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

Implements osgUtil::Intersector.

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

Reimplemented from osgUtil::Intersector.

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

Implements osgUtil::Intersector.


Member Data Documentation

PlaneIntersector* osgUtil::PlaneIntersector::_parent [protected]

bool osgUtil::PlaneIntersector::_recordHeightsAsAttributes [protected]

osg::ref_ptr<osg::EllipsoidModel> osgUtil::PlaneIntersector::_em [protected]

osg::Plane osgUtil::PlaneIntersector::_plane [protected]

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

Intersections osgUtil::PlaneIntersector::_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.