14 #include <geometry/intersectionRecord.h>
15 #include <geometry/chord.h>
16 #include <gdb/vecNetwrkRecord.h>
17 #include <gdb/vecNwrkIntRec.h>
18 #include <geometry/intRecLst.h>
19 #include "tdbutil/stringKeyFactory.h"
28 class DtChordIntersectionRecord;
29 class DtSphereIntersectionRecord;
31 class Coordinate_System;
37 class DtGenericTerrainRecord;
40 namespace MAKVRinTerra
66 virtual bool loadTerrain(
const makArchives::DtGenericTerrainRecord& rec,
70 virtual const Coordinate_System* coordinateSystem()
const = 0;
91 virtual bool chordIntersect(
const DtChord& chord,
92 DtChordIntersectionRecord& record,
93 DtIntersectionRecord::DtIntersectionType irtFlag =
94 DtIntersectionRecord::INT_ALL_DATA,
bool* dataAvailable = 0,
95 bool overrideBlockingAssert =
false)
const = 0;
116 virtual bool allIntersectsAlongChord(
const DtChord& chord,
117 DtChordIntersectRecordList& intList,
118 DtIntersectionRecord::DtIntersectionType irtFlag =
119 DtIntersectionRecord::INT_ALL_DATA,
bool* dataAvailable = 0,
120 bool overrideBlockingAssert =
false)
const = 0;
141 virtual bool sphereIntersect(
const DtSphere& sphere,
142 DtSphereIntersectionRecord& record,
143 DtIntersectionRecord::DtIntersectionType irtFlag =
144 DtIntersectionRecord::INT_ALL_DATA,
bool* dataAvailable = 0,
145 bool overrideBlockingAssert =
false)
const = 0;
161 virtual void preloadTerrainAreas(
178 virtual void setAssertOnBlockingTerrainCalls(
bool assertBlock);
179 virtual bool assertOnBlockingTerrainCalls()
const;
198 std::vector<DtChord>& chords);
207 void setFeatureContext (
const boost::scoped_ptr<MAKVRinTerra::DtFeatureContext>& fc)
209 myFeatureContext = fc.get();
227 typedef DtTerrainImplementationFactory::DtCreatorFcn