VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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. More...
 
 DtGeodeticRegion (DtExerciseConn *exConn, const std::vector< DtString > &dimensionNamesVector)
 Constructor. More...
 
 DtGeodeticRegion (DtExerciseConn *conn, const std::vector< DtString > &dimensionNamesVector, const DtGeodeticCoord &ddmPlayboxLowerBound, const DtGeodeticCoord &ddmPlayboxUpperBound)
 Constructor that takes coordinates. More...
 
virtual ~DtGeodeticRegion ()
 Destructor. More...
 
virtual void setRegionBounds (const DtGeodeticCoord &lowerBound, const DtGeodeticCoord &upperBound)
 Set the bounds of the region to those specified by the two Geodetic points. More...
 
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. More...
 
virtual void setApproximateUpdateTime (DtTime updateTime)
 Set the approximate update time. More...
 
virtual DtTime approximateUpdateTime () const
 Get the approximate update time. More...
 
virtual void updateRegionWithVelocity (const DtVector &geocentricPosition, const DtVector32 &geocentricVelocity)
 Updates the region according to the entity's position, velocity, and approximate update time. More...
 
virtual bool needToUpdateRegion (const DtVector &geocentricPosition) const
 Determines whether region should be updated based on current position. More...
 
- Public Member Functions inherited from DtDDMRegion
 DtDDMRegion (DtExerciseConn *exConn)
 Constructor that creates empty shell. More...
 
 DtDDMRegion (DtExerciseConn *exConn, const std::vector< DtString > &dimensionNameVector)
 Constructor that uses specified dimensions to create RTI region. More...
 
virtual ~DtDDMRegion ()
 Destructor. More...
 
virtual void init (const std::vector< DtString > &dimensionNameVector)
 Initialize the dimensions and create the RTI region. More...
 
virtual void initializeDimensions (const std::vector< DtString > &dimensionNameVector)
 Initializes the specified dimensions. More...
 
virtual void initializeDimensions (const RTI::DimensionHandleSet &dimHandles)
 Initialize the internal mapping using the specified dimension handles. More...
 
virtual void setUpperBound (const DtString &dimensionName, unsigned long upperBound)
 This method sets the upper bound of dimension, specified by dimensionName, to the normalized value specified by upperBound. More...
 
virtual void setLowerBound (const DtString &dimensionName, unsigned long lowerBound)
 This method sets the lower bound of the dimension, specified by dimensionName, to the normalized value specified by lowerBound. More...
 
virtual void setDimensionBounds (const DtString &dimensionName, unsigned long lowerBound, unsigned long upperBound)
 This method sets the lower and upper bounds of the dimension, specified by dimensionName, to the normalized value specified by bounds. More...
 
virtual void notifyRtiOfUpdate ()
 Notify the RTI of changes to the region's extents This function will only act if a dimension has actually changed. More...
 
virtual void addAttributeHandle (RTI::AttributeHandle handle)
 Add an attribute to the handle to the attributes associated with this region. More...
 
virtual void addAttributeHandle (const DtString &objClassName, const DtString &attrName)
 Add an attribute to the handle to the attributes associated with this region. More...
 
virtual const
RTI::AttributeHandleSet & 
attributeHandles () const
 Retrieve the attribute handle set associated with this region. More...
 
virtual int attributeHandleCount () const
 Number of attributes associated with this region. More...
 
virtual bool hasAttributeHandles () const
 Indicates if attributes have been associated with this region. More...
 
virtual RTI::RegionHandle regionHandle ()
 Access to the RTI region representation. More...
 
virtual const RTI::RegionHandle regionHandle () const
 Access to the RTI region representation. More...
 

Protected Member Functions

 DtGeodeticRegion (const DtGeodeticRegion &orig)
 Copy constructor not implemented. Not copyable. More...
 
const DtGeodeticRegionoperator= (const DtGeodeticRegion &orig)
 Assignment operator not implemented. Not assignable. More...
 
- Protected Member Functions inherited from DtDDMRegion
virtual void createRegion ()
 Utility function that actually creates the region and stores the handle. More...
 
 DtDDMRegion (const DtDDMRegion &orig)
 Copy constructor – Not implemented – not allowed. More...
 
DtDDMRegionoperator= (const DtDDMRegion &orig)
 Assignment operator. Not implemented – not assignable. More...
 

Protected Attributes

DtGeodeticNormalizermyNormalizer
 
DtTime myApproximateUpdateTime
 
double myNorthSouthThreshold
 These values are used to compute whether we need to update the region or not. More...
 
double myEastWestThreshold
 
DtVector myLastLocation
 This stores the entity's last known location. More...
 
DtCoordTransform myLastGeocToTopoTransform
 This stores the transformation matrix used the last time the region was updated. More...
 
- Protected Attributes inherited from DtDDMRegion
RTI::RegionHandle myRegionHandle
 
DtVrlRtiAmbassadormyRtiAmb
 
std::map< DtString,
DtDimensionHandleBoundsStruct
myDimensionMap
 
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 DtVector32 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 Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)