17 class DtTerrainReasoningJob;
26 typedef std::list<DtLocation3D>
Points;
28 static std::shared_ptr<DtLuaHilltopQueryJob> Make(
31 unsigned int nPointsToReturn,
42 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message)
override;
45 virtual luabind::object
getDebugObject(lua_State* L)
override {
return luabind::newtable(L);}
48 virtual void cancel(lua_State* L)
override {};
60 std::shared_ptr<DtLuaHilltopQueryJob> shared_from_this();
61 std::shared_ptr<const DtLuaHilltopQueryJob> shared_from_this()
const;
69 unsigned int nPointsToReturn,
117 static std::shared_ptr<DtLuaVehicleFightingPositionQueryJob> Make(
119 unsigned int nPointsToReturn,
120 const std::list<DtLocation3D>& targetAreaCorners,
125 double forwardBackSearchLimit,
126 double sideSideSearchLimit,
127 double maxSlopeDegrees,
128 double positionSpacing,
129 bool bDebug =
false);
139 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message)
override;
142 virtual luabind::object
getDebugObject(lua_State* L)
override {
return luabind::newtable(L); }
145 virtual void cancel(lua_State* L)
override {};
157 std::shared_ptr<DtLuaVehicleFightingPositionQueryJob> shared_from_this();
158 std::shared_ptr<const DtLuaVehicleFightingPositionQueryJob> shared_from_this()
const;
165 unsigned int nPointsToReturn,
166 const std::list<DtLocation3D>& targetAreaCorners,
171 double forwardBackSearchLimit,
172 double sideSideSearchLimit,
173 double maxSlopeDegrees,
174 double positionSpacing,
175 bool bDebug =
false);
210 static std::shared_ptr<DtLuaFindSinglePositionQueryJob> Make(
212 const std::list<DtLocation3D>& targetAreaCorners,
214 double targetHeightMeters,
215 double viewHeightMeters,
216 double hideHeightMeters,
217 double forwardBackSearchLimitMeters,
218 double forwardBackSearchIntervalMeters,
219 double maxSlopeDegrees,
220 bool bDebug =
false);
230 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message)
override;
233 virtual luabind::object
getDebugObject(lua_State* L)
override {
return luabind::newtable(L); }
236 virtual void cancel(lua_State* L)
override {};
248 std::shared_ptr<DtLuaFindSinglePositionQueryJob> shared_from_this();
249 std::shared_ptr<const DtLuaFindSinglePositionQueryJob> shared_from_this()
const;
256 const std::list<DtLocation3D>& targetAreaCorners,
258 double targetHeightMeters,
259 double viewHeightMeters,
260 double hideHeightMeters,
261 double forwardBackSearchLimitMeters,
262 double forwardBackSearchIntervalMeters,
263 double maxSlopeDegrees,
264 bool bDebug =
false);
288 namespace LuaTerrainReasoning
311 static std::shared_ptr<DtLuaFindPositionGroupsInAreaUsingHilltopsQueryJob> Make(
313 const std::list<DtLocation3D>& sourceAreaVertices,
314 const std::list<DtLocation3D>& targetsAreaVertices,
315 double viewHeightMeters,
316 double hideHeightMeters,
317 double forwardBackSearchLimitMeters,
318 double sideToSideSearchLimitMeters,
319 double searchIntervalMeters,
320 double maxSlopeDegrees,
321 double positionsSpacing,
322 unsigned int positionsCount,
323 bool bDebug =
false);
333 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message)
override;
336 virtual luabind::object
getDebugObject(lua_State* L)
override {
return luabind::newtable(L); }
339 virtual void cancel(lua_State* L)
override {};
349 virtual void deserializePositionPairs(std::vector<std::pair<DtLocation3D, DtLocation3D> >& toPairs,
const std::vector<DtString>& tokens,
unsigned int& tokenIndex);
351 virtual void deserializeGroups(std::vector<LuaTerrainReasoning::PositionGroup>& toGroups,
const std::vector<DtString>& tokens,
unsigned int& tokenIndex );
352 virtual void clearGroups(std::vector<LuaTerrainReasoning::PositionGroup>& groups);
358 std::shared_ptr<DtLuaFindPositionGroupsInAreaUsingHilltopsQueryJob> shared_from_this();
359 std::shared_ptr<const DtLuaFindPositionGroupsInAreaUsingHilltopsQueryJob> shared_from_this()
const;
367 const std::list<DtLocation3D>& sourceAreaVertices,
368 const std::list<DtLocation3D>& targetsAreaVertices,
369 double viewHeightMeters,
370 double hideHeightMeters,
371 double forwardBackSearchLimitMeters,
372 double sideToSideSearchLimitMeters,
373 double searchIntervalMeters,
374 double maxSlopeDegrees,
375 double positionsSpacing,
376 unsigned int positionsCount,
377 bool bDebug =
false);
418 static std::shared_ptr<DtLuaFindPositionGroupsInAreaUsingRidgeQueryJob> Make(
420 const std::list<DtLocation3D>& sourceAreaVertices,
421 const std::list<DtLocation3D>& targetsAreaVertices,
422 unsigned int targetsAreaSampleCount,
423 double viewHeightMeters,
424 double hideHeightMeters,
425 double coverRangeMeters,
426 double sideToSideSearchLimitMeters,
427 double lateralSearchIntervalMeters,
428 double forwardBackSearchLimitMeters,
429 double forwardSearchIntervalMeters,
430 double maxSlopeDegrees,
431 double positionsSpacing,
432 unsigned int positionsCount,
433 bool bDebug =
false);
443 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message)
override;
446 virtual luabind::object
getDebugObject(lua_State* L)
override {
return luabind::newtable(L); }
449 virtual void cancel(lua_State* L)
override {};
459 virtual void deserializePositionPairs(std::vector<std::pair<DtLocation3D, DtLocation3D> >& toPairs,
const std::vector<DtString>& tokens,
unsigned int& tokenIndex);
461 virtual void deserializeGroups(std::vector<LuaTerrainReasoning::PositionGroup>& toGroups,
const std::vector<DtString>& tokens,
unsigned int& tokenIndex);
462 virtual void clearGroups(std::vector<LuaTerrainReasoning::PositionGroup>& groups);
468 std::shared_ptr<DtLuaFindPositionGroupsInAreaUsingRidgeQueryJob> shared_from_this();
469 std::shared_ptr<const DtLuaFindPositionGroupsInAreaUsingRidgeQueryJob> shared_from_this()
const;
477 const std::list<DtLocation3D>& sourceAreaVertices,
478 const std::list<DtLocation3D>& targetsAreaVertices,
479 unsigned int targetsAreaSampleCount,
480 double viewHeightMeters,
481 double hideHeightMeters,
482 double coverRangeMeters,
483 double sideToSideSearchLimitMeters,
484 double lateralSearchIntervalMeters,
485 double forwardBackSearchLimitMeters,
486 double forwardSearchIntervalMeters,
487 double maxSlopeDegrees,
488 double positionsSpacing,
489 unsigned int positionsCount,
490 bool bDebug =
false);
bool bMyDebug
Definition: luaTerrainReasoningJob.h:401
bool bMyDebug
Definition: luaTerrainReasoningJob.h:515
double myHideHight
Definition: luaTerrainReasoningJob.h:507
double myForwardBackSearchLimitMeters
Definition: luaTerrainReasoningJob.h:513
DtAsyncJobStatus
State of job.
Definition: asyncJobServer.h:33
double myHideHight
Definition: luaTerrainReasoningJob.h:394
virtual void cancel(lua_State *L) override
Currently a no-op.
Definition: luaTerrainReasoningJob.h:145
LuaTerrainReasoning::Points mySourceAreaCorners
Definition: luaTerrainReasoningJob.h:498
double myShootHeight
Definition: luaTerrainReasoningJob.h:393
std::vector< LuaTerrainReasoning::PositionGroup > myPositionGroups
Definition: luaTerrainReasoningJob.h:519
double myTargetHeight
Definition: luaTerrainReasoningJob.h:505
std::vector< std::pair< DtLocation3D, DtLocation3D > > myPositionPairs
Definition: luaTerrainReasoningJob.h:195
virtual luabind::object getDebugObject(lua_State *L) override
Retrieve debug data, if available. Default return value is an empty table.
Definition: luaTerrainReasoningJob.h:142
const DtString DtLuaFindSinglePositionQueryJobType
Definition: luaTerrainReasoningJob.h:202
std::vector< DtLocation3D > myFoundPositionPair
Definition: luaTerrainReasoningJob.h:283
const DtString DtLuaFindPositionGroupsInAreaUsingHilltopsQueryJobType
Definition: luaTerrainReasoningJob.h:304
double mySideSideSearchLimit
Definition: luaTerrainReasoningJob.h:509
double myViewHeight
Definition: luaTerrainReasoningJob.h:275
double myHideHeight
Definition: luaTerrainReasoningJob.h:274
double myTargetHeight
Definition: luaTerrainReasoningJob.h:392
double myForwardBackSearchIntervalMeters
Definition: luaTerrainReasoningJob.h:511
double myForwardBackSearchInterval
Definition: luaTerrainReasoningJob.h:278
double myMaxSlopeDegrees
Definition: luaTerrainReasoningJob.h:279
DtLocation3D myOriginPoint
Definition: luaTerrainReasoningJob.h:185
Definition: asciiSerializable.h:40
std::list< DtLocation3D > Points
Definition: luaTerrainReasoningJob.h:115
virtual luabind::object getDebugObject(lua_State *L) override
Retrieve debug data, if available. Default return value is an empty table.
Definition: luaTerrainReasoningJob.h:446
Interface for getting asynchronously computed data into Lua.
Definition: luaAsyncJob.h:27
double myMaxSlopeDegrees
Definition: luaTerrainReasoningJob.h:398
virtual bool deserialize(const DtString &)=0
This function should take the string that was serialized via serialize() and fill this object with th...
DtLocation3D pivotPoint
Definition: luaTerrainReasoningJob.h:295
DtVectorOffset3D myHideVolume
Definition: luaTerrainReasoningJob.h:186
double scoreViewPctAverage
Definition: luaTerrainReasoningJob.h:297
Lua object class which represents a terrain reasoning job.
Definition: luaTerrainReasoningJob.h:205
double myMaxSlopeDegrees
Definition: luaTerrainReasoningJob.h:191
unsigned int myNumberPositionsPerGroupRequested
Definition: luaTerrainReasoningJob.h:387
virtual DtString serialize()=0
The following characters are reserved and cannot be used in serialization: '|', ':'.
double myProminenceMeters
Definition: luaTerrainReasoningJob.h:390
Lua object class which represents a terrain reasoning job. Given an origin point, which is assumed to...
Definition: luaTerrainReasoningJob.h:112
virtual luabind::object getDebugObject(lua_State *L) override
Retrieve debug data, if available. Default return value is an empty table.
Definition: luaTerrainReasoningJob.h:233
unsigned int nMyPointsToReturn
Definition: luaTerrainReasoningJob.h:79
double myForwardBackSearchLimit
Definition: luaTerrainReasoningJob.h:277
std::vector< LuaTerrainReasoning::PositionGroup > myPositionGroups
Definition: luaTerrainReasoningJob.h:405
DtAsyncJobStatus myStatus
Definition: luaTerrainReasoningJob.h:403
std::list< DtLocation3D > Points
Definition: luaTerrainReasoningJob.h:290
unsigned int myTargetsAreaSampleCount
Definition: luaTerrainReasoningJob.h:388
double myMaxSlopeDegrees
Definition: luaTerrainReasoningJob.h:512
unsigned int myNumberPositionsPerGroupRequested
Definition: luaTerrainReasoningJob.h:500
bool bMyDebug
Definition: luaTerrainReasoningJob.h:280
unsigned int myGridResolutionMeters
Definition: luaTerrainReasoningJob.h:389
VectorOffset3D is a direction vector that is relative to some direction specified by a Vector3D...
Definition: scriptGeometry.h:428
virtual luabind::object getDebugObject(lua_State *L) override
Retrieve debug data, if available. Default return value is an empty table.
Definition: luaTerrainReasoningJob.h:336
unsigned int myProminenceRangeMeters
Definition: luaTerrainReasoningJob.h:391
std::shared_ptr< DtAsyncJobMapEntry > myJobEntry
Definition: luaTerrainReasoningJob.h:197
virtual void cancel(lua_State *L) override
Currently a no-op.
Definition: luaTerrainReasoningJob.h:339
double myProminenceMeters
Definition: luaTerrainReasoningJob.h:503
double myTargetHeight
Definition: luaTerrainReasoningJob.h:276
bool bMyDebug
Definition: luaTerrainReasoningJob.h:80
double myPositionSpacing
Definition: luaTerrainReasoningJob.h:192
Lua object class which represents a terrain reasoning job.
Definition: luaTerrainReasoningJob.h:307
virtual void cancel(lua_State *L) override
Currently a no-op.
Definition: luaTerrainReasoningJob.h:236
std::shared_ptr< DtAsyncJobMapEntry > myJobEntry
Definition: luaTerrainReasoningJob.h:85
double mySideSideSearchLimit
Definition: luaTerrainReasoningJob.h:396
#define DT_DLL_vrfLua
This file is used to determine how to build.
Definition: vrfLuaDefines.h:25
DtLocation3D myPivotPoint
Definition: luaTerrainReasoningJob.h:273
double mySideSideSearchIntervalMeters
Definition: luaTerrainReasoningJob.h:399
double myShootHeight
Definition: luaTerrainReasoningJob.h:187
const DtString DtLuaFindPositionGroupsInAreaUsingRidgeQueryJobType
Definition: luaTerrainReasoningJob.h:411
virtual luabind::object getObject(lua_State *L, int &index, std::string &message)=0
Retrieve current value.
const DtString DtLuaHilltopQueryJobType
Definition: luaTerrainReasoningJob.h:20
unsigned int myProminenceRangeMeters
Definition: luaTerrainReasoningJob.h:504
unsigned int myTargetsAreaSampleCount
Definition: luaTerrainReasoningJob.h:501
double mySideSideSearchLimit
Definition: luaTerrainReasoningJob.h:190
Points myCorners
Definition: luaTerrainReasoningJob.h:78
unsigned int myGridResolutionMeters
Definition: luaTerrainReasoningJob.h:502
virtual void cancel(lua_State *L) override
Currently a no-op.
Definition: luaTerrainReasoningJob.h:48
LuaTerrainReasoning::Points myTargetAreaCorners
Definition: luaTerrainReasoningJob.h:499
virtual DtString objectType() const =0
Should return the string name of this object. The object name should not be part of the serialization...
DtAsyncJobStatus myStatus
Definition: luaTerrainReasoningJob.h:82
DtAsyncJobStatus myStatus
Definition: luaTerrainReasoningJob.h:517
std::shared_ptr< DtAsyncJobMapEntry > myJobEntry
Definition: luaTerrainReasoningJob.h:521
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
PositionPairs positions
Definition: luaTerrainReasoningJob.h:296
std::list< DtLocation3D > Points
Definition: luaTerrainReasoningJob.h:26
double myPositionsSpacing
Definition: luaTerrainReasoningJob.h:514
double myForwardBackSearchLimit
Definition: luaTerrainReasoningJob.h:189
DtAsyncJobStatus myStatus
Definition: luaTerrainReasoningJob.h:282
Points myTargetAreaCorners
Definition: luaTerrainReasoningJob.h:272
double myForwardBackSearchIntervalMeters
Definition: luaTerrainReasoningJob.h:397
double myPositionsSpacing
Definition: luaTerrainReasoningJob.h:400
LuaTerrainReasoning::Points myTargetAreaCorners
Definition: luaTerrainReasoningJob.h:386
LuaTerrainReasoning::Points mySourceAreaCorners
Definition: luaTerrainReasoningJob.h:385
bool bMyDebug
Definition: luaTerrainReasoningJob.h:199
Lua object class which represents a terrain reasoning job.
Definition: luaTerrainReasoningJob.h:414
Points myTargetAreaCorners
Definition: luaTerrainReasoningJob.h:183
std::shared_ptr< DtAsyncJobMapEntry > myJobEntry
Definition: luaTerrainReasoningJob.h:285
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:137
virtual luabind::object getDebugObject(lua_State *L) override
Retrieve debug data, if available. Default return value is an empty table.
Definition: luaTerrainReasoningJob.h:45
virtual void cancel(lua_State *L) override
Currently a no-op.
Definition: luaTerrainReasoningJob.h:449
DtAsyncJobStatus myStatus
Definition: luaTerrainReasoningJob.h:194
double myCoverRange
Definition: luaTerrainReasoningJob.h:508
double scoreCoverPctAverage
Definition: luaTerrainReasoningJob.h:298
const DtString DtLuaVehicleFightingPositionQueryJobType
Definition: luaTerrainReasoningJob.h:88
double mySideSideSearchIntervalMeters
Definition: luaTerrainReasoningJob.h:510
Lua object class which represents a terrain reasoning job.
Definition: luaTerrainReasoningJob.h:23
std::list< DtLocation3D > Points
Definition: luaTerrainReasoningJob.h:208
std::vector< std::pair< DtLocation3D, DtLocation3D > > PositionPairs
Definition: luaTerrainReasoningJob.h:292
General interface which can be passed into an algorithm to control its behavior.
Definition: algorithmManager.h:24
double myForwardBackSearchLimitMeters
Definition: luaTerrainReasoningJob.h:395
double myShootHeight
Definition: luaTerrainReasoningJob.h:506
double myTargetHeight
Definition: luaTerrainReasoningJob.h:188
std::vector< DtLocation3D > myHighPoints
Definition: luaTerrainReasoningJob.h:83
double scoreOverallPctAverage
Definition: luaTerrainReasoningJob.h:299
std::shared_ptr< DtAsyncJobMapEntry > myJobEntry
Definition: luaTerrainReasoningJob.h:407
unsigned int nMyPointsToReturn
Definition: luaTerrainReasoningJob.h:184
A location3D is a point in space, i.e. a geocentric coordinate.
Definition: scriptGeometry.h:22
Definition: luaTerrainReasoningJob.h:293