![]() |
VR-Forces 4.0.4 Class Documentation
|

Public Member Functions | |
| DtExtentTerrainImplementation (DtConsoleCommandManager *cmdMgr) | |
| virtual | ~DtExtentTerrainImplementation () |
| virtual bool | loadTerrain (const makArchives::DtGenericTerrainRecord &record, const TerrainSettings &settings=TerrainSettings()) |
| Loads a terrain given the terrain record and a key/value pair of settings. | |
| virtual const Coordinate_System * | coordinateSystem () const |
| virtual bool | chordIntersect (const DtChord &chord, DtChordIntersectionRecord &record, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false) 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) const |
| Returns all intersections of chord with terrain. | |
| virtual bool | sphereIntersect (const DtSphere &sphere, DtSphereIntersectionRecord &record, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false) const |
| Returns intersection of a sphere with the terrain. | |
| virtual const DtVectorNetwork * | vectorNetwork () const |
| virtual bool | intersectVectorNetwork (const DtChord &chord, DtVectorNetworkRecord *vectorRecord, DtVectorNetworkIntersectionRecord *vectorIntersectionRecord) const |
| User passes in the chord to intersect the vector network and the vectorRecord defining the desired search parameters like the kind of features to be searched. | |
| virtual const DtTerrainCapabilities * | terrainCapabilities () const |
| virtual void | processTrianglesInArea (DtTriangleCallbackFcn func, DtTriangleCallbackFinalizeFcn finalize, const DtTerrainProcessPolygonsBox &box, void *usr) |
Static Public Member Functions | |
| static DtTerrainImplementation * | create (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 |
Protected Attributes | |
| Coordinate_System * | myCoordinateSystem |
| DtVectorNetwork * | myVectorNetwork |
| DtTerrainCapabilities | myCapabilities |
| virtual DtExtentTerrainImplementation::~DtExtentTerrainImplementation | ( | ) | [virtual] |
| static DtTerrainImplementation* DtExtentTerrainImplementation::create | ( | DtConsoleCommandManager * | cmdMgr | ) | [static] |
| virtual bool DtExtentTerrainImplementation::loadTerrain | ( | const makArchives::DtGenericTerrainRecord & | rec, |
| const TerrainSettings & | settings = TerrainSettings() |
||
| ) | [virtual] |
Loads a terrain given the terrain record and a key/value pair of settings.
These settings are interpreted (or not) by the implementation
Implements DtTerrainImplementation.
| virtual const Coordinate_System* DtExtentTerrainImplementation::coordinateSystem | ( | ) | const [virtual] |
Implements DtTerrainImplementation.
| virtual bool DtExtentTerrainImplementation::chordIntersect | ( | const DtChord & | chord, |
| DtChordIntersectionRecord & | record, | ||
| DtIntersectionRecord::DtIntersectionType | irtFlag = DtIntersectionRecord::INT_ALL_DATA, |
||
| bool * | dataAvailable = 0, |
||
| bool | overrideBlockingAssert = false |
||
| ) | const [virtual] |
Returns topmost intersection of chord with terrain in record.
| Input | |
| chord | the chord to test |
| irtFlag | specifies what intersection data should be filled in for the record. |
| Output | |
| record | the results of the intersection |
| dataAvailable | Please see "Synchronous and asynchronous calls with paged terrains" in DtTerrainInterface for information on how to specify that this function be blocking or non-blocking. If this parameter is specified and the required terrain data is not yet paged in, this call will return immediately and dataAvailable will be set to false. |
| overrideBlockingAssert | when set to true this parameter will prevent an assertion from being thrown when the terrain implementation has myAssertOnBlockingTerrainCalls set to true. This should only be done when the call is being made from outside the main simulation thread and a blocking call would not cause a a problem. |
Implements DtTerrainImplementation.
| virtual bool DtExtentTerrainImplementation::allIntersectsAlongChord | ( | const DtChord & | chord, |
| DtChordIntersectRecordList & | intList, | ||
| DtIntersectionRecord::DtIntersectionType | irtFlag = DtIntersectionRecord::INT_ALL_DATA, |
||
| bool * | dataAvailable = 0, |
||
| bool | overrideBlockingAssert = false |
||
| ) | const [virtual] |
Returns all intersections of chord with terrain.
| Input | |
| chord | the chord to test |
| irtFlag | specifies what intersection data should be filled in for the record. |
| Output | |
| intList | the results of the intersection |
| dataAvailable | Please see "Synchronous and asynchronous calls with paged terrains" in DtTerrainInterface for information on how to specify that this function be blocking or non-blocking. If this parameter is specified and the required terrain data is not yet paged in, this call will return immediately and dataAvailable will be set to false. |
| overrideBlockingAssert | when set to true this parameter will prevent an assertion from being thrown when the terrain implementation has myAssertOnBlockingTerrainCalls set to true. This should only be done when the call is being made from outside the main simulation thread and a blocking call would not cause a a problem. |
Implements DtTerrainImplementation.
| virtual bool DtExtentTerrainImplementation::sphereIntersect | ( | const DtSphere & | sphere, |
| DtSphereIntersectionRecord & | record, | ||
| DtIntersectionRecord::DtIntersectionType | irtFlag = DtIntersectionRecord::INT_ALL_DATA, |
||
| bool * | dataAvailable = 0, |
||
| bool | overrideBlockingAssert = false |
||
| ) | const [virtual] |
Returns intersection of a sphere with the terrain.
| Input | |
| sphere | the sphere to test |
| irtFlag | specifies what intersection data should be filled in for the record. |
| Output | |
| record | the results of the intersection |
| dataAvailable | Please see "Synchronous and asynchronous calls with paged terrains" in DtTerrainInterface for information on how to specify that this function be blocking or non-blocking. If this parameter is specified and the required terrain data is not yet paged in, this call will return immediately and dataAvailable will be set to false. |
| overrideBlockingAssert | when set to true this parameter will prevent an assertion from being thrown when the terrain implementation has myAssertOnBlockingTerrainCalls set to true. This should only be done when the call is being made from outside the main simulation thread and a blocking call would not cause a a problem. |
Implements DtTerrainImplementation.
| virtual const DtVectorNetwork* DtExtentTerrainImplementation::vectorNetwork | ( | ) | const [virtual] |
Implements DtTerrainImplementation.
| virtual bool DtExtentTerrainImplementation::intersectVectorNetwork | ( | const DtChord & | chord, |
| DtVectorNetworkRecord * | vectorRecord, | ||
| DtVectorNetworkIntersectionRecord * | vectorIntersectionRecord | ||
| ) | const [virtual] |
User passes in the chord to intersect the vector network and the vectorRecord defining the desired search parameters like the kind of features to be searched.
Returns the best feature intersection and associated data in the vectorIntersectionRecord if there is an intersection. Returns false if there is no intersection.
Implements DtTerrainImplementation.
| virtual const DtTerrainCapabilities* DtExtentTerrainImplementation::terrainCapabilities | ( | ) | const [virtual] |
Implements DtTerrainImplementation.
| virtual void DtExtentTerrainImplementation::processTrianglesInArea | ( | DtTriangleCallbackFcn | func, |
| DtTriangleCallbackFinalizeFcn | finalize, | ||
| const DtTerrainProcessPolygonsBox & | box, | ||
| void * | usr | ||
| ) | [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] |