21 class NavTriangleRawPtr;
23 class NavHalfEdgeRawPtr;
24 class TriangleFromPosAndTriangleSeedQuery;
25 class ThinCapsuleWithExtentOffset;
34 QueryUtils(
Database* database, WorkingMemory* workingMemory,
void* traverseLogicUserData);
35 void Init(
Database* database, WorkingMemory* workingMemory,
void* traverseLogicUserData);
42 void* GetTraverseLogicUserData() {
return m_traverseLogicUserData; }
59 template <
class TLogic>
69 template <
class TLogic>
73 template <
class TLogic,
class BorderHalfEdgeProcessor>
74 KyResult BrowseAndProcessAllBorderNavHalfEdgeInBox(BorderHalfEdgeProcessor& borderHalfEdgeProcessor);
77 class CheckIfCurrentIntegerPositionIsValidParam
89 template <
class TraverseLogic>
96 void* m_traverseLogicUserData;
108 m_capsuleEndCoordPos = capsuleEndCoordPos;
109 m_capsuleSquareRadius = capsuleSquareRadius;
110 m_recoveryDistance = recoveryDistance;
113 m_capsuleSquareLength = capsule.GetSquareLength();
CoordPos64 m_capsuleStartCoordPos
lazily compute the offset and returns it
Definition: queryutils.h:121
std::uint64_t KyUInt64
uint64_t
Definition: types.h:30
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
Vertical range (above, below) that represents the altitude tolerance for a position to be inside the ...
Definition: positionspatializationrange.h:17
2d vector using KyInt64
Definition: vec2ll.h:18
bool IsHalfEdgeCompatibleWithThinCapsule(const NavHalfEdgeRawPtr &halfEdge, ThinCapsuleWithExtentOffset &capsuleParams)
Check if the specified half edge intersects the specified thin capsule.
Definition: queryutils.inl:23
Database * m_database
The Database taken into account by queries made through this object. Do not modify.
Definition: queryutils.h:94
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
This class is a runtime container for all NavData that represents the world from the point of view of...
Definition: database.h:57
Finds a triangle that contains the m_inputPos3f 2d coords by testing m_seedTrianglePtr and m_seedTria...
Definition: trianglefromposandtriangleseedquery.h:37
Navigation return code class.
Definition: types.h:108
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
WorkingMemory * m_workingMemory
Contains memory buffers used for performing queries and storing results. For internal use...
Definition: queryutils.h:95
Utilities for dealing with NavData coordinates, which are expressed in a world space based on integer...
Definition: worldintegerpos.h:19
PerformQueryStat
Definition: iquery.h:62
This class is an helper used internally by the Queries to factorize Code that is used in many Queries...
Definition: queryutils.h:28
Each instance of this class uniquely identifies a single NavHalfEdge in a NavFloor.
Definition: navhalfedgeptr.h:16
Each instance of this class uniquely identifies a single NavTriangle in a NavFloor.
Definition: navtriangleptr.h:17
bool FindTriangleFromPositionIfNotValid(NavTrianglePtr &navTrianglePtr, const Vec3f &pos, const PositionSpatializationRange &range)
if navTrianglePtr is not valid, updates navTrianglePtr with the one spatialied {pos.x, pos.y, pos.z}.
Definition: queryutils.cpp:48
#define KyInt64MAXVAL
KyInt64 max value
Definition: types.h:63
Particuliar class used to represent the ThinCapsule for QueryUtils::IsHalfEdgeCompatibleWithThinCapsu...
Definition: queryutils.h:102
Each instance of this class uniquely identifies a single NavHalfEdge in a NavFloor.
Definition: navhalfedgerawptr.h:23
3d vector using 32bits floating points.
Definition: vec3f.h:16