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 | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtExtentTerrainImplementation Class Reference
Inheritance diagram for DtExtentTerrainImplementation:
Inheritance graph
[legend]

Public Member Functions

 DtExtentTerrainImplementation (DtConsoleCommandManager *cmdMgr)
virtual ~DtExtentTerrainImplementation ()
virtual bool loadTerrain (const makArchives::DtGenericTerrainRecord &record)
 Loads a terrain given the terrain record.
virtual const Coordinate_SystemcoordinateSystem () const
virtual bool chordIntersect (DtTerrainIntersectStatus &status, const DtChord &chord, DtVrfChordIntersectionRecord &record, const DtTerrainIntersectOptions &options) const
 Returns topmost intersection of chord with terrain in record.
virtual bool allIntersectsAlongChord (DtTerrainIntersectStatus &status, const DtChord &chord, DtVrfChordIntersectRecordList &intList, const DtTerrainIntersectOptions &options) const
 Returns all intersections of chord with terrain.
virtual const
DtTerrainCapabilities
terrainCapabilities () const
virtual void processTrianglesInArea (DtTriangleOutputInterface &output, const DtTerrainProcessPolygonsBox &box) const
- 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 bool dataAvailable (const DtTerrainPagingGeometryList &geometry, DtTerrainIntersectOptions::Fidelity=DtTerrainIntersectOptions::MAX_FIDELITY)
 Returns true if all of the terrain which intersects the geometry list is paged in.
virtual void setIntersectDataLoadExpireTime (const double &expireTime)
 No-op.
virtual void expireDataLoadRequestsBeforeTime (const double &currentTime)
 No-op.
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 DtTerrainGeometryHandlecreateEntityGeometry (const DtFilename &file)
 Create geometry in the terrain which represents the entity.
virtual
DtDynamicTerrainRequestHandle 
addDynamicTerrainChangeRequest (double time, makVrv::DtDynamicTerrainChange *command)
 Add a dynamic terrain change request to the system.
virtual DtDynamicTerrainQueryHandle queryDynamicTerrainFeatures (const DtDynamicTerrainQueryCallback &callback, makVrv::DtDynamicTerrainGeometry *geometry=0, bool useOriginalGeometry=false)
 Install a query which will call the supplied callback on matching dynamic terrain features as they are paged in.
virtual void queryCurrentDynamicTerrainFeatures (const DtDynamicTerrainQueryCallback &callback, makVrv::DtDynamicTerrainGeometry *geometry=0, bool useOriginalGeometry=false)
virtual void cacheInformationForTerrainArea (unsigned minLOD, unsigned maxLOD, const DtExtent &cacheArea, double &estimatedTime, double &estimatedSize, std::vector< std::string > &elevationLayers, std::vector< std::string > &modelLayers, std::vector< std::string > &featureLayers) const
 Given the request information, return the estimation of how long, how large, and what will be cached.
virtual void cacheTerrainArea (int requestId, unsigned minLOD, unsigned maxLOD, const DtExtent &cacheArea, DtCacheProgressCallbackFunction fcn=0, void *usr=0)
 Call this to start the process of caching terain data (if supported for the open terrain) using the given request id and extent.
virtual void writeTerrainIndex (const DtString &name)
 Write terrain index.
virtual void setAssertOnBlockingTerrainCalls (bool assertBlock)
 Determines if an exception should be thrown if a blocking terrain call is made.
virtual bool assertOnBlockingTerrainCalls () const
virtual void setWarnOnBlockingTerrainCalls (bool warnBlock)
 Determines if a warning should be printed out if a blocking terrain call is made.
virtual bool warnOnBlockingTerrainCalls () const

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 chordExtentIntersect (const DtChord &chord, DtChordIntersectionRecord &hit, DtIntersectionRecord::DtIntersectionType irtFlag) const
virtual void cacheInformationForTerrainArea (int requestId, int lowestLOD, int highestLOD, const DtExtent &cacheArea, double &estimatedTime, double &estimatedSize, std::vector< std::string > &elevationLayers, std::vector< std::string > &modelLayers) const
 Not implemented at example level.
virtual void cacheTerrainArea (int requestId, int lowestLOD, int highestLOD, const DtExtent &cacheArea, DtCacheProgressCallbackFunction fcn=0, void *usr=0)
 Not implemented at example level.
virtual void cancelCacheTerrainArea (int requestId)
 Not implemented at example level.

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

Additional Inherited Members

- Public Types inherited from DtTerrainImplementation
typedef boost::function< void(const
makVrv::DtDynamicTerrainFeature &)> 
DtDynamicTerrainQueryCallback

Constructor & Destructor Documentation

DtExtentTerrainImplementation::DtExtentTerrainImplementation ( DtConsoleCommandManager cmdMgr)
virtual DtExtentTerrainImplementation::~DtExtentTerrainImplementation ( )
virtual

Member Function Documentation

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

Loads a terrain given the terrain record.

Implements DtTerrainImplementation.

virtual const Coordinate_System* DtExtentTerrainImplementation::coordinateSystem ( ) const
virtual
virtual bool DtExtentTerrainImplementation::chordIntersect ( DtTerrainIntersectStatus status,
const DtChord chord,
DtVrfChordIntersectionRecord record,
const DtTerrainIntersectOptions options 
) const
virtual

Returns topmost intersection of chord with terrain in record.

Parameters
Input
chordthe chord to test
optionsSee DtTerrainIntersectOptions
Output
recordthe results of the intersection
statusSee DtTerrainIntersectStatus

Implements DtTerrainImplementation.

virtual bool DtExtentTerrainImplementation::allIntersectsAlongChord ( DtTerrainIntersectStatus status,
const DtChord chord,
DtVrfChordIntersectRecordList intList,
const DtTerrainIntersectOptions options 
) const
virtual

Returns all intersections of chord with terrain.

Parameters
Input
chordthe chord to test
optionsSee DtTerrainIntersectOptions
Output
intListthe results of the intersection
statusSee DtTerrainIntersectStatus

Implements DtTerrainImplementation.

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

Implements DtTerrainImplementation.

virtual void DtExtentTerrainImplementation::processTrianglesInArea ( DtTriangleOutputInterface output,
const DtTerrainProcessPolygonsBox box 
) const
virtual
void DtExtentTerrainImplementation::fillHitRecord ( DtChordIntersectionRecord rec,
const DtChord chord,
const DtPoint chordNormal,
double  intersectTime,
DtIntersectionRecord::DtIntersectionType  irtFlag 
) const
protected
bool DtExtentTerrainImplementation::chordExtentIntersect ( const DtChord chord,
DtChordIntersectionRecord hit,
DtIntersectionRecord::DtIntersectionType  irtFlag 
) const
protected
virtual void DtExtentTerrainImplementation::cacheInformationForTerrainArea ( int  requestId,
int  lowestLOD,
int  highestLOD,
const DtExtent cacheArea,
double estimatedTime,
double estimatedSize,
std::vector< std::string > &  elevationLayers,
std::vector< std::string > &  modelLayers 
) const
protectedvirtual

Not implemented at example level.

virtual void DtExtentTerrainImplementation::cacheTerrainArea ( int  requestId,
int  lowestLOD,
int  highestLOD,
const DtExtent cacheArea,
DtCacheProgressCallbackFunction  fcn = 0,
void *  usr = 0 
)
protectedvirtual

Not implemented at example level.

virtual void DtExtentTerrainImplementation::cancelCacheTerrainArea ( int  requestId)
protectedvirtual

Not implemented at example level.

Reimplemented from DtTerrainImplementation.

Member Data Documentation

Coordinate_System* DtExtentTerrainImplementation::myCoordinateSystem
protected
DtTerrainCapabilities DtExtentTerrainImplementation::myCapabilities
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)