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) |
Intersections & | getIntersections () |
Intersection | getFirstIntersection () |
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 () |
Protected Attributes | |
PolytopeIntersector * | _parent |
osg::Polytope | _polytope |
Intersections | _intersections |
Classes | |
struct | Intersection |
To be used in conjunction with IntersectionVisitor.
typedef std::set<Intersection> osgUtil::PolytopeIntersector::Intersections |
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.
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.
PolytopeIntersector* osgUtil::PolytopeIntersector::_parent [protected] |
osg::Polytope osgUtil::PolytopeIntersector::_polytope [protected] |