VR-Link API Documentation for HLA 1.3
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
DtGeodeticRegion Class Reference

DtGeodeticRegion. More...

+ Inheritance diagram for DtGeodeticRegion:
+ Collaboration diagram for DtGeodeticRegion:

Public Member Functions

 DtGeodeticRegion (DtExerciseConn *exConn)
 Constructor that uses default space and dimensions.
 DtGeodeticRegion (DtExerciseConn *exConn, const std::vector< DtString > &dimensionNamesVector)
 Constructor.
 DtGeodeticRegion (DtExerciseConn *conn, const std::vector< DtString > &dimensionNamesVector, const DtGeodeticCoord &ddmPlayboxLowerBound, const DtGeodeticCoord &ddmPlayboxUpperBound)
 Constructor that takes coordinates.
virtual ~DtGeodeticRegion ()
 Destructor.
virtual void setRegionBounds (const DtGeodeticCoord &lowerBound, const DtGeodeticCoord &upperBound)
 Set the bounds of the region to those specified by the two Geodetic points.
virtual void setRegionBounds (const DtVector &point, double metersNorth, double metersEast)
 Set the bounds of the region a specific number of meters east of the geocentric point and a specific number of meters north of the geocentric point.
virtual void setApproximateUpdateTime (DtTime updateTime)
 Set the approximate update time.
virtual DtTime approximateUpdateTime () const
 Get the approximate update time.
virtual void updateRegionWithVelocity (const DtVector &geocentricPosition, const DtVector &geocentricVelocity)
 Updates the region according to the entity's position, velocity, and approximate update time.
virtual bool needToUpdateRegion (const DtVector &geocentricPosition) const
 Determines whether region should be updated based on current position.
- Public Member Functions inherited from DtDDMRegion
 DtDDMRegion (DtExerciseConn *exConn)
 Constructor that only takes the exConn.
 DtDDMRegion (DtExerciseConn *exConn, const DtString &spaceName, int numberOfExtents=1)
 Constructor with space specified.
 DtDDMRegion (DtExerciseConn *exConn, const DtString &spaceName, const std::vector< DtString > &dimensionNameVector, int numberOfExtents=1)
 Constructor with space and dimensions specified.
 DtDDMRegion (DtExerciseConn *exConn, const RTI::Region &region)
 Constructor that initializes VR-Link object from RTI 13 Region pointer.
 DtDDMRegion (const DtDDMRegion &orig)
 Copy constructor.
virtual ~DtDDMRegion ()
 Destructor.
virtual void initializeDimensions (const std::vector< DtString > &dimensionNameVector)
 Sets up the region for the dimensions specified by name in dimensionNameList.
virtual void setUpperBound (const DtString &dimensionName, unsigned long upperBound, int extentIndex=0)
 This method sets the upper bound of dimension, specified by dimensionName, to the normalized value specified by upperBound.
virtual void setLowerBound (const DtString &dimensionName, unsigned long lowerBound, int extentIndex=0)
 This method sets the lower bound of the dimension, specified by dimensionName, to the normalized value specified by lowerBound.
virtual void setDimensionBounds (const DtString &dimensionName, unsigned long lowerBound, unsigned long upperBound, int extentIndex=0)
virtual void notifyRtiOfUpdate ()
void init (const DtString &spaceName, const std::vector< DtString > &dimensionNameVector, int numberOfExtents=1)
 Initialize the region with the name a dimensions specified.
virtual const RTI::Region * region () const
 Returns the RTI region.
virtual RTI::Region * region ()
virtual void addAttributeHandle (RTI::AttributeHandle handle)
virtual void addAttributeHandle (const DtString &objClassName, const DtString &attrName)
 Add an attribute to the handle set by class name/attribute name.
virtual int attributeHandleCount () const
virtual const
RTI::AttributeHandleSet & 
attributeHandles () const
virtual bool hasAttributeHandles () const
DtDDMRegionoperator= (const DtDDMRegion &orig)
 Assignment operator.

Protected Member Functions

 DtGeodeticRegion (const DtGeodeticRegion &orig)
 Copy constructor not implemented. Not copyable.
const DtGeodeticRegionoperator= (const DtGeodeticRegion &orig)
 Assignment operator not implemented. Not assignable.

Protected Attributes

DtGeodeticNormalizermyNormalizer
DtTime myApproximateUpdateTime
double myNorthSouthThreshold
 These values are used to compute whether we need to update the region or not.
double myEastWestThreshold
DtVector myLastLocation
 This stores the entity's last known location.
DtCoordTransform myLastGeocToTopoTransform
 This stores the transformation matrix used the last time the region was updated.
- Protected Attributes inherited from DtDDMRegion
RTI::Region * myRegion
DtVrlRtiAmbassadormyRtiAmb
std::map< DtString,
RTI::DimensionHandle > 
myDimensionMap
RTI::SpaceHandle mySpaceHandle
DtExerciseConnmyExConn
RTI::AttributeHandleSet * myAttributeHandles

Detailed Description

DtGeodeticRegion.

DtGeodeticRegion defines a geographic region with two dimensions.

DtGeodeticRegion extends the DtDDMRegion class to construct a region with two dimensions, "X" and "Y," that correspond to the longitude and latitude of the earth, respectively. The class provides member functions that take geodetic coordinates and construct/move a region based on them.

Constructor & Destructor Documentation

DtGeodeticRegion::DtGeodeticRegion ( DtExerciseConn exConn)

Constructor that uses default space and dimensions.

Creates a region in the space "BenchmarkGeographicSpace" (in 1.3) with the dimensions "X" and "Y." These are the defaults for the geographic DDM mechanism within VR-Link. If the region is constructed with this constructor, the play-box is set to the parameters set within the exercise connection.

Exceptions
DtExceptionif a region cannot be created
DtGeodeticRegion::DtGeodeticRegion ( DtExerciseConn exConn,
const std::vector< DtString > &  dimensionNamesVector 
)

Constructor.

If the region is constructed with this constructor, the play-box is set to the parameters set within the exercise connection.

Exceptions
DtExceptionthe dimensions cannot be initialized or the region cannot be created
DtGeodeticRegion::DtGeodeticRegion ( DtExerciseConn conn,
const std::vector< DtString > &  dimensionNamesVector,
const DtGeodeticCoord ddmPlayboxLowerBound,
const DtGeodeticCoord ddmPlayboxUpperBound 
)

Constructor that takes coordinates.

If the region is constructed with this constructor, the play-box is set to the points specified.

Exceptions
DtExceptionthe dimensions cannot be initialized or the region cannot be created
virtual DtGeodeticRegion::~DtGeodeticRegion ( )
virtual

Destructor.

DtGeodeticRegion::DtGeodeticRegion ( const DtGeodeticRegion orig)
protected

Copy constructor not implemented. Not copyable.

Member Function Documentation

virtual DtTime DtGeodeticRegion::approximateUpdateTime ( ) const
virtual

Get the approximate update time.

Returns
The update time in seconds.
virtual bool DtGeodeticRegion::needToUpdateRegion ( const DtVector geocentricPosition) const
virtual

Determines whether region should be updated based on current position.

Returns true if region should be updated and false otherwise.

const DtGeodeticRegion& DtGeodeticRegion::operator= ( const DtGeodeticRegion orig)
protected

Assignment operator not implemented. Not assignable.

virtual void DtGeodeticRegion::setApproximateUpdateTime ( DtTime  updateTime)
virtual

Set the approximate update time.

This is used to determine whether the region should be updated based on the approximate time the user wants the region updated and the velocity of the entity within the region. This is only applicable to regions for published entities.

Parameters
updateTimeThe update time in seconds.
virtual void DtGeodeticRegion::setRegionBounds ( const DtGeodeticCoord lowerBound,
const DtGeodeticCoord upperBound 
)
virtual

Set the bounds of the region to those specified by the two Geodetic points.

virtual void DtGeodeticRegion::setRegionBounds ( const DtVector point,
double  metersNorth,
double  metersEast 
)
virtual

Set the bounds of the region a specific number of meters east of the geocentric point and a specific number of meters north of the geocentric point.

virtual void DtGeodeticRegion::updateRegionWithVelocity ( const DtVector geocentricPosition,
const DtVector geocentricVelocity 
)
virtual

Updates the region according to the entity's position, velocity, and approximate update time.

Member Data Documentation

DtTime DtGeodeticRegion::myApproximateUpdateTime
protected
double DtGeodeticRegion::myEastWestThreshold
protected
DtCoordTransform DtGeodeticRegion::myLastGeocToTopoTransform
protected

This stores the transformation matrix used the last time the region was updated.

This is used to determine when the region should be updated.

DtVector DtGeodeticRegion::myLastLocation
protected

This stores the entity's last known location.

This is set when updateRegionWithVelocity is called

DtGeodeticNormalizer* DtGeodeticRegion::myNormalizer
protected
double DtGeodeticRegion::myNorthSouthThreshold
protected

These values are used to compute whether we need to update the region or not.


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

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)