sofa::component::collision::LocalMinDistance Class Reference

#include <LocalMinDistance.h>

Inheritance diagram for sofa::component::collision::LocalMinDistance:

Inheritance graph
[legend]
Collaboration diagram for sofa::component::collision::LocalMinDistance:

Collaboration graph
[legend]

Public Member Functions

 LocalMinDistance ()
virtual void init ()
 Initialization method called at graph modification, during bottom-up traversal.
virtual bool useProximity () const
 returns true if algorithm uses proximity
double getAlarmDistance () const
 Return the alarm distance (must return 0 if useMinProximity() is false).
double getContactDistance () const
 Return the contact distance (must return 0 if useMinProximity() is false).
void setAlarmDistance (double v)
void setContactDistance (double v)
bool testIntersection (Cube &, Cube &)
bool testIntersection (Point &, Point &)
bool testIntersection (Sphere &, Point &)
bool testIntersection (Sphere &, Sphere &)
bool testIntersection (Line &, Point &)
bool testIntersection (Line &, Sphere &)
bool testIntersection (Line &, Line &)
bool testIntersection (Triangle &, Point &)
bool testIntersection (Triangle &, Sphere &)
bool testIntersection (Ray &, Sphere &)
bool testIntersection (Ray &, Triangle &)
int computeIntersection (Cube &, Cube &, OutputVector *)
int computeIntersection (Point &, Point &, OutputVector *)
int computeIntersection (Sphere &, Point &, OutputVector *)
int computeIntersection (Sphere &, Sphere &, OutputVector *)
int computeIntersection (Line &, Point &, OutputVector *)
int computeIntersection (Line &, Sphere &, OutputVector *)
int computeIntersection (Line &, Line &, OutputVector *)
int computeIntersection (Triangle &, Point &, OutputVector *)
int computeIntersection (Triangle &, Sphere &, OutputVector *)
int computeIntersection (Ray &, Sphere &, OutputVector *)
int computeIntersection (Ray &, Triangle &, OutputVector *)
bool testValidity (Point &, const Vector3 &)
 These methods check the validity of a found intersection.
bool testValidity (Line &, const Vector3 &)
bool testValidity (Triangle &, const Vector3 &)
void draw ()
 Render internal data of this object, for debugging purposes.

Data Fields

Data< double > alarmDistance
Data< double > contactDistance
Data< double > angleCone
Data< double > coneFactor

Private Attributes

double mainAlarmDistance
double mainContactDistance

Detailed Description

Definition at line 46 of file LocalMinDistance.h.


Constructor & Destructor Documentation

sofa::component::collision::LocalMinDistance::LocalMinDistance (  ) 

Definition at line 62 of file LocalMinDistance.cpp.


Member Function Documentation

int sofa::component::collision::LocalMinDistance::computeIntersection ( Ray &  t1,
Triangle &  t2,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Ray &  ,
Sphere &  ,
OutputVector *   
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Triangle &  e2,
Sphere &  e1,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Triangle &  e2,
Point &  e1,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Line &  e1,
Line &  e2,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Line &  e2,
Sphere &  e1,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Line &  e2,
Point &  e1,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Sphere &  ,
Sphere &  ,
OutputVector *   
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Sphere &  e1,
Point &  e2,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Point &  e1,
Point &  e2,
OutputVector *  contacts 
)

int sofa::component::collision::LocalMinDistance::computeIntersection ( Cube &  ,
Cube &  ,
OutputVector *   
)

Todo:

Reimplemented from sofa::component::collision::DiscreteIntersection.

Definition at line 110 of file LocalMinDistance.cpp.

void sofa::component::collision::LocalMinDistance::draw (  )  [virtual]

Render internal data of this object, for debugging purposes.

Reimplemented from sofa::core::objectmodel::BaseObject.

Definition at line 968 of file LocalMinDistance.cpp.

References sofa::core::objectmodel::BaseObject::getContext().

double sofa::component::collision::LocalMinDistance::getAlarmDistance (  )  const [inline, virtual]

Return the alarm distance (must return 0 if useMinProximity() is false).

Reimplemented from sofa::core::componentmodel::collision::Intersection.

Definition at line 66 of file LocalMinDistance.h.

References alarmDistance, and sofa::core::objectmodel::Data< T >::getValue().

Referenced by computeIntersection(), and testIntersection().

double sofa::component::collision::LocalMinDistance::getContactDistance (  )  const [inline, virtual]

Return the contact distance (must return 0 if useMinProximity() is false).

Reimplemented from sofa::core::componentmodel::collision::Intersection.

Definition at line 69 of file LocalMinDistance.h.

References contactDistance, and sofa::core::objectmodel::Data< T >::getValue().

Referenced by computeIntersection().

void sofa::component::collision::LocalMinDistance::init ( void   )  [virtual]

void sofa::component::collision::LocalMinDistance::setAlarmDistance ( double  v  )  [inline]

void sofa::component::collision::LocalMinDistance::setContactDistance ( double  v  )  [inline]

bool sofa::component::collision::LocalMinDistance::testIntersection ( Ray &  t1,
Triangle &  t2 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Ray &  ,
Sphere &   
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Triangle &  e2,
Sphere &  e1 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Triangle &  e2,
Point &  e1 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Line &  e1,
Line &  e2 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Line &  e2,
Sphere &  e1 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Line &  e2,
Point &  e1 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Sphere &  ,
Sphere &   
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Sphere &  e1,
Point &  e2 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Point &  e1,
Point &  e2 
)

bool sofa::component::collision::LocalMinDistance::testIntersection ( Cube &  cube1,
Cube &  cube2 
)

bool sofa::component::collision::LocalMinDistance::testValidity ( Triangle &  t,
const Vector3 &  PQ 
)

bool sofa::component::collision::LocalMinDistance::testValidity ( Line &  l,
const Vector3 &  PQ 
)

bool sofa::component::collision::LocalMinDistance::testValidity ( Point &  p,
const Vector3 &  PQ 
)

virtual bool sofa::component::collision::LocalMinDistance::useProximity (  )  const [inline, virtual]

returns true if algorithm uses proximity

Reimplemented from sofa::core::componentmodel::collision::Intersection.

Definition at line 63 of file LocalMinDistance.h.


Field Documentation

Definition at line 51 of file LocalMinDistance.h.

Referenced by getAlarmDistance(), and setAlarmDistance().

Definition at line 54 of file LocalMinDistance.h.

Referenced by testValidity().

Definition at line 55 of file LocalMinDistance.h.

Referenced by testValidity().

Definition at line 52 of file LocalMinDistance.h.

Referenced by getContactDistance(), and setContactDistance().

Definition at line 111 of file LocalMinDistance.h.

Definition at line 112 of file LocalMinDistance.h.


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

Generated on Sun Nov 23 04:17:30 2008 for Sofa by  doxygen 1.5.7.1