gwnavruntime/queries/utils/traversalparams.h Source File

traversalparams.h
Go to the documentation of this file.
1 /*
2 * Copyright 2016 Autodesk, Inc. All rights reserved.
3 * Use of this software is subject to the terms of the Autodesk license agreement and any attachments or Appendices thereto provided at the time of installation or download,
4 * or which otherwise accompanies this software in either electronic or hard copy form, or which is signed by you and accepted by Autodesk.
5 */
6 
7 #pragma once
8 
13 
14 namespace Kaim
15 {
16 
19 {
20 public:
21  TraversalParameters() { BindToDatabase(nullptr); }
22 
23  void BindToDatabase(Database* database)
24  {
25  m_numberOfVisitedNodePerAdvance = 30;
26  m_numberOfCanGotInRefinerPerAdvance = 15;
27  m_numberOfClampIntersectionPerAdvance = 100;
30  InitializeForQuery(database);
31  }
32 
33  void InitializeForQuery(Database* database)
34  {
37  m_abstractGraphTraversalMode = PATHFINDER_TRAVERSE_ABSTRACT_GRAPHS;
38  if (database != nullptr)
39  {
40  m_activeDataCellBox = database->GetActiveData()->GetCellBox();
41  m_positionSpatializationRange = database->GetPositionSpatializationRange();
42  }
43  }
44 
47 
55 
63 
64  KyUInt32 m_numberOfVisitedNodePerAdvance;
65  KyUInt32 m_numberOfCanGotInRefinerPerAdvance;
66  KyUInt32 m_numberOfClampIntersectionPerAdvance;
67 
69  PathFinderAbstractGraphTraversalMode m_abstractGraphTraversalMode;
70 
73 
76 };
77 
78 }
79 
80 
2d axis aligned box of 32bits integers. Very Important: CountX() returns m_max.x - m_min...
Definition: box2i.h:17
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
KyArray< CellBox > m_additionalActiveDataCellBoxes
Cellbox of destinations if traversing abstract graphs.
Definition: traversalparams.h:75
General purpose array for movable objects that require explicit construction/destruction.
Definition: kyarray.h:162
CellBox m_activeDataCellBox
Cellbox if start abstract graph if traversing abstract graphs, otherwise CellBox of propagation box...
Definition: traversalparams.h:72
KyFloat32 m_fromOutsideNavMeshDistance
The maximum distance from the start along the X axis and along the Y axis that will be searched for N...
Definition: traversalparams.h:54
An internal class that stores parameters used to control the propagation of traversals.
Definition: traversalparams.h:18
This class is a runtime container for all NavData that represents the world from the point of view of...
Definition: database.h:57
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
PathFinderAbstractGraphTraversalMode m_abstractGraphTraversalMode
Indicates if the traversal should traverse AbstractGraphs.
Definition: traversalparams.h:69
PositionSpatializationRange m_positionSpatializationRange
The altitude range used to find NavMesh triangles that correspond to the start and destination points...
Definition: traversalparams.h:46
void Clear()
Set { {+infinite, +infinite}, {-infinite, -infinite} }.
Definition: box2i.h:31
const CellBox & GetCellBox() const
Retrieves a CellBox that encloses all the navigation data in this ActiveData.
Definition: activedata.inl:18
float KyFloat32
float
Definition: types.h:32
KyFloat32 m_toOutsideNavMeshDistance
The maximum distance from the destination along the X axis and along the Y axis that will be searched...
Definition: traversalparams.h:62