OpenSceneGraph 2.8.4
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
osg::LineSegment Class Reference

LineSegment class for representing a line segment. More...

Inheritance diagram for osg::LineSegment:
Inheritance graph
[legend]

List of all members.

Public Types

typedef Vec3d vec_type
typedef vec_type::value_type value_type

Public Member Functions

 LineSegment ()
 LineSegment (const LineSegment &seg)
 LineSegment (const vec_type &s, const vec_type &e)
LineSegmentoperator= (const LineSegment &seg)
void set (const vec_type &s, const vec_type &e)
vec_typestart ()
const vec_typestart () const
vec_typeend ()
const vec_typeend () const
bool valid () const
bool intersect (const BoundingBox &bb) const
 return true if segment intersects BoundingBox.
bool intersect (const BoundingBox &bb, float &r1, float &r2) const
 return true if segment intersects BoundingBox and return the intersection ratios.
bool intersect (const BoundingBox &bb, double &r1, double &r2) const
 return true if segment intersects BoundingBox and return the intersection ratios.
bool intersect (const BoundingSphere &bs) const
 return true if segment intersects BoundingSphere.
bool intersect (const BoundingSphere &bs, float &r1, float &r2) const
 return true if segment intersects BoundingSphere and return the intersection ratio.
bool intersect (const BoundingSphere &bs, double &r1, double &r2) const
 return true if segment intersects BoundingSphere and return the intersection ratio.
bool intersect (const Vec3f &v1, const Vec3f &v2, const Vec3f &v3, float &r)
 return true if segment intersects triangle and set ratio long segment.
bool intersect (const Vec3d &v1, const Vec3d &v2, const Vec3d &v3, double &r)
 return true if segment intersects triangle and set ratio long segment.
void mult (const LineSegment &seg, const Matrix &m)
 post multiply a segment by matrix.
void mult (const Matrix &m, const LineSegment &seg)
 pre multiply a segment by matrix.

Protected Member Functions

virtual ~LineSegment ()

Static Protected Member Functions

static bool intersectAndClip (vec_type &s, vec_type &e, const BoundingBox &bb)

Protected Attributes

vec_type _s
vec_type _e

Detailed Description

LineSegment class for representing a line segment.


Member Typedef Documentation


Constructor & Destructor Documentation

osg::LineSegment::LineSegment ( ) [inline]
osg::LineSegment::LineSegment ( const LineSegment seg) [inline]
osg::LineSegment::LineSegment ( const vec_type s,
const vec_type e 
) [inline]
virtual osg::LineSegment::~LineSegment ( ) [protected, virtual]

Member Function Documentation

vec_type& osg::LineSegment::end ( ) [inline]
const vec_type& osg::LineSegment::end ( ) const [inline]
bool osg::LineSegment::intersect ( const BoundingBox bb) const

return true if segment intersects BoundingBox.

bool osg::LineSegment::intersect ( const BoundingBox bb,
float &  r1,
float &  r2 
) const

return true if segment intersects BoundingBox and return the intersection ratios.

bool osg::LineSegment::intersect ( const Vec3d v1,
const Vec3d v2,
const Vec3d v3,
double &  r 
)

return true if segment intersects triangle and set ratio long segment.

bool osg::LineSegment::intersect ( const BoundingBox bb,
double &  r1,
double &  r2 
) const

return true if segment intersects BoundingBox and return the intersection ratios.

bool osg::LineSegment::intersect ( const BoundingSphere bs) const

return true if segment intersects BoundingSphere.

bool osg::LineSegment::intersect ( const BoundingSphere bs,
float &  r1,
float &  r2 
) const

return true if segment intersects BoundingSphere and return the intersection ratio.

bool osg::LineSegment::intersect ( const BoundingSphere bs,
double &  r1,
double &  r2 
) const

return true if segment intersects BoundingSphere and return the intersection ratio.

bool osg::LineSegment::intersect ( const Vec3f v1,
const Vec3f v2,
const Vec3f v3,
float &  r 
)

return true if segment intersects triangle and set ratio long segment.

static bool osg::LineSegment::intersectAndClip ( vec_type s,
vec_type e,
const BoundingBox bb 
) [static, protected]
void osg::LineSegment::mult ( const Matrix m,
const LineSegment seg 
) [inline]

pre multiply a segment by matrix.

References _e, and _s.

void osg::LineSegment::mult ( const LineSegment seg,
const Matrix m 
) [inline]

post multiply a segment by matrix.

References _e, and _s.

LineSegment& osg::LineSegment::operator= ( const LineSegment seg) [inline]

References _e, and _s.

void osg::LineSegment::set ( const vec_type s,
const vec_type e 
) [inline]
const vec_type& osg::LineSegment::start ( ) const [inline]
vec_type& osg::LineSegment::start ( ) [inline]
bool osg::LineSegment::valid ( ) const [inline]

Member Data Documentation

Referenced by mult(), and operator=().

Referenced by mult(), and operator=().


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

osg logo
Generated at Sun Jan 8 2012 13:16:13 for the OpenSceneGraph by doxygen 1.7.4.