VR-Forces 4.0.4 Class Documentation
Public Member Functions | Protected Member Functions | Protected Attributes
DtSimSector Class Reference

Description: DtSimSector is a readable/writable description of a sector of responsibility (center and size, both in radians), and some useful methods for using them. More...

Inheritance diagram for DtSimSector:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DtSimSector ()
 default constructor
 DtSimSector (const DtString &name, DtReaderWriterRegistry *parentRegistry=0)
 real constructor
 DtSimSector (const DtString &name, const DtSimSector &orig, DtReaderWriterRegistry *parentRegistry=0)
 copy constructor
const DtSimSectoroperator= (const DtSimSector &orig)
 assignment operator
virtual ~DtSimSector ()
virtual DtSimSectorclone (const DtString &name, DtReaderWriterRegistry *parentRegistry=0) const
virtual int operator== (const DtSimSector &rhs) const
 Returns 1 if sectors have the same size and same center; 0 otherwise.
virtual void setSector (DtReal center, DtReal size)
 This can be called each simulation frame with the entity's current sector information.
virtual DtReal sectorSize () const
 Size of the sector in radians.
virtual DtReal sectorCenter () const
 Center of the sector's center in radians.
virtual const DtVectorcenterVector () const
 Gives the center of the sector as a normalized vector in body coordinates.
virtual bool inSector (DtReal angle) const
 Is this angle within the sector.
virtual bool inSector (DtVector bodyVector) const
 Is this vector (body coordinates) in the sector.
virtual bool inSector (const DtVector &localPoint, const DtVector &parentLocation, const DtDcm &localToBody) const
 Is this point (world coordinates) in the sector.
virtual DtReal bodyToSector (DtReal angle) const
 Converts an angle in body coordinates to an angle in sector coordinates.
virtual DtReal sectorToBody (DtReal angle) const
 Converts an angle in sector coordinates to an angle in body coordinates.

Protected Member Functions

virtual void getSelf (DtlObjPtr args, const DtFilename &searchPath, const DtVariableBindingsList &variableBindings)
 Override, so that after read can call setSector to set up variables.

Protected Attributes

DtVector myCenterVector
DtReal myBodyToSectorOffset
DtReal myCosineHalfSectorSize
parameters

These parameters are available for setting in the OPD files.

DtRwReal mySectorCenter
 Parameter Name: sector-center
Parameter Description: Specifies the center of the sector of responsibility relative to the entity's orientation.
DtRwReal mySectorSize
 Parameter Name: sector-size
Parameter Description: Specifies the width of the sector of responsibility.

Detailed Description

Description: DtSimSector is a readable/writable description of a sector of responsibility (center and size, both in radians), and some useful methods for using them.

Everything is projected onto the <x y>=""> plane (local), so the sector actually functions as a volume extending infinitely in both z directions.


Constructor & Destructor Documentation

default constructor

DtSimSector::DtSimSector ( const DtString name,
DtReaderWriterRegistry parentRegistry = 0 
)

real constructor

DtSimSector::DtSimSector ( const DtString name,
const DtSimSector orig,
DtReaderWriterRegistry parentRegistry = 0 
)

copy constructor

virtual DtSimSector::~DtSimSector ( ) [virtual]

Member Function Documentation

const DtSimSector& DtSimSector::operator= ( const DtSimSector orig)

assignment operator

virtual DtSimSector* DtSimSector::clone ( const DtString name,
DtReaderWriterRegistry parentRegistry = 0 
) const [virtual]
virtual int DtSimSector::operator== ( const DtSimSector rhs) const [virtual]

Returns 1 if sectors have the same size and same center; 0 otherwise.

virtual void DtSimSector::setSector ( DtReal  center,
DtReal  size 
) [virtual]

This can be called each simulation frame with the entity's current sector information.

If it hasn't changed, the object will do nothing, but if it has, it will recalculate the sector vectors and bodyToSectorOffset. Values are in radians.

virtual DtReal DtSimSector::sectorSize ( ) const [virtual]

Size of the sector in radians.

virtual DtReal DtSimSector::sectorCenter ( ) const [virtual]

Center of the sector's center in radians.

virtual const DtVector& DtSimSector::centerVector ( ) const [virtual]

Gives the center of the sector as a normalized vector in body coordinates.

virtual bool DtSimSector::inSector ( DtReal  angle) const [virtual]

Is this angle within the sector.

virtual bool DtSimSector::inSector ( DtVector  bodyVector) const [virtual]

Is this vector (body coordinates) in the sector.

virtual bool DtSimSector::inSector ( const DtVector localPoint,
const DtVector parentLocation,
const DtDcm &  localToBody 
) const [virtual]

Is this point (world coordinates) in the sector.

virtual DtReal DtSimSector::bodyToSector ( DtReal  angle) const [virtual]

Converts an angle in body coordinates to an angle in sector coordinates.

virtual DtReal DtSimSector::sectorToBody ( DtReal  angle) const [virtual]

Converts an angle in sector coordinates to an angle in body coordinates.

virtual void DtSimSector::getSelf ( DtlObjPtr  args,
const DtFilename &  searchPath,
const DtVariableBindingsList variableBindings 
) [protected, virtual]

Override, so that after read can call setSector to set up variables.


Member Data Documentation

Parameter Name: sector-center
Parameter Description: Specifies the center of the sector of responsibility relative to the entity's orientation.


Parameter Default Value: 0
Parameter Units: radians

Parameter Name: sector-size
Parameter Description: Specifies the width of the sector of responsibility.


Parameter Default Value: 0
Parameter Units: radians


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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)