14 #include "vlutil/vlMutex.h"
34 std::vector<std::pair<DtLocation3D, DtLocation3D> >& outPoints);
44 double depthForwardBack,
45 std::list<DtLocation3D>& searchAreaCorners);
72 const std::list<DtLocation3D>& corners,
125 int nPositionPairsToReturn,
126 const std::list<DtLocation3D>& targetAreaCorners,
131 double forwardBackSearchLimit,
132 double sideSideSearchLimit,
133 double maxSlopeDegrees,
134 double positionSpacing,
178 const std::list<DtLocation3D>& targetAreaCorners,
180 double targetHeightMeters,
181 double viewHeightMeters,
182 double hideHeightMeters,
183 double forwardBackSearchLimitMeters,
184 double forwardBackSearchIntervalMeters,
185 double maxSlopeDegrees,
274 const std::list<DtLocation3D>& sourceAreaVertices,
275 unsigned int gridResolutionMeters,
276 double prominenceMeters,
277 unsigned int prominenceRangeMeters,
278 const std::list<DtLocation3D>& targetsAreaVertices,
279 unsigned int targetsAreaSampleCount,
280 double targetsHeightMeters,
281 double viewHeightMeters,
282 double hideHeightMeters,
283 double forwardBackSearchLimitMeters,
284 double sideToSideSearchLimitMeters,
285 double forwardBackSearchIntervalMeters,
286 double maxSlopeDegrees,
287 double sideToSideSearchIntervalMeters,
288 double positionsSpacing,
289 unsigned int positionsCount,
353 const std::list<DtLocation3D>& sourceAreaVertices,
354 const std::list<DtLocation3D>& targetsAreaVertices,
355 unsigned int targetsAreaSampleCount,
356 double targetsHeightMeters,
357 double viewHeightMeters,
358 double hideHeightMeters,
359 double coverRangeMeters,
360 double lateralRangeMeters,
361 double forwardBackRangeMeters,
362 double forwardBackIntervalMeters,
363 double maxSlopeDegrees,
364 double lateralIntervalMeters,
365 double positionsSpacing,
366 unsigned int positionsCount,
int myNumberPositionPairsToReturn
Definition: terrainReasoningJob.h:149
Find Single Position Query Job.
Definition: terrainReasoningJob.h:163
void arrangePositionsLeftToRight2D(const std::vector< std::pair< DtLocation3D, DtLocation3D > > &inPoints, const DtLocation3D &originPoint, const DtLocation3D &destinationPoint, std::vector< std::pair< DtLocation3D, DtLocation3D > > &outPoints)
Sort the given points left to right, perpendicular to reference line from origin to destination...
PositionPairs positions
Definition: terrainReasoningJob.h:219
double myForwardBackSearchLimitMeters
Definition: terrainReasoningJob.h:313
Severity
Definition: algorithmManager.h:29
double scoreViewPctAverage
Definition: terrainReasoningJob.h:220
double mySideSideSearchLimit
Definition: terrainReasoningJob.h:155
double myForwardBackSearchLimitMeters
Definition: terrainReasoningJob.h:388
DtTerrainInterface * pMyTerrainInterface
Definition: terrainReasoningJob.h:302
double mySideSideSearchLimit
Definition: terrainReasoningJob.h:389
double scoreCoverPctAverage
Definition: terrainReasoningJob.h:221
double mySideSideSearchLimit
Definition: terrainReasoningJob.h:314
std::list< DtLocation3D > myTargetAreaCorners
Definition: terrainReasoningJob.h:381
voidpf uLong int origin
Definition: ioapi.h:42
double myShootHeight
Definition: terrainReasoningJob.h:152
double myProminenceMeters
Definition: terrainReasoningJob.h:308
DtTerrainInterface * pMyTerrainInterface
Definition: terrainReasoningJob.h:86
std::list< DtLocation3D > myCorners
Definition: terrainReasoningJob.h:87
unsigned int myTargetsAreaSampleCount
Definition: terrainReasoningJob.h:383
double myForwardBackSearchLimit
Definition: terrainReasoningJob.h:154
bool bMyDebug
Definition: terrainReasoningJob.h:158
unsigned int myNumberPositionsPerGroupRequested
Definition: terrainReasoningJob.h:305
Definition: terrainReasoningJob.h:216
Concrete job class which manages a shared pointer to it's job map entry. Using this job does not requ...
Definition: asyncJob.h:103
double myPositionsSpacing
Definition: terrainReasoningJob.h:393
double myHideHeight
Definition: terrainReasoningJob.h:201
bool bMyDebug
Definition: terrainReasoningJob.h:208
double myForwardBackSearchIntervalMeters
Definition: terrainReasoningJob.h:390
double myForwardBackSearchLimit
Definition: terrainReasoningJob.h:204
bool bMyDebug
Definition: terrainReasoningJob.h:89
double myTargetHeight
Definition: terrainReasoningJob.h:203
double myHideHight
Definition: terrainReasoningJob.h:386
Find Position Groups In Area Job.
Definition: terrainReasoningJob.h:238
double myForwardBackSearchInterval
Definition: terrainReasoningJob.h:205
void makeRelativeSearchArea2D(const DtLocation3D &origin, const DtLocation3D &referencePoint, double widthSideSide, double depthForwardBack, std::list< DtLocation3D > &searchAreaCorners)
Given an origin point and a reference point, make an area about the origin facing the reference point...
VectorOffset3D is a direction vector that is relative to some direction specified by a Vector3D...
Definition: scriptGeometry.h:428
double mySideSideSearchIntervalMeters
Definition: terrainReasoningJob.h:392
unsigned int myGridResolutionMeters
Definition: terrainReasoningJob.h:307
unsigned int myNumberPositionsPerGroupRequested
Definition: terrainReasoningJob.h:382
double myForwardBackSearchIntervalMeters
Definition: terrainReasoningJob.h:315
int nMyPointsToReturn
Definition: terrainReasoningJob.h:88
The DtPhysicalWorld is the primary interface to and manager of all of the "physical" aspects of the s...
Definition: physicalWorld.h:112
DtLocation3D myOriginPoint
Definition: terrainReasoningJob.h:200
double myMaxSlopeDegrees
Definition: terrainReasoningJob.h:206
void convertToLocalVectorList(const std::list< DtLocation3D > &sourceLocations, DtLocalVertexList &resultsList, DtTerrainInterface *pTerrainIf, bool bClamp=true)
Given a list of locations in a local coordinate system, clamp them to terrain height.
DtTerrainInterface * pMyTerrainInterface
Definition: terrainReasoningJob.h:379
std::list< DtLocation3D > mySourceAreaCorners
Definition: terrainReasoningJob.h:380
std::list< DtLocation3D > mySourceAreaCorners
Definition: terrainReasoningJob.h:303
double scoreOverallPctAverage
Definition: terrainReasoningJob.h:222
DtLocation3D findAreaCenter2D(const std::list< DtLocation3D > &targetAreaCorners)
Given a list of Location3D objects, return a DtLocation3D representing 2D center. Center is an averag...
double myCoverRange
Definition: terrainReasoningJob.h:387
DtLocation3D myOriginPoint
Definition: terrainReasoningJob.h:150
double myShootHeight
Definition: terrainReasoningJob.h:311
unsigned int myTargetsAreaSampleCount
Definition: terrainReasoningJob.h:306
double myTargetHeight
Definition: terrainReasoningJob.h:153
DtTerrainInterface allows access to common terrain calls without having to know the terrain implement...
Definition: terrainInterface.h:93
std::list< DtLocation3D > myTargetAreaCorners
Definition: terrainReasoningJob.h:199
double myTargetHeight
Definition: terrainReasoningJob.h:384
Base class for result of job.
Definition: asyncJobServer.h:43
double mySideSideSearchIntervalMeters
Definition: terrainReasoningJob.h:317
virtual void message(Severity, const std::string &) const
Output a messages from within the algorithm.
double myMaxSlopeDegrees
Definition: terrainReasoningJob.h:156
Handle to async job.
Definition: asyncJobMapEntry.h:29
DtVectorOffset3D myHideVolume
Definition: terrainReasoningJob.h:151
virtual void onExecute()=0
Called to execute a task.
double myViewHeight
Definition: terrainReasoningJob.h:202
Vehicle Position Query Job.
Definition: terrainReasoningJob.h:108
#define DT_DLL_terrainReasoning
This file is used to determine how to build.
Definition: terrainReasoningDefines.h:25
struct _Group PositionGroup
Definition: luaTerrainReasoningJob.h:301
Definition: terrainReasoningJob.h:51
double myShootHeight
Definition: terrainReasoningJob.h:385
Definition: terrainReasoningJob.h:93
std::vector< std::pair< DtLocation3D, DtLocation3D > > myPositionPairs
Definition: terrainReasoningJob.h:104
unsigned int myProminenceRangeMeters
Definition: terrainReasoningJob.h:309
std::list< DtLocation3D > myTargetAreaCorners
Definition: terrainReasoningJob.h:304
virtual void onException()=0
Called when an exception is caught during execution.
double myTargetHeight
Definition: terrainReasoningJob.h:310
DtTerrainInterface * pMyTerrainInterface
Definition: terrainReasoningJob.h:147
double myMaxSlopeDegrees
Definition: terrainReasoningJob.h:391
Definition: terrainReasoningJob.h:212
std::list< DtLocation3D > myTargetAreaCorners
Definition: terrainReasoningJob.h:148
bool bMyDebug
Definition: terrainReasoningJob.h:319
Hilltop Query Job.
Definition: terrainReasoningJob.h:67
double myPositionsSpacing
Definition: terrainReasoningJob.h:318
class DtLocalVertexList:
Definition: localVertexList.h:20
Find Position Groups In Area Using Ridge Algorithm Job.
Definition: terrainReasoningJob.h:324
double myPositionSpacing
Definition: terrainReasoningJob.h:157
std::vector< PositionGroup > groups
Definition: terrainReasoningJob.h:234
bool bMyDebug
Definition: terrainReasoningJob.h:394
std::vector< DtLocation3D > myHighPoints
Definition: terrainReasoningJob.h:62
double myMaxSlopeDegrees
Definition: terrainReasoningJob.h:316
std::vector< std::pair< DtLocation3D, DtLocation3D > > PositionPairs
Definition: terrainReasoningJob.h:215
double myHideHight
Definition: terrainReasoningJob.h:312
DtLocation3D pivotPoint
Definition: terrainReasoningJob.h:218
A location3D is a point in space, i.e. a geocentric coordinate.
Definition: scriptGeometry.h:22
DtTerrainInterface * pMyTerrainInterface
Definition: terrainReasoningJob.h:198