VR-Forces 4.5 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
terrainInterface
ellipsoidTerrainImplementation.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2013 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
10
11
#pragma once
12
13
#include "
terrainInterface/terrainInterfaceDefines.h
"
14
#include "
terrainInterface/terrainImplementation.h
"
15
#include "
terrainInterface/terrainCapabilities.h
"
16
17
class
DtCoordinateSystem;
18
namespace
makArchives
19
{
20
class
DtGenericTerrainRecord;
21
}
22
26
class
DT_DLL_terrainInterface
DtEllipsoidTerrainImplementation
:
27
public
DtTerrainImplementation
28
{
29
public
:
30
DtEllipsoidTerrainImplementation
(
DtConsoleCommandManager
* cmdMgr);
31
virtual
~
DtEllipsoidTerrainImplementation
();
32
33
static
DtTerrainImplementation
* create(
DtConsoleCommandManager
* cmdMgr);
34
35
virtual
bool
loadTerrain
(
36
const
makArchives::DtGenericTerrainRecord
& record);
37
38
virtual
const
Coordinate_System
*
coordinateSystem
()
const
;
39
42
virtual
bool
chordIntersect
(
const
DtChord
& chord,
43
DtVrfChordIntersectionRecord
& record,
44
DtIntersectionRecord::DtIntersectionType
irtFlag =
45
DtIntersectionRecord::INT_ALL_DATA
,
46
bool
* dataAvailable = 0,
bool
overrideBlockingAssert =
false
,
int
flags = 0)
const
;
47
50
virtual
bool
allIntersectsAlongChord
(
const
DtChord
& chord,
51
DtVrfChordIntersectRecordList
& intList,
52
DtIntersectionRecord::DtIntersectionType
irtFlag =
53
DtIntersectionRecord::INT_ALL_DATA
,
54
bool
* dataAvailable = 0,
bool
overrideBlockingAssert =
false
,
int
flags = 0)
const
;
55
56
virtual
const
DtTerrainCapabilities
*
terrainCapabilities
()
const
;
57
58
virtual
void
processTrianglesInArea
(
DtTriangleCallbackFcn
func,
DtTriangleCallbackFinalizeFcn
finalize,
const
DtTerrainProcessPolygonsBox
& box,
void
* usr);
59
61
virtual
void
cacheInformationForTerrainArea
(
int
requestId,
int
lowestLOD,
int
highestLOD,
const
DtExtent
& cacheArea,
62
double
& estimatedTime,
double
& estimatedSize, std::vector<std::string>& elevationLayers, std::vector<std::string>& modelLayers)
const
;
63
65
virtual
void
cacheTerrainArea
(
int
requestId,
int
lowestLOD,
int
highestLOD,
const
DtExtent
& cacheArea,
DtCacheProgressCallbackFunction
fcn = 0,
void
* usr = 0);
66
68
virtual
void
cancelCacheTerrainArea
(
int
requestId);
69
70
protected
:
71
void
fillHitRecord(
DtVrfChordIntersectionRecord
& rec,
const
DtChord
& chord,
const
DtPoint
& chordNormal,
72
double
intersectTime,
DtIntersectionRecord::DtIntersectionType
irtFlag)
const
;
73
74
bool
chordEllipsoidIntersect(
const
DtChord
& chord,
DtVrfChordIntersectionRecord
& hit1,
75
DtVrfChordIntersectionRecord
& hit2,
DtIntersectionRecord::DtIntersectionType
irtFlag)
const
;
76
77
protected
:
78
Coordinate_System
*
myCoordinateSystem
;
79
DtTerrainCapabilities
myCapabilities
;
80
};
Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (
www.mak.com
)