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

This terrain implementation is an algorithmic representation of the world as a bald ellipsoid defined by WGS84. More...

Inheritance diagram for DtEllipsoidTerrainImplementation:
Inheritance graph
[legend]

Public Member Functions

 DtEllipsoidTerrainImplementation (DtConsoleCommandManager *cmdMgr)
virtual ~DtEllipsoidTerrainImplementation ()
virtual bool loadTerrain (const makArchives::DtGenericTerrainRecord &record)
 Loads a terrain given the terrain record.
virtual const Coordinate_SystemcoordinateSystem () const
virtual bool chordIntersect (const DtChord &chord, DtChordIntersectionRecord &record, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false, int flags=0) const
 Returns topmost intersection of chord with terrain in record.
virtual bool allIntersectsAlongChord (const DtChord &chord, DtChordIntersectRecordList &intList, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false, int flags=0) const
 Returns all intersections of chord with terrain.
virtual const
DtTerrainCapabilities
terrainCapabilities () const
virtual void processTrianglesInArea (DtTriangleCallbackFcn func, DtTriangleCallbackFinalizeFcn finalize, const DtTerrainProcessPolygonsBox &box, void *usr)
- Public Member Functions inherited from DtTerrainImplementation
 DtTerrainImplementation (DtConsoleCommandManager *cmdManager)
virtual ~DtTerrainImplementation ()
virtual
MAKVRinTerra::DtFeatureDatabase
featureDatabase ()
 Access feature database.
virtual const
MAKVRinTerra::DtFeatureDatabase
featureDatabase () const
virtual
MAKVRinTerra::DtFeatureContext
featureContext ()
 Access feature context.
virtual const
MAKVRinTerra::DtFeatureContext
featureContext () const
virtual void init ()
 Called immediately after creation.
virtual void finishedLoading (const MAKVRinTerra::DtProj &proj)
 Called after terrain loaded successfully.
virtual void shutdown (bool block=true)
 Shutdown the terrain.
virtual double modelHeightDifferencesFromAppearances (int oldApp, int newApp) const
 If supported by the implementation, return the height difference from the currently loaded model as a transition from the old appearance to the new appearance.
virtual bool createFromExtent (const Dt3dBoundingVolume &)
 Creates an extent from the given extent. Not all implementations will support this.
virtual bool loadModel (const DtFilename &, const DtEntityType &t=DtEntityType())
 Defaults to loading terrain for gdb.
virtual DtTerrainInterfaceConfigconfigurationOptions ()
virtual const
DtTerrainInterfaceConfig
configurationOptions () const
virtual void preloadTerrainAreas (const DtTerrainPagingGeometryList &preloadGeometry)
 Specifies a list of terrain areas that should be preloaded by the terrain implementation, in the case of a paging or streaming terrain source.
virtual void setIntersectDataLoadExpireTime (const double &expireTime)
 No-op.
virtual void expireDataLoadRequestsBeforeTime (const double &currentTime)
 No-op.
virtual void processTrianglesInArea (DtTriangleCallbackFcn func, DtTriangleCallbackFinalizeFcn finalize, DtTerrainProcessPolygonsBox &box, void *usr) const
virtual void breakUpChords (const MAKVRinTerra::DtProj &, const DtChord &chord, std::vector< DtChord > &chords)
virtual bool hasFeatureContext () const
 Returns true if there is an active feature context.
virtual void setAssertOnBlockingTerrainCalls (bool assertBlock)
 Determines if an exception should be thrown if a blocking terrain call is made.
virtual bool assertOnBlockingTerrainCalls () const
 Determines if an exception should be thrown if a blocking terrain call is made.
virtual void setWarnOnBlockingTerrainCalls (bool warnBlock)
 Determines if a warning should be printed out if a blocking terrain call is made.
virtual bool warnOnBlockingTerrainCalls () const
 Determines if a warning should be printed out if a blocking terrain call is made.

Static Public Member Functions

static DtTerrainImplementationcreate (DtConsoleCommandManager *cmdMgr)

Protected Member Functions

void fillHitRecord (DtChordIntersectionRecord &rec, const DtChord &chord, const DtPoint &chordNormal, double intersectTime, DtIntersectionRecord::DtIntersectionType irtFlag) const
bool chordEllipsoidIntersect (const DtChord &chord, DtChordIntersectionRecord &hit1, DtChordIntersectionRecord &hit2, DtIntersectionRecord::DtIntersectionType irtFlag) const

Protected Attributes

Coordinate_SystemmyCoordinateSystem
DtTerrainCapabilities myCapabilities
- Protected Attributes inherited from DtTerrainImplementation
DtTerrainInterfaceConfig myConfig
bool myAssertOnBlockingTerrainCalls
 Determines if an exception should be thrown if a blocking terrain call is made.
bool myWarnOnBlockingTerrainCalls
boost::scoped_ptr
< MAKVRinTerra::DtFeatureDatabase
myFeatureDatabase
boost::scoped_ptr
< MAKVRinTerra::DtFeatureContext
myFeatureContext

Detailed Description

This terrain implementation is an algorithmic representation of the world as a bald ellipsoid defined by WGS84.

All soil types are returned as the undefined soil type.

Constructor & Destructor Documentation

DtEllipsoidTerrainImplementation::DtEllipsoidTerrainImplementation ( DtConsoleCommandManager cmdMgr)
virtual DtEllipsoidTerrainImplementation::~DtEllipsoidTerrainImplementation ( )
virtual

Member Function Documentation

static DtTerrainImplementation* DtEllipsoidTerrainImplementation::create ( DtConsoleCommandManager cmdMgr)
static
virtual bool DtEllipsoidTerrainImplementation::loadTerrain ( const makArchives::DtGenericTerrainRecord rec)
virtual

Loads a terrain given the terrain record.

Implements DtTerrainImplementation.

virtual const Coordinate_System* DtEllipsoidTerrainImplementation::coordinateSystem ( ) const
virtual
virtual bool DtEllipsoidTerrainImplementation::chordIntersect ( const DtChord chord,
DtChordIntersectionRecord record,
DtIntersectionRecord::DtIntersectionType  irtFlag = DtIntersectionRecord::INT_ALL_DATA,
bool dataAvailable = 0,
bool  overrideBlockingAssert = false,
int  flags = 0 
) const
virtual

Returns topmost intersection of chord with terrain in record.

irtFlag specifies what intersection data should be filled in for the record.

Implements DtTerrainImplementation.

virtual bool DtEllipsoidTerrainImplementation::allIntersectsAlongChord ( const DtChord chord,
DtChordIntersectRecordList intList,
DtIntersectionRecord::DtIntersectionType  irtFlag = DtIntersectionRecord::INT_ALL_DATA,
bool dataAvailable = 0,
bool  overrideBlockingAssert = false,
int  flags = 0 
) const
virtual

Returns all intersections of chord with terrain.

intList is the list of each intersection record. irtFlag specifies what intersection data should be filled in for the record.

Implements DtTerrainImplementation.

virtual const DtTerrainCapabilities* DtEllipsoidTerrainImplementation::terrainCapabilities ( ) const
virtual
Returns
A DtTerrainCapabilites structure that describes the capabilities of the currently loaded terrain.

Implements DtTerrainImplementation.

virtual void DtEllipsoidTerrainImplementation::processTrianglesInArea ( DtTriangleCallbackFcn  func,
DtTriangleCallbackFinalizeFcn  finalize,
const DtTerrainProcessPolygonsBox box,
void *  usr 
)
virtual
void DtEllipsoidTerrainImplementation::fillHitRecord ( DtChordIntersectionRecord rec,
const DtChord chord,
const DtPoint chordNormal,
double  intersectTime,
DtIntersectionRecord::DtIntersectionType  irtFlag 
) const
protected
bool DtEllipsoidTerrainImplementation::chordEllipsoidIntersect ( const DtChord chord,
DtChordIntersectionRecord hit1,
DtChordIntersectionRecord hit2,
DtIntersectionRecord::DtIntersectionType  irtFlag 
) const
protected

Member Data Documentation

Coordinate_System* DtEllipsoidTerrainImplementation::myCoordinateSystem
protected
DtTerrainCapabilities DtEllipsoidTerrainImplementation::myCapabilities
protected

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

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)