20 #include <tbb/tbb_thread.h>
21 #include <tbb/spin_rw_mutex.h>
22 #include <tbb/mutex.h>
24 #include <boost/ptr_container/ptr_map.hpp>
48 virtual void process();
58 virtual bool isStopped()
const;
61 virtual bool isRunning()
const;
64 virtual void cancel();
67 virtual bool isCancelled()
const;
70 virtual bool isProcessing()
const;
125 typedef std::pair<std::string, QueryType>
Query;
138 virtual void reset();
141 virtual void addQuery(
const std::string& key,
const std::string& value,
QueryType = QUERY_DEFAULT);
145 virtual std::string addQuery(
const std::string& value,
QueryType = QUERY_DEFAULT);
148 return addQuery(value, AREA_SELECT);
153 return addQuery(value, POINT_SELECT);
157 virtual void removeQuery(
const std::string& key);
160 virtual const Queries& queries()
const;
169 virtual void setSeaLevel(
double);
170 virtual double seaLevel()
const;
185 : geometry(orig.geometry), extent(orig.extent), query(orig.query), retries(orig.retries) {};
209 const std::string& query,
bool& firstTime, AreasCovered::iterator&);
213 const std::vector<MAKVRinTerra::DtFeatureGeometry>&)
const;
219 virtual void createGeometry(
const std::vector<MAKVRinTerra::DtFeatureGeometry>&,
233 std::string query,
bool readDirectly =
false);
243 int retries = 0)
const;
246 virtual void updateLastIntersection(
const DtPoint&,
bool valid,
const DtSurface& surface);
281 typedef boost::ptr_map<std::string, MAKVRinTerra::DtFeatureSet>
SavedQueries;
This is the abstract base class for all terrain implementations.
Definition: terrainImplementation.h:162
bool myCancelled
Definition: featureToGeometryConverter.h:93
tbb::tbb_thread * myThread
Definition: featureToGeometryConverter.h:89
tbb::spin_rw_mutex myMutex
Definition: featureToGeometryConverter.h:295
DtCollisionWorld * myCollisionWorld
Definition: featureToGeometryConverter.h:88
QueryType
Definition: featureToGeometryConverter.h:117
bool triangulate
Definition: featureToGeometryConverter.h:100
tbb::spin_rw_mutex myMutex
Definition: featureToGeometryConverter.h:90
std::vector< LandArea > LandAreas
Definition: featureToGeometryConverter.h:266
Queries myQueries
Queries that can be used to perform specified functions.
Definition: featureToGeometryConverter.h:256
std::string addQueryByAreaSelect(const std::string &value)
Definition: featureToGeometryConverter.h:146
std::vector< MAKVRinTerra::DtFeatureGeometry > myPointFeatures
Definition: featureToGeometryConverter.h:249
bool myStop
Definition: featureToGeometryConverter.h:91
bool myProcessing
Definition: featureToGeometryConverter.h:94
bool myCoverageAreasInitialized
Definition: featureToGeometryConverter.h:291
DtSurface surface
Definition: featureToGeometryConverter.h:274
double mySeaLevel
Definition: featureToGeometryConverter.h:278
MAKVRinTerra::DtFeatureGeometry myIntersectArea
Definition: featureToGeometryConverter.h:287
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
AreasCovered myCoverageAreas
Definition: featureToGeometryConverter.h:285
std::map< std::string, Query > Queries
Definition: featureToGeometryConverter.h:126
Definition: surface.h:179
GeometryArray geometry
Definition: featureToGeometryConverter.h:98
DtCollisionWorld * myCollisionWorld
Definition: featureToGeometryConverter.h:289
DtThreadedTriangulator * myThreadedSurfaceTriangulator
Definition: featureToGeometryConverter.h:294
AreasCovered myAreasCovered
Definition: featureToGeometryConverter.h:284
tbb::spin_rw_mutex myLastLocationMutex
Definition: featureToGeometryConverter.h:296
This class will allow for the addition of features and their geometry for inclusion into the collisio...
Definition: featureToGeometryConverter.h:114
LastIntersection myLastIntersection
Definition: featureToGeometryConverter.h:277
boost::ptr_map< std::string, MAKVRinTerra::DtFeatureSet > SavedQueries
Saved queries.
Definition: featureToGeometryConverter.h:281
Handle< PointType > Point
Definition: featureGeometry.h:63
std::vector< AreaInformation > AreasCovered
Definition: featureToGeometryConverter.h:196
Definition: featureToGeometryConverter.h:96
std::pair< std::string, QueryType > Query
Definition: featureToGeometryConverter.h:125
std::vector< ProcessGeometry > ProcessGeometries
Definition: featureToGeometryConverter.h:103
Represents some coordinate system.
Definition: proj.h:44
bool myRunning
Definition: featureToGeometryConverter.h:92
Surfaces myNewSurfaces
Definition: featureToGeometryConverter.h:258
Convenience member to return the last intersection if geometries match.
Definition: featureToGeometryConverter.h:270
std::string addQueryByPointSelect(const std::string &value)
Definition: featureToGeometryConverter.h:151
DtPoint location
Definition: featureToGeometryConverter.h:272
LandAreas myLandAreas
Definition: featureToGeometryConverter.h:268
bool result
Definition: featureToGeometryConverter.h:273
std::pair< MAKVRinTerra::DtFeatureGeometry, DtSurface > SurfaceDefinition
Definition: featureToGeometryConverter.h:176
std::vector< SurfaceDefinition > Surfaces
Definition: featureToGeometryConverter.h:177
This class will triangulate the given objects in the queue into the collision world supplied...
Definition: featureToGeometryConverter.h:30
std::vector< MAKVRinTerra::DtFeatureGeometry > GeometryArray
Definition: featureToGeometryConverter.h:33
DtSurface surface
Definition: featureToGeometryConverter.h:99
DtThreadedTriangulator * myThreadedGeometryTriangulator
Definition: featureToGeometryConverter.h:293
ProcessGeometries myProcessGeometries
Definition: featureToGeometryConverter.h:105
Contains the declaration of the DtExtent class.
#define DT_DLL_vantageTerrainImplementation
This file is used to determine how to build.
Definition: vantageTerrainImplementationDefines.h:28
MAKVRinTerra::DtProj::Ptr myProjection
Definition: featureToGeometryConverter.h:87
bool myUseGeosGeometryForLandAreas
Default is false – use tessellator.
Definition: featureToGeometryConverter.h:299
DtExtent extent
Definition: featureToGeometryConverter.h:262
This class contains a Bullet btCollisionWorld, and also maintains ownership of the collision objects ...
Definition: collisionWorld.h:38
Represents a GIS feature.
Definition: feature.h:37
SavedQueries mySavedQueries
Definition: featureToGeometryConverter.h:282
SurfaceDefinition area
Definition: featureToGeometryConverter.h:263
Represents a feature geometry.
Definition: featureGeometry.h:35
Definition: featureToGeometryConverter.h:260
boost::shared_ptr< DtProj > Ptr
Definition: proj.h:47