21 #include <tbb/tbb_thread.h>
22 #include <tbb/spin_rw_mutex.h>
23 #include <tbb/mutex.h>
25 #include <boost/ptr_container/ptr_map.hpp>
49 virtual void process();
59 virtual bool isStopped()
const;
62 virtual bool isRunning()
const;
65 virtual void cancel();
68 virtual bool isCancelled()
const;
71 virtual bool isProcessing()
const;
126 typedef std::pair<std::string, QueryType>
Query;
139 virtual void reset();
142 virtual void addQuery(
const std::string& key,
const std::string& value,
QueryType = QUERY_DEFAULT);
146 virtual std::string addQuery(
const std::string& value,
QueryType = QUERY_DEFAULT);
149 return addQuery(value, AREA_SELECT);
154 return addQuery(value, POINT_SELECT);
158 virtual void removeQuery(
const std::string& key);
161 virtual const Queries& queries()
const;
170 virtual void setSeaLevel(
double);
171 virtual double seaLevel()
const;
186 : geometry(orig.geometry), extent(orig.extent), query(orig.query), retries(orig.retries) {};
210 const std::string& query,
bool& firstTime, AreasCovered::iterator&);
214 const std::vector<MAKVRinTerra::DtFeatureGeometry>&)
const;
220 virtual void createGeometry(
const std::vector<MAKVRinTerra::DtFeatureGeometry>&,
234 std::string query,
bool readDirectly =
false);
244 int retries = 0)
const;
247 virtual void updateLastIntersection(
const DtPoint&,
bool valid,
const DtSurface& surface);
285 typedef boost::ptr_map<std::string, MAKVRinTerra::DtFeatureSet>
SavedQueries;
This is the abstract base class for all terrain implementations. A terrain implementation is used by ...
Definition: terrainImplementation.h:172
bool myCancelled
Definition: featureToGeometryConverter.h:94
tbb::tbb_thread * myThread
Definition: featureToGeometryConverter.h:90
tbb::spin_rw_mutex myMutex
Definition: featureToGeometryConverter.h:299
DtCollisionWorld * myCollisionWorld
Definition: featureToGeometryConverter.h:89
QueryType
Definition: featureToGeometryConverter.h:118
bool triangulate
Definition: featureToGeometryConverter.h:101
tbb::spin_rw_mutex myMutex
Definition: featureToGeometryConverter.h:91
std::vector< LandArea > LandAreas
Definition: featureToGeometryConverter.h:270
Queries myQueries
Queries that can be used to perform specified functions. These queries will be used by particluar sub...
Definition: featureToGeometryConverter.h:257
std::string addQueryByAreaSelect(const std::string &value)
Definition: featureToGeometryConverter.h:147
std::vector< MAKVRinTerra::DtFeatureGeometry > myPointFeatures
Definition: featureToGeometryConverter.h:250
bool myStop
Definition: featureToGeometryConverter.h:92
bool myProcessing
Definition: featureToGeometryConverter.h:95
bool myCoverageAreasInitialized
Definition: featureToGeometryConverter.h:295
DtSurface surface
Definition: featureToGeometryConverter.h:278
double mySeaLevel
Definition: featureToGeometryConverter.h:282
MAKVRinTerra::DtFeatureGeometry myIntersectArea
Definition: featureToGeometryConverter.h:291
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
AreasCovered myCoverageAreas
Definition: featureToGeometryConverter.h:289
std::map< std::string, Query > Queries
Definition: featureToGeometryConverter.h:127
Definition: surface.h:181
GeometryArray geometry
Definition: featureToGeometryConverter.h:99
DtCollisionWorld * myCollisionWorld
Definition: featureToGeometryConverter.h:293
DtThreadedTriangulator * myThreadedSurfaceTriangulator
Definition: featureToGeometryConverter.h:298
AreasCovered myAreasCovered
Definition: featureToGeometryConverter.h:288
tbb::spin_rw_mutex myLastLocationMutex
Definition: featureToGeometryConverter.h:300
This class will allow for the addition of features and their geometry for inclusion into the collisio...
Definition: featureToGeometryConverter.h:115
LastIntersection myLastIntersection
Definition: featureToGeometryConverter.h:281
boost::ptr_map< std::string, MAKVRinTerra::DtFeatureSet > SavedQueries
Saved queries.
Definition: featureToGeometryConverter.h:285
Handle< PointType > Point
Definition: featureGeometry.h:69
std::vector< AreaInformation > AreasCovered
Definition: featureToGeometryConverter.h:197
Definition: featureToGeometryConverter.h:97
std::pair< std::string, QueryType > Query
Definition: featureToGeometryConverter.h:126
std::vector< ProcessGeometry > ProcessGeometries
Definition: featureToGeometryConverter.h:104
Represents some coordinate system. The terms "coordinate system", "projection", "spatial reference"...
Definition: proj.h:44
bool myRunning
Definition: featureToGeometryConverter.h:93
Surfaces myNewSurfaces
Definition: featureToGeometryConverter.h:262
Convenience member to return the last intersection if geometries match.
Definition: featureToGeometryConverter.h:274
std::string addQueryByPointSelect(const std::string &value)
Definition: featureToGeometryConverter.h:152
DtPoint location
Definition: featureToGeometryConverter.h:276
LandAreas myLandAreas
Definition: featureToGeometryConverter.h:272
bool result
Definition: featureToGeometryConverter.h:277
std::pair< MAKVRinTerra::DtFeatureGeometry, DtSurface > SurfaceDefinition
Definition: featureToGeometryConverter.h:177
std::vector< SurfaceDefinition > Surfaces
Definition: featureToGeometryConverter.h:178
This class will triangulate the given objects in the queue into the collision world supplied...
Definition: featureToGeometryConverter.h:31
std::vector< MAKVRinTerra::DtFeatureGeometry > GeometryArray
Definition: featureToGeometryConverter.h:34
DtSurface surface
Definition: featureToGeometryConverter.h:100
DtThreadedTriangulator * myThreadedGeometryTriangulator
Definition: featureToGeometryConverter.h:297
ProcessGeometries myProcessGeometries
Definition: featureToGeometryConverter.h:106
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:88
bool myUseGeosGeometryForLandAreas
Default is false – use tessellator.
Definition: featureToGeometryConverter.h:303
DtExtent extent
Definition: featureToGeometryConverter.h:266
This class contains a Bullet btCollisionWorld, and also maintains ownership of the collision objects ...
Definition: collisionWorld.h:40
Represents a GIS feature. Features consist of a DtFeatureGeometry (2.5D geometric vector data) and a ...
Definition: feature.h:37
SavedQueries mySavedQueries
Definition: featureToGeometryConverter.h:286
SurfaceDefinition area
Definition: featureToGeometryConverter.h:267
std::vector< std::string > myQueryStringList
Predefine a list of Query string (QUERY1, QUERY2, etc) to speed up convertToGeometry() and addQuery()...
Definition: featureToGeometryConverter.h:260
Represents a feature geometry.
Definition: featureGeometry.h:39
Definition: featureToGeometryConverter.h:264
boost::shared_ptr< DtProj > Ptr
Definition: proj.h:47