CD_Vcollide Class Reference

#include <collisiondetectors/CD_Vcollide.h>

Inherits CD_BasicStyle, and CD_LinearContinuous.

Inheritance diagram for CD_Vcollide:

Inheritance graph
[legend]
Collaboration diagram for CD_Vcollide:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 CD_Vcollide (Universe &universe)
 CD_Vcollide (const CD_Vcollide &right)
virtual ~CD_Vcollide ()
virtual CollisionDetectorBaseClone () const
virtual bool IsInterfering (const Configuration &config)
virtual bool IsInterfering (const Frame &pose)
bool AddEntityToVcollide (const Entity *entity)
int AddMeshToVcollide (const Mesh &mesh)
void DeactivateFrames (const unsigned int frame1, const unsigned int frame2)
void ActivateFrames (const unsigned int frame1, const unsigned int frame2)

Public Attributes

std::vector< Mesh * > meshes

Protected Member Functions

void UpdateMovedLink (const unsigned int linkNum) const

Protected Attributes

VCollide * vcollide
std::set< unsigned int > dirtyElements
std::vector< std::set< unsigned
int > > 
linkVcollide
std::vector< int > vcollideIndexes

Private Attributes

UniverseuniversePointer

Detailed Description

Definition at line 55 of file CD_Vcollide.h.


Constructor & Destructor Documentation

CD_Vcollide::CD_Vcollide Universe universe  ) 
 

Definition at line 15 of file CD_Vcollide.cpp.

References AddEntityToVcollide(), CD_BasicStyle::entities, CD_BasicStyle::theFrameManager, and vcollide.

Referenced by Clone().

Here is the call graph for this function:

CD_Vcollide::CD_Vcollide const CD_Vcollide right  ) 
 

Definition at line 64 of file CD_Vcollide.cpp.

References AddEntityToVcollide(), meshes, and vcollide.

Here is the call graph for this function:

CD_Vcollide::~CD_Vcollide  )  [virtual]
 

Definition at line 96 of file CD_Vcollide.cpp.

References meshes.


Member Function Documentation

void CD_Vcollide::ActivateFrames const unsigned int  frame1,
const unsigned int  frame2
[virtual]
 

Reimplemented from CD_BasicStyle.

Definition at line 383 of file CD_Vcollide.cpp.

References CD_BasicStyle::ActivateFrames(), CD_BasicStyle::FramePairPermEnabled(), linkVcollide, and vcollide.

Here is the call graph for this function:

bool CD_Vcollide::AddEntityToVcollide const Entity entity  ) 
 

Definition at line 223 of file CD_Vcollide.cpp.

References Entity::BaseFrame(), and linkVcollide.

Referenced by CD_Vcollide().

Here is the call graph for this function:

int CD_Vcollide::AddMeshToVcollide const Mesh mesh  ) 
 

Definition at line 273 of file CD_Vcollide.cpp.

References Mesh::Clone(), Mesh::GetFacets(), Mesh::GetVertexes(), meshes, and vcollide.

Here is the call graph for this function:

CollisionDetectorBase * CD_Vcollide::Clone  )  const [virtual]
 

Implements CD_BasicStyle.

Definition at line 127 of file CD_Vcollide.cpp.

References CD_Vcollide().

Referenced by CD_Range_Sensor::CD_Range_Sensor().

Here is the call graph for this function:

void CD_Vcollide::DeactivateFrames const unsigned int  frame1,
const unsigned int  frame2
[virtual]
 

Reimplemented from CD_BasicStyle.

Definition at line 333 of file CD_Vcollide.cpp.

References CD_BasicStyle::DeactivateFrames(), linkVcollide, and vcollide.

Here is the call graph for this function:

bool CD_Vcollide::IsInterfering const Frame pose  )  [virtual]
 

Definition at line 183 of file CD_Vcollide.cpp.

References Semaphore::Lock(), meshes, and vcollideIndexes.

Here is the call graph for this function:

bool CD_Vcollide::IsInterfering const Configuration config  )  [virtual]
 

Implements CD_Bool.

Definition at line 137 of file CD_Vcollide.cpp.

References CD_Bool::IncrementCallCount(), Semaphore::Lock(), meshes, CD_BasicStyle::SetConfiguration(), Matrix4x4::values, vcollide, and vcollideIndexes.

Referenced by CD_Range_Sensor::IsInterfering().

Here is the call graph for this function:

void CD_Vcollide::UpdateMovedLink const unsigned int  linkNum  )  const [protected]
 

Definition at line 375 of file CD_Vcollide.cpp.

References CD_BasicStyle::links.


Member Data Documentation

std::set< unsigned int > CD_Vcollide::dirtyElements [protected]
 

Definition at line 125 of file CD_Vcollide.h.

std::vector< std::set< unsigned int > > CD_Vcollide::linkVcollide [protected]
 

Definition at line 132 of file CD_Vcollide.h.

Referenced by ActivateFrames(), AddEntityToVcollide(), and DeactivateFrames().

std::vector<Mesh*> CD_Vcollide::meshes
 

Definition at line 103 of file CD_Vcollide.h.

Referenced by AddMeshToVcollide(), CD_Vcollide(), IsInterfering(), and ~CD_Vcollide().

Universe* CD_Vcollide::universePointer [private]
 

Definition at line 149 of file CD_Vcollide.h.

VCollide* CD_Vcollide::vcollide [mutable, protected]
 

Definition at line 120 of file CD_Vcollide.h.

Referenced by ActivateFrames(), AddMeshToVcollide(), CD_Vcollide(), DeactivateFrames(), and IsInterfering().

std::vector< int > CD_Vcollide::vcollideIndexes [protected]
 

Definition at line 137 of file CD_Vcollide.h.

Referenced by IsInterfering().


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