VR-Forces 4.10 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
terrainInterface
debugDrawTerrainOutputInterface.h
Go to the documentation of this file.
1
/******************************************************************************
5
9
#pragma once
10
11
#include "terrainInterface/terrainInterfaceDefines.h"
12
#include "terrainInterface/vrfLine.h"
13
#include <terrainInterface/terrainProcessPolygonsBox.h>
14
#include <boost/unordered_set.hpp>
15
16
#include <tbb/spin_mutex.h>
17
19
class DT_DLL_terrainInterface DtDebugDrawTerrainOutputInterface : public DtTriangleOutputInterface
20
{
21
public:
22
24
DtDebugDrawTerrainOutputInterface(const std::string& name);
25
27
virtual ~DtDebugDrawTerrainOutputInterface();
28
30
virtual bool processTriangles() const;
31
33
virtual void setprocessTriangles(bool value);
34
36
virtual void processTriangle(const DtTerrainTriangleStruct& triangle);
37
40
virtual bool processAABBs() const;
41
43
virtual void setProcessAABBs(bool value);
44
47
virtual bool processQueryAABBs() const;
48
50
virtual void setProcessQueryAABBs(bool value);
51
53
virtual void queryAABB(const DtVector& min, const DtVector& max, const DtCoordTransform& toLocal);
54
58
virtual bool objectAABB(const DtVector& min, const DtVector& max, const DtCoordTransform& toLocal);
59
61
virtual bool processElevationTiles() const;
62
64
virtual void setProcessElevationTiles(bool value);
65
68
virtual bool elevationTile(const DtVector &p1, const DtVector& p2, const DtVector& p3, const DtVector& p4);
69
73
virtual bool forcePaging() const;
74
76
virtual void setForcePaging(bool value);
77
80
virtual bool shouldExit() const;
81
83
virtual unsigned triangleCount() const;
84
86
typedef std::vector<DtTerrainTriangleStruct> terrainTriangleStructList;
87
virtual terrainTriangleStructList& triangleList();
88
virtual size_t numberOfTriangles() const;
89
virtual void clearTriangleList();
90
92
typedef std::vector<makVrf::DtLine> terrainLineList;
93
virtual terrainLineList& lineList();
94
virtual size_t numberOfLines() const;
95
virtual void clearLineList();
96
97
protected:
98
100
virtual void addLine(const DtString& name, const DtVector& p1, const DtVector& p2,
101
unsigned red, unsigned green, unsigned blue);
102
104
virtual bool processObjectAABB(unsigned index, const DtVector& min, const DtVector& max, const DtCoordTransform& toLocal);
105
107
virtual bool processElevationTile(unsigned index, const DtVector &p1, const DtVector& p2, const DtVector& p3, const DtVector& p4);
108
110
void processQueryAABB(const DtVector& min, const DtVector& max, const DtCoordTransform& toLocal);
111
112
unsigned myTriangleCount;
113
unsigned myLineCount;
114
boost::unordered_set< boost::shared_ptr<makVrv::DtDynamicTerrainFeature> > myFeatures;
115
bool myStopDrawFlag;
116
bool myProcessAABBs;
117
bool myProcessQueryAABBs;
118
bool myProcessElevation;
119
bool myProcessTriangles;
120
bool myForcePaging;
122
terrainTriangleStructList myTriangleList;
124
terrainLineList myLineList;
125
126
tbb::spin_mutex myProcessTriangleMutex;
127
tbb::spin_mutex myProcessLineMutex;
128
};
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
)