osgUtil::PlaneIntersector Class Reference

`#include <PlaneIntersector>`

Inheritance diagram for osgUtil::PlaneIntersector:

## Classes

struct | Intersection

## Public Types

typedef std::vector< Intersection > | Intersections
Public Types inherited from osgUtil::Intersector
enum | CoordinateFrame { WINDOW , PROJECTION , VIEW , MODEL }
enum | IntersectionLimit { NO_LIMIT , LIMIT_ONE_PER_DRAWABLE , LIMIT_ONE , LIMIT_NEAREST }
enum | PrecisionHint { USE_DOUBLE_CALCULATIONS , USE_FLOAT_CALCULATIONS }

## Public Member Functions

| PlaneIntersector (const osg::Plane &plane, const osg::Polytope &boundingPolytope=osg::Polytope())
| PlaneIntersector (CoordinateFrame cf, const osg::Plane &plane, const osg::Polytope &boundingPolytope=osg::Polytope())
void | insertIntersection (const Intersection &intersection)
Intersections & | getIntersections ()
void | setRecordHeightsAsAttributes (bool flag)
bool | getRecordHeightsAsAttributes () const
void | setEllipsoidModel (osg::EllipsoidModel *em)
const osg::EllipsoidModel * | getEllipsoidModel () const
virtual Intersector * | clone (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 ()
Public Member Functions inherited from osgUtil::Intersector
| Intersector (CoordinateFrame cf=MODEL, IntersectionLimit il=NO_LIMIT)
void | setCoordinateFrame (CoordinateFrame cf)
CoordinateFrame | getCoordinateFrame () const
void | setIntersectionLimit (IntersectionLimit limit)
IntersectionLimit | getIntersectionLimit () const
bool | disabled () const
void | incrementDisabledCount ()
void | decrementDisabledCount ()
bool | reachedLimit ()
void | setPrecisionHint (PrecisionHint hint)
PrecisionHint | getPrecisionHint () const
Public Member Functions inherited from osg::Referenced
| Referenced ()
| Referenced (bool threadSafeRefUnref)
| Referenced (const Referenced &)
Referenced & | operator= (const Referenced &)
virtual void | setThreadSafeRefUnref (bool)
bool | getThreadSafeRefUnref () const
OpenThreads::Mutex * | getRefMutex () const
int | ref () const
int | unref () const
int | unref_nodelete () const
int | referenceCount () const
ObserverSet * | getObserverSet () const
ObserverSet * | getOrCreateObserverSet () const
void | addObserver (Observer *observer) const
void | removeObserver (Observer *observer) const

## Protected Attributes

PlaneIntersector * | _parent
bool | _recordHeightsAsAttributes
osg::ref_ptr< osg::EllipsoidModel > | _em
osg::Plane | _plane
osg::Polytope | _polytope
Intersections | _intersections
Protected Attributes inherited from osgUtil::Intersector
CoordinateFrame | _coordinateFrame
IntersectionLimit | _intersectionLimit
unsigned int | _disabledCount
PrecisionHint | _precisionHint
Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr | _observerSet
OpenThreads::Atomic | _refCount

## Additional Inherited Members

Static Public Member Functions inherited from osg::Referenced
static OpenThreads::Mutex * | getGlobalReferencedMutex ()
static void | setDeleteHandler (DeleteHandler *handler)
static DeleteHandler * | getDeleteHandler ()
Protected Member Functions inherited from osg::Referenced
virtual | ~Referenced ()
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const
void | deleteUsingDeleteHandler () const

## Detailed Description

Concrete class for implementing polytope intersections with the scene graph. To be used in conjunction with IntersectionVisitor.

## Member Typedef Documentation

## Intersections

typedef std::vector<Intersection> osgUtil::PlaneIntersector::Intersections

## Constructor & Destructor Documentation

## PlaneIntersector() [1/2]

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

Construct a PolytopeIntersector using speified polytope in MODEL coordinates.

## PlaneIntersector() [2/2]

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

## clone()

virtual Intersector * osgUtil::PlaneIntersector::clone | ( | osgUtil::IntersectionVisitor & | iv | ) |

virtual

Implements osgUtil::Intersector.

References osgUtil::Intersector::Intersector().

## containsIntersections()

virtual bool osgUtil::PlaneIntersector::containsIntersections | ( |  | ) |

inline virtual

Implements osgUtil::Intersector.

References getIntersections().

## enter()

virtual bool osgUtil::PlaneIntersector::enter | ( | const osg::Node & | node | ) |

virtual

Implements osgUtil::Intersector.

## getEllipsoidModel()

const osg::EllipsoidModel * osgUtil::PlaneIntersector::getEllipsoidModel | ( |  | ) | const

inline

References _em.

## getIntersections()

Intersections & osgUtil::PlaneIntersector::getIntersections | ( |  | ) |

inline

References _intersections, and _parent.

Referenced by containsIntersections(), and insertIntersection().

## getRecordHeightsAsAttributes()

bool osgUtil::PlaneIntersector::getRecordHeightsAsAttributes | ( |  | ) | const

inline

References _recordHeightsAsAttributes.

## insertIntersection()

void osgUtil::PlaneIntersector::insertIntersection | ( | const Intersection & | intersection | ) |

inline

References getIntersections().

## intersect()

virtual void osgUtil::PlaneIntersector::intersect | ( | osgUtil::IntersectionVisitor & | iv,
|  | osg::Drawable * | drawable )

virtual

Implements osgUtil::Intersector.

## leave()

virtual void osgUtil::PlaneIntersector::leave | ( |  | ) |

virtual

Implements osgUtil::Intersector.

## reset()

virtual void osgUtil::PlaneIntersector::reset | ( |  | ) |

virtual

Reimplemented from osgUtil::Intersector.

## setEllipsoidModel()

void osgUtil::PlaneIntersector::setEllipsoidModel | ( | osg::EllipsoidModel * | em | ) |

inline

References _em.

## setRecordHeightsAsAttributes()

void osgUtil::PlaneIntersector::setRecordHeightsAsAttributes | ( | bool | flag | ) |

inline

References _recordHeightsAsAttributes.

## Member Data Documentation

## _em

osg::ref_ptr<osg::EllipsoidModel> osgUtil::PlaneIntersector::_em

protected

Referenced by getEllipsoidModel(), and setEllipsoidModel().

## _intersections

Intersections osgUtil::PlaneIntersector::_intersections

protected

Referenced by getIntersections().

## _parent

PlaneIntersector* osgUtil::PlaneIntersector::_parent

protected

Referenced by getIntersections().

## _plane

osg::Plane osgUtil::PlaneIntersector::_plane

protected

## _polytope

osg::Polytope osgUtil::PlaneIntersector::_polytope

protected

## _recordHeightsAsAttributes

bool osgUtil::PlaneIntersector::_recordHeightsAsAttributes

protected

Referenced by getRecordHeightsAsAttributes(), and setRecordHeightsAsAttributes().

The documentation for this class was generated from the following file:

- PlaneIntersector