OpenSceneGraph
3.0.1
|
LineSegment class for representing a line segment. More...
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) | |
LineSegment & | operator= (const LineSegment &seg) |
void | set (const vec_type &s, const vec_type &e) |
vec_type & | start () |
const vec_type & | start () const |
vec_type & | end () |
const vec_type & | 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 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. | |
![]() | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
Set whether to use a mutex to ensure ref() and unref() are thread safe. | |
bool | getThreadSafeRefUnref () const |
Get whether a mutex is used to ensure ref() and unref() are thread safe. | |
OpenThreads::Mutex * | getRefMutex () const |
Get the mutex used to ensure thread safety of ref()/unref(). | |
int | ref () const |
Increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
int | unref () const |
Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
int | unref_nodelete () const |
Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
int | referenceCount () const |
Return the number of pointers currently referencing this object. | |
ObserverSet * | getObserverSet () const |
Get the ObserverSet if one is attached, otherwise return NULL. | |
ObserverSet * | getOrCreateObserverSet () const |
Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. | |
void | addObserver (Observer *observer) const |
Add a Observer that is observing this object, notify the Observer when this object gets deleted. | |
void | removeObserver (Observer *observer) const |
Remove Observer that is observing this object. |
Protected Member Functions | |
virtual | ~LineSegment () |
![]() | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Static Protected Member Functions | |
static bool | intersectAndClip (vec_type &s, vec_type &e, const BoundingBox &bb) |
Protected Attributes | |
vec_type | _s |
vec_type | _e |
![]() | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
Additional Inherited Members | |
![]() | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
Get the optional global Referenced mutex, this can be shared between all osg::Referenced. | |
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
Set whether reference counting should use a mutex for thread safe reference counting. | |
static bool | getThreadSafeReferenceCounting () |
Get whether reference counting is active. | |
static void | setDeleteHandler (DeleteHandler *handler) |
Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. | |
static DeleteHandler * | getDeleteHandler () |
Get a DeleteHandler. |
LineSegment class for representing a line segment.
typedef Vec3d osg::LineSegment::vec_type |
|
inline |
|
inline |
|
protectedvirtual |
|
inline |
|
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 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.
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.
|
staticprotected |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
Referenced by mult(), and operator=().
|
protected |
Referenced by mult(), and operator=().
![]() | Generated at Mon Oct 8 2012 23:50:02 for the OpenSceneGraph by doxygen 1.8.1.1. |