VR-Forces 4.1.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
terrainInterface
ellipsoidTerrainImplementation.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2009 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
10
11
#ifndef ellipsoidTerrainImplementation_h
12
#define ellipsoidTerrainImplementation_h
13
14
#include "
terrainInterface/terrainInterfaceDefines.h
"
15
#include "
terrainInterface/terrainImplementation.h
"
16
#include "
terrainInterface/terrainCapabilities.h
"
17
18
class
DtCoordinateSystem
;
19
namespace
makArchives
20
{
21
class
DtGenericTerrainRecord
;
22
}
23
27
class
DT_DLL_terrainInterface
DtEllipsoidTerrainImplementation
:
28
public
DtTerrainImplementation
29
{
30
public
:
31
DtEllipsoidTerrainImplementation
(
DtConsoleCommandManager
* cmdMgr);
32
virtual
~
DtEllipsoidTerrainImplementation
();
33
34
static
DtTerrainImplementation
* create(
DtConsoleCommandManager
* cmdMgr);
35
36
virtual
bool
loadTerrain
(
const
makArchives::DtGenericTerrainRecord
& record,
37
MAKVRinTerra::DtFeatureLoader
&,
38
const
TerrainSettings
& settings =
TerrainSettings
());
39
40
virtual
const
Coordinate_System
*
coordinateSystem
()
const
;
41
44
virtual
bool
chordIntersect
(
const
DtChord
& chord,
45
DtChordIntersectionRecord
& record,
46
DtIntersectionRecord::DtIntersectionType
irtFlag =
47
DtIntersectionRecord::INT_ALL_DATA
,
48
bool
* dataAvailable = 0,
bool
overrideBlockingAssert =
false
)
const
;
49
52
virtual
bool
allIntersectsAlongChord
(
const
DtChord
& chord,
53
DtChordIntersectRecordList
& intList,
54
DtIntersectionRecord::DtIntersectionType
irtFlag =
55
DtIntersectionRecord::INT_ALL_DATA
,
56
bool
* dataAvailable = 0,
bool
overrideBlockingAssert =
false
)
const
;
57
60
virtual
bool
sphereIntersect
(
const
DtSphere
& sphere,
DtSphereIntersectionRecord
& record,
61
DtIntersectionRecord::DtIntersectionType
irtFlag =
62
DtIntersectionRecord::INT_ALL_DATA
,
63
bool
* dataAvailable = 0,
bool
overrideBlockingAssert =
false
)
const
;
64
65
virtual
const
DtTerrainCapabilities
*
terrainCapabilities
()
const
;
66
67
virtual
void
processTrianglesInArea
(
DtTriangleCallbackFcn
func,
DtTriangleCallbackFinalizeFcn
finalize,
const
DtTerrainProcessPolygonsBox
& box,
void
* usr);
68
69
protected
:
70
void
fillHitRecord(
DtChordIntersectionRecord
& rec,
const
DtChord
& chord,
const
DtPoint
& chordNormal,
71
double
intersectTime,
DtIntersectionRecord::DtIntersectionType
irtFlag)
const
;
72
73
bool
chordEllipsoidIntersect(
const
DtChord
& chord,
DtChordIntersectionRecord
& hit1,
74
DtChordIntersectionRecord
& hit2,
DtIntersectionRecord::DtIntersectionType
irtFlag)
const
;
75
76
protected
:
77
Coordinate_System
*
myCoordinateSystem
;
78
DtTerrainCapabilities
myCapabilities
;
79
};
80
81
#endif
Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)