Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

BoundingLine Class Reference

#include <boundingLine.h>

Inheritance diagram for BoundingLine:

GeometricBoundingVolume BoundingVolume TypedReferenceCount TypedObject ReferenceCount List of all members.

Public Member Functions

virtual BoundingVolumemake_copy () const
virtual LPoint3f get_approx_center () const
virtual void xform (const LMatrix4f &mat)
virtual void output (ostream &out) const
INLINE_MATHUTIL LPoint3f get_point_b () const
virtual TypeHandle get_type () const
virtual TypeHandle force_init_type ()

Static Public Member Functions

TypeHandle get_class_type ()
void init_type ()

Public Attributes

PUBLISHED __pad1__: INLINE_MATHUTIL const LPoint3f &get_point_a() const

Protected Member Functions

virtual bool extend_other (BoundingVolume *other) const
virtual bool around_other (BoundingVolume *other, const BoundingVolume **first, const BoundingVolume **last) const
virtual int contains_other (const BoundingVolume *other) const
virtual bool extend_by_line (const BoundingLine *line)
virtual int contains_sphere (const BoundingSphere *sphere) const
float sqr_dist_to_line (const LPoint3f &point) const

Private Member Functions

INLINE_MATHUTIL BoundingLine (const LPoint3f &a, const LPoint3f &b)

Private Attributes

PUBLISHED __pad0__: INLINE_MATHUTIL BoundingLine()
LPoint3f _origin
LVector3f _vector

Static Private Attributes

TypeHandle _type_handle

Friends

class BoundingSphere

Constructor & Destructor Documentation

INLINE_MATHUTIL BoundingLine::BoundingLine const LPoint3f &  a,
const LPoint3f &  b
[private]
 

Referenced by make_copy().


Member Function Documentation

bool BoundingLine::around_other BoundingVolume other,
const BoundingVolume **  first,
const BoundingVolume **  last
const [protected, virtual]
 

Implements BoundingVolume.

Definition at line 71 of file boundingLine.cxx.

References BoundingVolume::around_lines(), and first.

int BoundingLine::contains_other const BoundingVolume other  )  const [protected, virtual]
 

Implements BoundingVolume.

Definition at line 78 of file boundingLine.cxx.

References BoundingVolume::contains_line().

int BoundingLine::contains_sphere const BoundingSphere sphere  )  const [protected, virtual]
 

Reimplemented from BoundingVolume.

Definition at line 99 of file boundingLine.cxx.

References BoundingSphere::get_radius(), BoundingVolume::is_empty(), BoundingVolume::is_infinite(), r, and sqr_dist_to_line().

Referenced by BoundingSphere::contains_line().

bool BoundingLine::extend_by_line const BoundingLine *  line  )  [protected, virtual]
 

Reimplemented from BoundingVolume.

Definition at line 84 of file boundingLine.cxx.

References BoundingVolume::_flags, _origin, _vector, BoundingVolume::F_infinite, BoundingVolume::is_empty(), and BoundingVolume::is_infinite().

bool BoundingLine::extend_other BoundingVolume other  )  const [protected, virtual]
 

Implements BoundingVolume.

Definition at line 66 of file boundingLine.cxx.

References BoundingVolume::extend_by_line().

virtual TypeHandle BoundingLine::force_init_type void   )  [inline, virtual]
 

Reimplemented from GeometricBoundingVolume.

Definition at line 84 of file boundingLine.h.

References GeometricBoundingVolume::get_class_type(), and GeometricBoundingVolume::init_type().

LPoint3f BoundingLine::get_approx_center  )  const [virtual]
 

Implements GeometricBoundingVolume.

Definition at line 33 of file boundingLine.cxx.

References get_point_b(), BoundingVolume::is_empty(), and BoundingVolume::is_infinite().

TypeHandle BoundingLine::get_class_type void   )  [inline, static]
 

Reimplemented from GeometricBoundingVolume.

Definition at line 73 of file boundingLine.h.

INLINE_MATHUTIL LPoint3f BoundingLine::get_point_b  )  const
 

Referenced by get_approx_center().

virtual TypeHandle BoundingLine::get_type void   )  const [inline, virtual]
 

Reimplemented from GeometricBoundingVolume.

Definition at line 81 of file boundingLine.h.

References GeometricBoundingVolume::get_class_type().

void BoundingLine::init_type void   )  [inline, static]
 

Reimplemented from GeometricBoundingVolume.

Definition at line 76 of file boundingLine.h.

References GeometricBoundingVolume::get_class_type(), GeometricBoundingVolume::init_type(), and register_type().

Referenced by ConfigureFn().

BoundingVolume * BoundingLine::make_copy  )  const [virtual]
 

Implements BoundingVolume.

Definition at line 28 of file boundingLine.cxx.

References BoundingLine().

void BoundingLine::output ostream &  out  )  const [virtual]
 

Implements BoundingVolume.

Definition at line 55 of file boundingLine.cxx.

References _origin, _vector, BoundingVolume::is_empty(), and BoundingVolume::is_infinite().

float BoundingLine::sqr_dist_to_line const LPoint3f &  point  )  const [protected]
 

Definition at line 113 of file boundingLine.cxx.

References _origin, _vector, cnan(), dot(), BoundingVolume::is_empty(), and BoundingVolume::is_infinite().

Referenced by contains_sphere().

void BoundingLine::xform const LMatrix4f &  mat  )  [virtual]
 

Implements GeometricBoundingVolume.

Definition at line 40 of file boundingLine.cxx.

References BoundingVolume::_flags, _origin, _vector, BoundingVolume::F_empty, BoundingVolume::is_empty(), and BoundingVolume::is_infinite().


Friends And Related Function Documentation

friend class BoundingSphere [friend]
 

Reimplemented from BoundingVolume.

Definition at line 89 of file boundingLine.h.


Member Data Documentation

PUBLISHED BoundingLine::__pad0__ [private]
 

Reimplemented from GeometricBoundingVolume.

Definition at line 39 of file boundingLine.h.

PUBLISHED BoundingLine::__pad1__
 

Definition at line 51 of file boundingLine.h.

LPoint3f BoundingLine::_origin [private]
 

Definition at line 68 of file boundingLine.h.

Referenced by extend_by_line(), output(), sqr_dist_to_line(), and xform().

TypeHandle BoundingLine::_type_handle [static, private]
 

Reimplemented from GeometricBoundingVolume.

Definition at line 25 of file boundingLine.cxx.

LVector3f BoundingLine::_vector [private]
 

Definition at line 69 of file boundingLine.h.

Referenced by extend_by_line(), output(), sqr_dist_to_line(), and xform().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:11:25 2003 for Panda by doxygen1.3