VR-Forces 4.7 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 (DtSimManager &simManager, const DtUUID &uuid, double distanceSquared)
 Constructor.
virtual ~DtEntityCollision ()
 Destructor.
virtual DtCollisionObjectType collisionType () const
 Returns DtEntityCollision;.
 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.
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.
bool testInvariant () const
void setSimulationManager (DtSimManager &simManager)
DtSimManagersimulationManager ()
const DtSimManagersimulationManager () const
- Public Member Functions inherited from DtCollision
 DtCollision ()
 Constructor.
virtual ~DtCollision ()
 Destructor.

Protected Attributes

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

Static Protected Attributes

static Dt3dBoundingVolume nullBoundingVolume
 Gets returned if myObject is NULL.

Detailed Description

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

Constructor & Destructor Documentation

DtEntityCollision::DtEntityCollision ( 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 ( DtSimManager simManager)
DtSimManager* DtEntityCollision::simulationManager ( )
const DtSimManager* DtEntityCollision::simulationManager ( ) const

Member Data Documentation

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

Does not own this. Just a convenience pointer.

Dt3dBoundingVolume DtEntityCollision::nullBoundingVolume
staticprotected

Gets returned if myObject is NULL.

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

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

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)