VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
gdbTerrainImplementation.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #ifndef gdbTerrainImplementation_h
12 #define gdbTerrainImplementation_h
13 
18 #include "geometry/surface.h"
19 #include "gdb/gdbNode.h"
20 #include "gdb/group.h"
21 #include "gdb/triangleIndirect.h"
22 
23 class DtTdbManager;
24 class DtTerrainImplementationDescriptor;
25 namespace makArchives
26 {
27  class DtGenericTerrainRecord;
28 }
29 
35 {
36 public:
38 
39  virtual ~DtGdbTerrainImplementation();
40 
41  static DtTerrainImplementation* create(DtConsoleCommandManager* cmdMgr);
42 
43  virtual bool loadTerrain(
45 
46  virtual const Coordinate_System* coordinateSystem() const;
47 
49  virtual bool chordIntersect(DtTerrainIntersectStatus& status,
50  const DtChord& chord,
52  const DtTerrainIntersectOptions& options) const;
53 
56  const DtChord& chord,
58  const DtTerrainIntersectOptions& options) const;
59 
60  virtual const DtTerrainCapabilities* terrainCapabilities() const;
61 
63  virtual void consumeNode(DtGdbNode* gdbNode, const DtTerrainProcessPolygonsBox& box, DtTriangleOutputInterface&) const;
64 
66  virtual bool createFromExtent(const Dt3dBoundingVolume&);
67 
69 
70 protected:
73 };
74 
75 #endif
NOTE: This entire class is deprecated, in favor of Dt3dChord.
Definition: chord.h:40
This is the abstract base class for all terrain implementations.
Definition: terrainImplementation.h:164
DtVrfChordIntersectionRecord represents a list of DtChordIntersectRecords.
Definition: vrfChordIntersectRecordList.h:31
DtGenericTerrainRecords allow the VR-Forces terrainInterface library to instantiate and configure the...
Definition: DtGenericTerrainRecord.h:34
DtTerrainCapabilities myCapabilities
Definition: gdbTerrainImplementation.h:72
The DtTdbManager class is intended to be used as a single point of interface to a terrain database...
Definition: tdbManager.h:45
virtual void processTrianglesInArea(DtTriangleOutputInterface &, const DtTerrainProcessPolygonsBox &) const =0
Definition: gdbNode.h:44
DtTdbManager * myTdbManager
Definition: gdbTerrainImplementation.h:71
virtual bool chordIntersect(DtTerrainIntersectStatus &status, const DtChord &chord, DtVrfChordIntersectionRecord &record, const DtTerrainIntersectOptions &options) const =0
Returns topmost intersection of chord with terrain in record.
This is a class which maintains a list of string command names and the callback functions that are to...
Definition: consoleCommandManager.h:48
virtual bool allIntersectsAlongChord(DtTerrainIntersectStatus &status, const DtChord &chord, DtVrfChordIntersectRecordList &intList, const DtTerrainIntersectOptions &options) const =0
Returns all intersections of chord with terrain.
DtTerrainIntersectOptions Passed to terrain intersect functions to modify how intersect acts...
Definition: terrainIntersectOptions.h:15
Definition: coordSystem.h:54
virtual bool loadTerrain(const makArchives::DtGenericTerrainRecord &rec)=0
Loads a terrain given the terrain record.
#define DT_DLL_terrainInterface
This file is used to determine how to build.
Definition: terrainInterfaceDefines.h:25
This class holds parameters which define the capabilities of the current terrain. ...
Definition: terrainCapabilities.h:25
This terrain implementation is a polygonal terrain representation.
Definition: gdbTerrainImplementation.h:33
virtual DtTerrainInformation * terrainInformation()
Return the terrain information pointer of the terrain implementation (null if none exist) this is a d...
Definition: terrainImplementation.h:299
Definition: vrfChordIntersectionRecord.h:19
virtual const Coordinate_System * coordinateSystem() const =0
Interface for getting terrain triangle data out of DtTerrainInterface::trianglesInArea.
Definition: terrainProcessPolygonsBox.h:113
virtual bool createFromExtent(const Dt3dBoundingVolume &)
Creates an extent from the given extent. Not all implementations will support this.
TODO Put this in the makTerrainLib.
Definition: terrainInformation.h:17
DtTerrainIntersectStatus Contains information about result of terrain intersection.
Definition: terrainIntersectStatus.h:16
virtual const DtTerrainCapabilities * terrainCapabilities() const =0
Represents an area query which can be used to extract triangles from DtTerrainInterface.
Definition: terrainProcessPolygonsBox.h:39

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)