Kaim::ShortcutTrajectory< TraverseLogic > Class Template Reference

Kaim::ShortcutTrajectory< TraverseLogic > Class Template Reference

#include <shortcuttrajectory.h>

Class Description

template<class TraverseLogic>
class Kaim::ShortcutTrajectory< TraverseLogic >

This class computes minimal trajectory made of just one velocity.

It can be configured to:

  • either always goes straight towards target on path at maxSpeed (when Avoidance is disabled)
  • or delegate to an IAvoidanceComputer the computation of a velocity compatible with surrounding moving obstacles and bots (when Avoidance is enabled). NOTE: It should not be instantiated directly. It is in fact a sub-component of Trajectory

Inherits Kaim::BaseShortcutTrajectory.

Functions

void Compute (KyFloat32 simulationTimeInSeconds, KyUInt32 worldUpdateIdx)
 
void Clear ()
 
void ClearTrajectory ()
 
const Vec3fGetTrajectoryTarget () const
 
void ForceTargetToTargetOnPath ()
 
void ForceTargetToPosition (const Vec3f &forcedTarget)
 

For internal use only

BotGetBot () const
 
void SendVisualDebugBlob (VisualDebugServer &visualDebugServer, VisualDebugSendChangeEvent changeEvent)
 
void RemoveAllVisualDebugBeforeTrajectoryChange (VisualDebugServer &visualDebugServer)
 
void InitTargetOnPathIfNeeded ()
 
void UpdateTarget (KyFloat32 simulationTimeInSeconds, KyUInt32 worldUpdateIdx)
 
ShortcutMode GetShortcutMode (KyUInt32 worldUpdateIdx)
 
bool CanUseTargetOnPath () const
 
bool WillUpdatePathFollowThisFrame (KyFloat32 simulationTimeInSeconds, KyUInt32 worldUpdateIdx, KyUInt32 updatePeriod)
 
Trajectorym_trajectory
 
ShortcutTrajectoryConfig m_config
 
Ptr< IAvoidanceComputerm_avoidanceComputer
 
TargetOnPath m_targetOnPath
 
Vec3f m_target
 
KyUInt32 m_updateLastUpdateIdx
 
ShortcutMode m_shortcutMode
 
ShortcutMode m_prevShortcutMode
 
KyUInt32 m_trajectoryComputeModeLastUpdateIdx
 
bool m_useTargetProvidedByUser
 
bool m_useMinimalTargetUpdate
 
bool m_visualDebugBlobSent
 

Functions

 ShortcutTrajectory (Trajectory *trajectory)
 

For internal use only

virtual KyResult ComputeTargetOnPath (KyFloat32 simulationTimeInSeconds)
 
virtual KyResult ComputeTargetOnPathOnNavMeshOnly (TargetOnPath &targetOnPath, KyFloat32 simulationTimeInSeconds, ComputeTargetOnPathSearchControl forwardSearchControl) const
 

The documentation for this class was generated from the following files: