9 #ifndef Navigation_BaseFindFirstVisiblePositionOnPathQuery_H
10 #define Navigation_BaseFindFirstVisiblePositionOnPathQuery_H
39 static QueryType GetStaticType() {
return TypeFindFirstVisiblePositionOnPath; }
40 virtual QueryType GetType()
const {
return TypeFindFirstVisiblePositionOnPath; }
41 virtual void BuildQueryBlob(BaseBlobHandler* blobHandler);
42 virtual void InitFromQueryBlob(
World* world,
void* blob);
43 virtual Ptr<BaseBlobHandler> CreateQueryBlobHandler() {
return CreateStaticQueryBlobHandler(); }
44 static Ptr<BaseBlobHandler> CreateStaticQueryBlobHandler();
52 const Vec3f& GetVisibilityStartPoint()
const;
56 KyFloat32 GetCostToVisiblePositionOnPath()
const;
60 enum CandidateValidationResult
69 void BindToDatabase(
Database* database);
72 void SetVisibilityStartTrianglePtr(
const NavTrianglePtr& startTrianglePtr);
73 void SetSamplingDistance(
KyFloat32 samplingDistance);
99 #endif // Navigation_BaseFindFirstVisiblePositionOnPathQuery_H
FindFirstVisiblePositionOnPathQueryResult
Enumerates the possible results of a FindFirstVisiblePositionOnPathQuery.
Definition: basefindfirstvisiblepositiononpathquery.h:21
Base class for FindFirstVisiblePositionOnPathQuery.
Definition: basefindfirstvisiblepositiononpathquery.h:36
This class aggregates all necessary information about a position on a Path, namely: ...
Definition: positiononpath.h:33
Indicates that a NavMesh triangle has been found for visibilityStartPoint, but its NavTag is not cons...
Definition: basefindfirstvisiblepositiononpathquery.h:27
PositionOnPath m_endPositionOnPath
The end point of the PositionOnPath query on the Path.
Definition: basefindfirstvisiblepositiononpathquery.h:86
Base class for all the queries that do not need to be time-sliced.
Definition: iquery.h:289
Vec3f m_visibilityStartPos3f
The visibility check starting position.
Definition: basefindfirstvisiblepositiononpathquery.h:88
FindFirstVisiblePositionOnPathQueryResult m_result
Updated during processing to indicate the result of the query.
Definition: basefindfirstvisiblepositiononpathquery.h:95
This class is a runtime container for Gameware Navigation WorldElements such as NavData, Bots, BoxObstacles, TagVolumes...
Definition: world.h:54
QueryType
Enumerates all the type of query.
Definition: iquery.h:29
Indicates that none of the PositionOnPath locations sampled between startPositionOnPath and endPositi...
Definition: basefindfirstvisiblepositiononpathquery.h:28
This class is a runtime container for all NavData that represents the world from the point of view of...
Definition: database.h:64
RayCanGoMarginMode
Defines the different mode for the NavMesh border margin to be used in RayCanGo queries.
Definition: database.h:41
Indicates the query has not yet been initialized.
Definition: basefindfirstvisiblepositiononpathquery.h:23
Definition: gamekitcrowddispersion.h:20
Indicates that the query can pass in a straight line from start to end point without a collision...
Definition: basefindfirstvisiblepositiononpathquery.h:32
Indicates the query has not yet been launched.
Definition: basefindfirstvisiblepositiononpathquery.h:24
Indicates that an unknown error occurred during the query processing.
Definition: basefindfirstvisiblepositiononpathquery.h:30
RayCanGoMarginMode m_rayCanGoMarginMode
The margin mode to be used in ray can go queries.
Definition: basefindfirstvisiblepositiononpathquery.h:91
NavTrianglePtr m_visibilityStartTrianglePtr
The NavMesh triangle that corresponds to m_visibilityStartPos3f. Can be set as an input...
Definition: basefindfirstvisiblepositiononpathquery.h:89
Indicates that the query has not yet been initialized.
Definition: iquery.h:346
Each instance of this class uniquely identifies a single NavTriangle in a NavFloor.
Definition: navtriangleptr.h:22
Indicates that the query has not yet been launched.
Definition: iquery.h:347
Indicates that insufficient memory was available to store crossed triangles or sub-sections, and the query failed as a result.
Definition: basefindfirstvisiblepositiononpathquery.h:29
void Initialize()
Should be called by the derived class before trying to perform the query or to push it in a QueryQueu...
Definition: iquery.h:372
Indicates that a NavMesh triangle could not be found for the visibilityStartPoint.
Definition: basefindfirstvisiblepositiononpathquery.h:26
PositionOnPath m_startPositionOnPath
The start point of the PositionOnPath query on the Path.
Definition: basefindfirstvisiblepositiononpathquery.h:85
PositionOnPath m_firstVisiblePositionOnPath
Updated during processing to indicate the first visible PositionOnPath found.
Definition: basefindfirstvisiblepositiononpathquery.h:96
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43
This class defines a three-dimensional vector whose coordinates are stored using floating-point numbe...
Definition: vec3f.h:23