VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes
DtDebugDrawTerrainWithInstancesOutputInterface Class Reference

Subclass of DtDebugDrawTerrainOutputInterface which enables processing of instance geometry.

Inheritance diagram for DtDebugDrawTerrainWithInstancesOutputInterface:
Inheritance graph
[legend]

Public Member Functions

 DtDebugDrawTerrainWithInstancesOutputInterface (const std::string &name)
 
virtual ~DtDebugDrawTerrainWithInstancesOutputInterface () override
 
virtual void processTerrainInstance (const DtTerrainInstance &instanceStruct) override
 
virtual bool enableTerrainInstanceProcessing () const override
 
virtual void retrieveAndAddInstanceTriangles (DtDebugDrawManager::DtTerrainGeometryMap &geoInstMap, DtTerrainInterface *terrainIf)
 
virtual int instanceCount () const
 
virtual int uniqueTerrainGeometryCount () const
 
- Public Member Functions inherited from DtDebugDrawTerrainOutputInterface
 DtDebugDrawTerrainOutputInterface (const std::string &name)
 
virtual ~DtDebugDrawTerrainOutputInterface ()
 
virtual bool processTriangles () const override
 
virtual void setprocessTriangles (bool value)
 
virtual void processTriangle (const DtTerrainTriangleStruct &triangle) override
 
virtual bool processAABBs () const override
 
virtual void setProcessAABBs (bool value)
 
virtual bool processQueryAABBs () const
 
virtual void setProcessQueryAABBs (bool value)
 
virtual void queryAABB (const DtVector &min, const DtVector &max, const DtCoordTransform &toLocal) override
 
virtual bool objectAABB (const DtVector &min, const DtVector &max, const DtCoordTransform &toLocal) override
 
virtual bool processElevationTiles () const override
 
virtual void setProcessElevationTiles (bool value)
 
virtual bool elevationTile (const DtVector &p1, const DtVector &p2, const DtVector &p3, const DtVector &p4) override
 
virtual bool processElevationPosts () const override
 
virtual void setElevationPosts (bool value)
 
virtual bool elevationPost (std::vector< DtPoint > &postArray) override
 
virtual bool forcePaging () const override
 
virtual void setForcePaging (bool value)
 
virtual bool shouldExit () const override
 
virtual unsigned triangleCount () const
 
virtual terrainTriangleStructListtriangleList ()
 
virtual size_t numberOfTriangles () const
 
virtual void clearTriangleList ()
 
virtual terrainLineListlineList ()
 
virtual size_t numberOfLines () const
 
virtual void clearLineList ()
 
virtual terrainPointListpointList ()
 
virtual size_t numberOfPoints () const
 
virtual void clearPointList ()
 
- Public Member Functions inherited from DtTriangleOutputInterface
virtual void setFailure (const std::string &reason)
 
virtual void setName (const std::string &name)
 
virtual std::string & name ()
 

Protected Attributes

tbb::spin_mutex myProcessGeometryInstanceMutex
 
std::vector< DtTerrainInstancemyInstances
 
- Protected Attributes inherited from DtDebugDrawTerrainOutputInterface
unsigned myTriangleCount
 
unsigned myLineCount
 
std::unordered_set
< std::shared_ptr
< makVrv::DtDynamicTerrainFeature > > 
myFeatures
 
bool myStopDrawFlag
 
bool myProcessAABBs
 
bool myProcessQueryAABBs
 
bool myProcessElevation
 
bool myProcessElevationPost
 
bool myProcessTriangles
 
bool myForcePaging
 
terrainTriangleStructList myTriangleList
 
terrainLineList myLineList
 
terrainPointList myPointList
 
tbb::spin_mutex myProcessTriangleMutex
 
tbb::spin_mutex myProcessLineMutex
 
tbb::spin_mutex myProcessPointMutex
 
- Protected Attributes inherited from DtTriangleOutputInterface
std::string myTerrainAreaName
 

Additional Inherited Members

- Public Types inherited from DtDebugDrawTerrainOutputInterface
typedef std::vector
< DtTerrainTriangleStruct
terrainTriangleStructList
 
typedef std::vector
< makVrf::DtLine
terrainLineList
 
typedef std::vector
< makVrf::DtColorPoint
terrainPointList
 
- Protected Member Functions inherited from DtDebugDrawTerrainOutputInterface
virtual void addLine (const DtString &name, const DtVector &p1, const DtVector &p2, unsigned red, unsigned green, unsigned blue)
 
virtual bool processObjectAABB (unsigned index, const DtVector &min, const DtVector &max, const DtCoordTransform &toLocal)
 
virtual bool processElevationTile (unsigned index, const DtVector &p1, const DtVector &p2, const DtVector &p3, const DtVector &p4)
 
void processQueryAABB (const DtVector &min, const DtVector &max, const DtCoordTransform &toLocal)
 

Constructor & Destructor Documentation

DtDebugDrawTerrainWithInstancesOutputInterface::DtDebugDrawTerrainWithInstancesOutputInterface ( const std::string &  name)

CTOR.

virtual DtDebugDrawTerrainWithInstancesOutputInterface::~DtDebugDrawTerrainWithInstancesOutputInterface ( )
overridevirtual

CTOR.

Member Function Documentation

virtual void DtDebugDrawTerrainWithInstancesOutputInterface::processTerrainInstance ( const DtTerrainInstance instanceStruct)
overridevirtual

Called for each geometry instance when processing data in a terrain if enableTerrainInstanceProcessing is enabled. Default implementation does nothing.

Reimplemented from DtTriangleOutputInterface.

virtual bool DtDebugDrawTerrainWithInstancesOutputInterface::enableTerrainInstanceProcessing ( ) const
overridevirtual

If this returns true, processTerrainInstance() will be called for each instance geometry encountered in the terrain. If this is false, instance geometries will be unrolled into triangles, and processTriange() will be called for each triangle in each instance. Default implementation returns false.

Reimplemented from DtTriangleOutputInterface.

virtual void DtDebugDrawTerrainWithInstancesOutputInterface::retrieveAndAddInstanceTriangles ( DtDebugDrawManager::DtTerrainGeometryMap geoInstMap,
DtTerrainInterface terrainIf 
)
virtual
virtual int DtDebugDrawTerrainWithInstancesOutputInterface::instanceCount ( ) const
virtual
virtual int DtDebugDrawTerrainWithInstancesOutputInterface::uniqueTerrainGeometryCount ( ) const
virtual

Member Data Documentation

tbb::spin_mutex DtDebugDrawTerrainWithInstancesOutputInterface::myProcessGeometryInstanceMutex
protected
std::vector<DtTerrainInstance> DtDebugDrawTerrainWithInstancesOutputInterface::myInstances
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)