15 class ShortcutTrajectoryConfigBlob;
17 class AdvancedShortcutTrajectoryConfig
22 AdvancedShortcutTrajectoryConfig() { SetDefaults(); }
25 bool operator==(
const AdvancedShortcutTrajectoryConfig& other)
const;
26 bool operator!=(
const AdvancedShortcutTrajectoryConfig& other)
const {
return !operator==(other); }
76 inline void SwapEndianness(
Endianness::Target e, AdvancedShortcutTrajectoryConfig&
self)
78 SwapEndianness(e,
self.m_snapOnPathDistance);
79 SwapEndianness(e,
self.m_shortcutAttemptDistanceRatio);
80 SwapEndianness(e,
self.m_shortcutForceAttemptDistance);
81 SwapEndianness(e,
self.m_forwardSamplingDistance);
82 SwapEndianness(e,
self.m_forwardMaxDistance);
83 SwapEndianness(e,
self.m_backwardSamplingDistance);
84 SwapEndianness(e,
self.m_backwardMaxDistance);
96 void InitFromBlob(
const ShortcutTrajectoryConfigBlob& blob);
109 AdvancedShortcutTrajectoryConfig m_advancedConfig;
114 KY_INLINE
void AdvancedShortcutTrajectoryConfig::SetDefaults()
116 m_snapOnPathDistance = 0.05f;
117 m_shortcutAttemptDistanceRatio = 0.7f;
118 m_shortcutForceAttemptDistance = 0.5f;
119 m_forwardSamplingDistance = 1.f;
120 m_forwardMaxDistance = 10.f;
121 m_backwardSamplingDistance = 1.f;
122 m_backwardMaxDistance = 10.f;
124 KY_INLINE
bool AdvancedShortcutTrajectoryConfig::operator==(
const AdvancedShortcutTrajectoryConfig& other)
const
126 return m_snapOnPathDistance == other.m_snapOnPathDistance
127 && m_shortcutAttemptDistanceRatio == other.m_shortcutAttemptDistanceRatio
128 && m_shortcutForceAttemptDistance == other.m_shortcutForceAttemptDistance
129 && m_forwardSamplingDistance == other.m_forwardSamplingDistance
130 && m_forwardMaxDistance == other.m_forwardMaxDistance
131 && m_backwardSamplingDistance == other.m_backwardSamplingDistance
132 && m_backwardMaxDistance == other.m_backwardMaxDistance;
136 KY_INLINE
void ShortcutTrajectoryConfig::SetDefaults()
139 m_advancedConfig.SetDefaults();
142 KY_INLINE
bool ShortcutTrajectoryConfig::operator==(
const ShortcutTrajectoryConfig& other)
const
145 && m_advancedConfig == m_advancedConfig;
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:27
bool m_snapOnPath
Setting true forces the trajectory not to shortcut when the bot is at a distance from the path which ...
Definition: shortcuttrajectoryconfig.h:107
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
Set of parameters used by the ShortcutTrajectory and TargetOnPathComputer classes to update Bot targe...
Definition: shortcuttrajectoryconfig.h:89
float KyFloat32
float
Definition: types.h:32