MPK::Segment Class Reference

#include <basic/geometry/MPK_Segment.h>

Inherits ObjectBase.

Inherited by GL_Segment.

Inheritance diagram for MPK::Segment:

Inheritance graph
[legend]
Collaboration diagram for MPK::Segment:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Segment (FrameManager *frameManager)
 Segment (const Segment &right)
virtual ~Segment ()
virtual Entity * Clone () const
virtual bool IsInterfering (const Entity *entity) const
virtual bool CanCheckInterference (const Entity *entity) const
virtual bool IsInterfering (const Segment *entity) const
void SetStart (const Vector4 &start)
void SetEnd (const Vector4 &end)
virtual bool IsInterfering (const MPK_Sphere *entity) const
virtual void Deserialize (istream &is)
virtual void Serialize (ostream &os) const
virtual bool Verify () const

Protected Attributes

Vector4 startPos
Vector4 endPos

Detailed Description

Definition at line 48 of file MPK_Segment.h.


Constructor & Destructor Documentation

Segment::Segment (  FrameManager *  frameManager  ) 
 

Definition at line 11 of file MPK_Segment.cpp.

Segment::Segment (  const Segment &  right  ) 
 

Definition at line 22 of file MPK_Segment.cpp.

Segment::~Segment (   )  [virtual]
 

Definition at line 37 of file MPK_Segment.cpp.


Member Function Documentation

bool Segment::CanCheckInterference (  const Entity *  entity  )  const [virtual]
 

Implements Entity.

Definition at line 78 of file MPK_Segment.cpp.

Entity * Segment::Clone (   )  const [virtual]
 

Implements ObjectBase.

Reimplemented in GL_Segment.

Definition at line 46 of file MPK_Segment.cpp.

References Segment::Segment().

Here is the call graph for this function:

void Segment::Deserialize (  istream &  is  )  [virtual]
 

Definition at line 239 of file MPK_Segment.cpp.

bool Segment::IsInterfering (  const MPK_Sphere *  entity  )  const [virtual]
 

Definition at line 198 of file MPK_Segment.cpp.

References Entity::BaseFrame(), Between(), Vector4::Dot(), Matrix4x4::Inverse(), Segment::p1, MPK_Sphere::Position(), and MPK_Sphere::Radius().

Here is the call graph for this function:

bool Segment::IsInterfering (  const Segment *  entity  )  const [virtual]
 

Definition at line 95 of file MPK_Segment.cpp.

References Entity::baseFrame, Between(), Vector4::Cross(), endPos, Vector4::MagSquared(), Segment::p1, Vector4::Projection(), Vector4::ProjectionMag(), and startPos.

Here is the call graph for this function:

bool Segment::IsInterfering (  const Entity *  entity  )  const [virtual]
 

Implements ObjectBase.

Definition at line 54 of file MPK_Segment.cpp.

void Segment::Serialize (  ostream &  os  )  const [virtual]
 

Definition at line 246 of file MPK_Segment.cpp.

void Segment::SetEnd (  const Vector4 &  end  ) 
 

Definition at line 191 of file MPK_Segment.cpp.

void Segment::SetStart (  const Vector4 &  start  ) 
 

Definition at line 184 of file MPK_Segment.cpp.

bool Segment::Verify (   )  const [virtual]
 

Implements ObjectBase.

Definition at line 254 of file MPK_Segment.cpp.


Member Data Documentation

Vector4 MPK::Segment::endPos [protected]
 

Definition at line 111 of file MPK_Segment.h.

Referenced by GL_Segment::DrawExplicit(), and IsInterfering().

Vector4 MPK::Segment::startPos [protected]
 

Definition at line 105 of file MPK_Segment.h.

Referenced by GL_Segment::DrawExplicit(), and IsInterfering().


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 22:07:59 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO