class OSGUTIL_EXPORT osgUtil::IntersectVisitor: public osg::NodeVisitor

Basic visitor for ray based collisions of a scene.

Inheritance:


Public Classes

[more]enum HitReportingMode
Modes to control how IntersectVisitor reports hits.

Public Methods

[more] IntersectVisitor()
[more]virtual ~IntersectVisitor()
[more]void reset()
[more]void addSeg(osg::Seg* seg)
Add a line segment to use for intersection testing during scene traversal
[more]void setHitReportingMode(HitReportingMode hrm)
Set the mode of how hits should reported back from a traversal
[more]HitReportingMode getHitReportingMode()
Get the mode of how hits should reported back from a traversal
[more]HitList& getHitList(osg::Seg* seg)
[more]int getNumHits(osg::Seg* seg)
[more]bool hits()
[more]virtual void apply(osg::Node&)
[more]virtual void apply(osg::Geode& node)
[more]virtual void apply(osg::Billboard& node)
[more]virtual void apply(osg::Group& node)
[more]virtual void apply(osg::DCS& node)
[more]virtual void apply(osg::Switch& node)
[more]virtual void apply(osg::LOD& node)
[more]virtual void apply(osg::Scene& node)

Public

[more]typedef std::vector<Hit> HitList
[more]typedef std::map<osg::Seg*,HitList > SegHitListMap

Protected Fields

[more]IntersectStateStack _intersectStateStack
[more]osg::NodePath _nodePath
[more]HitReportingMode _hitReportingMode
[more]SegHitListMap _segHitList

Protected Methods

[more]bool intersect(osg::GeoSet& gset)
[more]void pushMatrix(const osg::Matrix& matrix)
[more]void popMatrix()
[more]bool enterNode(osg::Node& node)
[more]void leaveNode()

Protected

[more]typedef std::vector<IntersectState*> IntersectStateStack


Documentation

Basic visitor for ray based collisions of a scene. Note, still in development, current version has not pratical functionality!
o IntersectVisitor()

ovirtual ~IntersectVisitor()

ovoid reset()

ovoid addSeg(osg::Seg* seg)
Add a line segment to use for intersection testing during scene traversal

oenum HitReportingMode
Modes to control how IntersectVisitor reports hits.

o ONLY_NEAREST_HIT

o ALL_HITS

ovoid setHitReportingMode(HitReportingMode hrm)
Set the mode of how hits should reported back from a traversal

oHitReportingMode getHitReportingMode()
Get the mode of how hits should reported back from a traversal

otypedef std::vector<Hit> HitList

otypedef std::map<osg::Seg*,HitList > SegHitListMap

oHitList& getHitList(osg::Seg* seg)

oint getNumHits(osg::Seg* seg)

obool hits()

ovirtual void apply(osg::Node&)

ovirtual void apply(osg::Geode& node)

ovirtual void apply(osg::Billboard& node)

ovirtual void apply(osg::Group& node)

ovirtual void apply(osg::DCS& node)

ovirtual void apply(osg::Switch& node)

ovirtual void apply(osg::LOD& node)

ovirtual void apply(osg::Scene& node)

obool intersect(osg::GeoSet& gset)

ovoid pushMatrix(const osg::Matrix& matrix)

ovoid popMatrix()

obool enterNode(osg::Node& node)

ovoid leaveNode()

otypedef std::vector<IntersectState*> IntersectStateStack

oIntersectStateStack _intersectStateStack

oosg::NodePath _nodePath

oHitReportingMode _hitReportingMode

oSegHitListMap _segHitList


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.