Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# osg::LineSegment Class Reference

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

Inheritance diagram for osg::LineSegment:

[legend]
List of all members.

## Public Member Functions
| LineSegment ()
| LineSegment (const LineSegment &seg)
| LineSegment (const Vec3 &s, const Vec3 &e)
LineSegment & | operator= (const LineSegment &seg)
void | set (const Vec3 &s, const Vec3 &e)
Vec3 & | start ()
const Vec3 & | start () const
Vec3 & | end ()
const Vec3 & | end () 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 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 Vec3 &v1, const Vec3 &v2, const Vec3 &v3, float &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
bool | intersectAndClip (Vec3 &s, Vec3 &e, const BoundingBox &bb)
## Protected Attributes
Vec3 | _s
Vec3 | _e

## Detailed Description

LineSegment class for representing a line segment.

## Constructor & Destructor Documentation

osg::LineSegment::LineSegment | ( |  | ) | `[inline]`

osg::LineSegment::LineSegment | ( | const LineSegment & | seg | ) | `[inline]`

osg::LineSegment::LineSegment | ( | const Vec3 & | s,
|  | const Vec3 & | e
| ) | `[inline]`

virtual osg::LineSegment::~LineSegment | ( |  | ) | `[protected, virtual]`

## Member Function Documentation

const Vec3& osg::LineSegment::end | ( |  | ) | const`[inline]`

Vec3& osg::LineSegment::end | ( |  | ) | `[inline]`

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

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

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 | ) | const

| return true if segment intersects BoundingSphere.

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 BoundingBox & | bb | ) | const

| return true if segment intersects BoundingBox.

bool osg::LineSegment::intersectAndClip | ( | Vec3 & | s,
|  | Vec3 & | e,
|  | const BoundingBox & | bb
| ) | `[static, protected]`

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

| pre multiply a segment by matrix.

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

| post multiply a segment by matrix.

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

void osg::LineSegment::set | ( | const Vec3 & | s,
|  | const Vec3 & | e
| ) | `[inline]`

const Vec3& osg::LineSegment::start | ( |  | ) | const`[inline]`

Vec3& osg::LineSegment::start | ( |  | ) | `[inline]`

bool osg::LineSegment::valid | ( |  | ) | const`[inline]`

## Member Data Documentation

Vec3 osg::LineSegment::_e`[protected]`

Vec3 osg::LineSegment::_s`[protected]`

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

- LineSegment