OpenSceneGraph 3.6.5
|
Concrete class for implementing polytope intersections with the scene graph. More...
#include <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 } |
Hint to precision used in the internal intersections calculations. More... |
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) |
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) |
Set the hint to what precision to use in the intersections calculations. | |
PrecisionHint | getPrecisionHint () const |
Get the hint to what precision should be used in the intersections calculations. | |
Public Member Functions inherited from osg::Referenced | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Deprecated, Referenced is now always uses thread safe ref/unref, use default Referenced() constructor instead. | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
virtual void | setThreadSafeRefUnref (bool) |
Deprecated, Referenced is always theadsafe so there method now has no effect and does not need to be called. | |
bool | getThreadSafeRefUnref () const |
Get whether a mutex is used to ensure ref() and unref() are thread safe. | |
OpenThreads::Mutex * | getRefMutex () const |
Get the mutex used to ensure thread safety of ref()/unref(). | |
int | ref () const |
Increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
int | unref () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. | |
int | unref_nodelete () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. | |
int | referenceCount () const |
Return the number of pointers currently referencing this object. | |
ObserverSet * | getObserverSet () const |
Get the ObserverSet if one is attached, otherwise return NULL. | |
ObserverSet * | getOrCreateObserverSet () const |
Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. | |
void | addObserver (Observer *observer) const |
Add a Observer that is observing this object, notify the Observer when this object gets deleted. | |
void | removeObserver (Observer *observer) const |
Remove Observer that is observing this object. |
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 () |
Get the optional global Referenced mutex, this can be shared between all osg::Referenced. | |
static void | setDeleteHandler (DeleteHandler *handler) |
Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. | |
static DeleteHandler * | getDeleteHandler () |
Get a DeleteHandler. | |
Protected Member Functions inherited from osg::Referenced | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Concrete class for implementing polytope intersections with the scene graph.
To be used in conjunction with IntersectionVisitor.
typedef std::vector<Intersection> osgUtil::PlaneIntersector::Intersections |
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.
|
virtual |
Implements osgUtil::Intersector.
References osgUtil::Intersector::Intersector().
|
inlinevirtual |
Implements osgUtil::Intersector.
References getIntersections().
|
virtual |
Implements osgUtil::Intersector.
|
inline |
References _em.
|
inline |
References _intersections, and _parent.
Referenced by containsIntersections(), and insertIntersection().
|
inline |
References _recordHeightsAsAttributes.
|
inline |
References getIntersections().
|
virtual |
Implements osgUtil::Intersector.
|
virtual |
Implements osgUtil::Intersector.
|
virtual |
Reimplemented from osgUtil::Intersector.
|
inline |
References _em.
|
inline |
References _recordHeightsAsAttributes.
|
protected |
Referenced by getEllipsoidModel(), and setEllipsoidModel().
|
protected |
Referenced by getIntersections().
|
protected |
Referenced by getIntersections().
|
protected |
|
protected |
|
protected |
Referenced by getRecordHeightsAsAttributes(), and setRecordHeightsAsAttributes().
![]() | Generated at Sun Jul 27 2025 00:00:00 for the OpenSceneGraph by doxygen 1.14.0. |