VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes | Static Protected Attributes
DtEntityCollision Class Reference

Holds all information associated with a (potential) collision with a vrfObject. More...

Inheritance diagram for DtEntityCollision:
Inheritance graph
[legend]

Public Member Functions

 DtEntityCollision (const DtSimManager &simManager, const DtUUID &uuid, double distanceSquared)
 Constructor. More...
 
virtual ~DtEntityCollision ()
 Destructor. More...
 
virtual DtCollisionObjectType collisionType () const
 Returns DtEntityCollision;. More...
 
 DtEntityCollision (const DtEntityCollision &original)
 
DtEntityCollisionoperator= (const DtEntityCollision &original)
 
bool operator== (const DtCollision &collision) const
 
bool operator!= (const DtCollision &collision) const
 
bool operator== (const DtEntityCollision &collision) const
 
bool operator!= (const DtEntityCollision &collision) const
 
bool valid () const
 
const DtUUIDobstructionEntityID () const
 
const DtStringobstructionMarking () const
 
void setObstructionEntityID (const DtUUID &entityID)
 
DtVector obstructionLocation () const
 
DtVector obstructionVelocity () const
 
bool intersectsPoint (const DtVector &localPosition) const
 
double largestDimensionInDirection (const DtVector &localDirection) const
 Given a direction vector in local coordinates, this function determines which corner of the bounding volume is farthest from the object origin in that direction, i.e. More...
 
const Dt3dBoundingVolume & obstructionBoundingVolume () const
 
Dt3dBoundingVolume & obstructionBoundingVolume ()
 
void setDistanceSquared (double distanceSquared)
 
double distanceSquared () const
 
virtual const DtDcm & obstructionLocalOrientationMatrix () const
 Adds to the distance...argument is a distance, not a distance-squared. More...
 
bool testInvariant () const
 
void setSimulationManager (const DtSimManager &simManager)
 
const DtSimManagersimulationManager () const
 
- Public Member Functions inherited from DtCollision
 DtCollision ()
 Constructor. More...
 
virtual ~DtCollision ()
 Destructor. More...
 

Protected Attributes

DtUUID myObstructionEntityID
 
const DtSimManagermySimulationManager
 Does not own this. Just a convenience pointer. More...
 
const DtVrfObjectmyObject
 
double myDistanceSquared
 

Static Protected Attributes

static Dt3dBoundingVolume nullBoundingVolume
 Gets returned if myObject is NULL. More...
 

Detailed Description

Holds all information associated with a (potential) collision with a vrfObject.

Constructor & Destructor Documentation

DtEntityCollision::DtEntityCollision ( const DtSimManager simManager,
const DtUUID uuid,
double  distanceSquared 
)

Constructor.

virtual DtEntityCollision::~DtEntityCollision ( )
virtual

Destructor.

DtEntityCollision::DtEntityCollision ( const DtEntityCollision original)

Member Function Documentation

virtual DtCollisionObjectType DtEntityCollision::collisionType ( ) const
virtual

Returns DtEntityCollision;.

Implements DtCollision.

DtEntityCollision& DtEntityCollision::operator= ( const DtEntityCollision original)
bool DtEntityCollision::operator== ( const DtCollision collision) const
virtual

Implements DtCollision.

bool DtEntityCollision::operator!= ( const DtCollision collision) const
virtual

Implements DtCollision.

bool DtEntityCollision::operator== ( const DtEntityCollision collision) const
bool DtEntityCollision::operator!= ( const DtEntityCollision collision) const
bool DtEntityCollision::valid ( ) const
virtual
Returns
A boolean signifying whether or not the collision object is still valid or not.

Implements DtCollision.

const DtUUID& DtEntityCollision::obstructionEntityID ( ) const
virtual

Implements DtCollision.

const DtString& DtEntityCollision::obstructionMarking ( ) const
void DtEntityCollision::setObstructionEntityID ( const DtUUID entityID)
virtual

Implements DtCollision.

DtVector DtEntityCollision::obstructionLocation ( ) const
virtual

Implements DtCollision.

DtVector DtEntityCollision::obstructionVelocity ( ) const
virtual

Implements DtCollision.

bool DtEntityCollision::intersectsPoint ( const DtVector localPosition) const
virtual

Implements DtCollision.

double DtEntityCollision::largestDimensionInDirection ( const DtVector localDirection) const

Given a direction vector in local coordinates, this function determines which corner of the bounding volume is farthest from the object origin in that direction, i.e.

if all of the bv vertices are projected onto a ray from the origin in the given direction, which one is farthest along the ray in the + direction.

const Dt3dBoundingVolume& DtEntityCollision::obstructionBoundingVolume ( ) const
virtual

Implements DtCollision.

Dt3dBoundingVolume& DtEntityCollision::obstructionBoundingVolume ( )
virtual

Implements DtCollision.

void DtEntityCollision::setDistanceSquared ( double  distanceSquared)
virtual

Implements DtCollision.

double DtEntityCollision::distanceSquared ( ) const
virtual

Implements DtCollision.

virtual const DtDcm& DtEntityCollision::obstructionLocalOrientationMatrix ( ) const
virtual

Adds to the distance...argument is a distance, not a distance-squared.

So if the distance is 7, then distanceSquared() will return 49; if addDistance(2) is then called, then after distanceSquared() will return 81. fixme

Implements DtCollision.

bool DtEntityCollision::testInvariant ( ) const
virtual

Implements DtCollision.

void DtEntityCollision::setSimulationManager ( const DtSimManager simManager)
const DtSimManager* DtEntityCollision::simulationManager ( ) const

Member Data Documentation

DtUUID DtEntityCollision::myObstructionEntityID
protected
const DtSimManager* DtEntityCollision::mySimulationManager
protected

Does not own this. Just a convenience pointer.

Dt3dBoundingVolume DtEntityCollision::nullBoundingVolume
staticprotected

Gets returned if myObject is NULL.

const DtVrfObject* DtEntityCollision::myObject
mutableprotected
double DtEntityCollision::myDistanceSquared
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)