Concrete class for implementing line intersections with the scene graph.
More...
List of all members.
Classes |
| struct | Intersection |
Public Types |
typedef std::multiset
< Intersection > | Intersections |
Public Member Functions |
| | LineSegmentIntersector (const osg::Vec3d &start, const osg::Vec3d &end) |
| | Construct a LineSegmentIntersector the runs between the specified start and end points in MODEL coordinates.
|
| | LineSegmentIntersector (CoordinateFrame cf, const osg::Vec3d &start, const osg::Vec3d &end) |
| | Construct a LineSegmentIntersector the runs between the specified start and end points in the specified coordinate frame.
|
| | LineSegmentIntersector (CoordinateFrame cf, double x, double y) |
| | Convenience constructor for supporting picking in WINDOW, or PROJECTION coordinates In WINDOW coordinates creates a start value of (x,y,0) and end value of (x,y,1).
|
| void | insertIntersection (const Intersection &intersection) |
| Intersections & | getIntersections () |
| Intersection | getFirstIntersection () |
| void | setStart (const osg::Vec3d &start) |
| const osg::Vec3d & | getStart () const |
| void | setEnd (const osg::Vec3d &end) |
| const osg::Vec3d & | getEnd () 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 () |
Protected Member Functions |
| bool | intersects (const osg::BoundingSphere &bs) |
| bool | intersectAndClip (osg::Vec3d &s, osg::Vec3d &e, const osg::BoundingBox &bb) |
Protected Attributes |
| LineSegmentIntersector * | _parent |
| osg::Vec3d | _start |
| osg::Vec3d | _end |
| Intersections | _intersections |
Detailed Description
Concrete class for implementing line intersections with the scene graph.
To be used in conjunction with IntersectionVisitor.
Member Typedef Documentation
Constructor & Destructor Documentation
| osgUtil::LineSegmentIntersector::LineSegmentIntersector |
( |
const osg::Vec3d & |
start, |
|
|
const osg::Vec3d & |
end | |
|
) |
| | |
Construct a LineSegmentIntersector the runs between the specified start and end points in the specified coordinate frame.
| osgUtil::LineSegmentIntersector::LineSegmentIntersector |
( |
CoordinateFrame |
cf, |
|
|
double |
x, |
|
|
double |
y | |
|
) |
| | |
Convenience constructor for supporting picking in WINDOW, or PROJECTION coordinates In WINDOW coordinates creates a start value of (x,y,0) and end value of (x,y,1).
In PROJECTION coordinates (clip space cube) creates a start value of (x,y,-1) and end value of (x,y,1). In VIEW and MODEL coordinates creates a start value of (x,y,0) and end value of (x,y,1).
Member Function Documentation
| virtual bool osgUtil::LineSegmentIntersector::containsIntersections |
( |
|
) |
[inline, virtual] |
| virtual bool osgUtil::LineSegmentIntersector::enter |
( |
const osg::Node & |
node |
) |
[virtual] |
| const osg::Vec3d& osgUtil::LineSegmentIntersector::getEnd |
( |
|
) |
const [inline] |
| Intersection osgUtil::LineSegmentIntersector::getFirstIntersection |
( |
|
) |
[inline] |
| Intersections& osgUtil::LineSegmentIntersector::getIntersections |
( |
|
) |
[inline] |
| const osg::Vec3d& osgUtil::LineSegmentIntersector::getStart |
( |
|
) |
const [inline] |
| void osgUtil::LineSegmentIntersector::insertIntersection |
( |
const Intersection & |
intersection |
) |
[inline] |
| bool osgUtil::LineSegmentIntersector::intersects |
( |
const osg::BoundingSphere & |
bs |
) |
[protected] |
| virtual void osgUtil::LineSegmentIntersector::leave |
( |
|
) |
[virtual] |
| virtual void osgUtil::LineSegmentIntersector::reset |
( |
|
) |
[virtual] |
| void osgUtil::LineSegmentIntersector::setEnd |
( |
const osg::Vec3d & |
end |
) |
[inline] |
| void osgUtil::LineSegmentIntersector::setStart |
( |
const osg::Vec3d & |
start |
) |
[inline] |
Member Data Documentation
The documentation for this class was generated from the following file: