OROCHI
 
Loading...
Searching...
No Matches
GxPathSetAreaRRT Class Reference

RRT(Rapidly Random Tree)経路セットエリアクラス More...

#include <GxPathSet.h>

Inheritance diagram for GxPathSetAreaRRT:
Collaboration diagram for GxPathSetAreaRRT:

Public Types

定義
enum class  TREE_TYPE { GROUND , AIR }
 ツリーのタイプ More...
 
- Public Types inherited from GxPathSet::GxPathSetArea
enum class  SEARCH_LENGTH { SHORT = 0 , LONG , MAX }
 探索距離 More...
 
enum class  SEARCH_TYPE { NEAR_ = 0 , FAR_ , MAX }
 探索方法 More...
 
enum  ATTRIBUTE { ATTRIBUTE_COLLISION_INVALID = (1 << 0) , ATTRIBUTE_TARGET_NEAR = (1 << 1) , ATTRIBUTE_TARGET_FAR = (1 << 2) }
 ノード取得用属性 More...
 

Public Member Functions

初期化
 GxPathSetAreaRRT (void)
 デフォルトコンストラクタ
 
 ~GxPathSetAreaRRT (void) override
 デストラクタ
 
探索用関数
void createRRT (const GxVector3 &startPosition, const GxVector3 &goalPosition, TREE_TYPE treeType=TREE_TYPE::GROUND, f32 searchAreaSize=30.0f, f32 maxConnectLength=2.0f, u32 maxNode=32, f32 goalCheckDistance=2.0f)
 RRT生成
 
- Public Member Functions inherited from GxPathSet::GxPathSetArea
 GxPathSetArea (void)
 コンストラクタ
 
 ~GxPathSetArea (void) override
 デストラクタ
 
void createShape (GxResPathSet::GxAreaParam *pAreaParam)
 形状を作成
 
constexpr s32 getId (void) const
 IDを取得
 
constexpr void setId (s32 id)
 IDを設定
 
constexpr void setShape (GxShape *pShape)
 コリジョンの形状を設定
 
GX_FORCE_INLINE void addNode (GxPathNode *pNode)
 ノードを追加
 
void addRoute (GxPath *pRoute, s32 id)
 ルートを追加
 
void eraseAllNode (void)
 全てのノードを削除
 
void eraseAllRoute (void)
 全てのルートを削除
 
GxPathNodegetNode (u32 id)
 ノードを取得(ID指定)
 
GxPathNodegetNode (u32 dataIndex, s32 dataValue)
 ノードを取得(データ指定)
 
GxPathNodegetNearNode (const GxVector3 &position, u32 attribute=0, const GxVector3 *pTargetPosition=nullptr)
 最も近いノードを取得
 
GxPathNodegetFarNode (const GxVector3 &position)
 最も遠いノードを取得
 
b32 isInclude (const GxVector3 &position) const
 エリアに含まれるか判定
 
b32 searchNoCost (GxPathNode *pStartNode, GxPathNode *pGoalNode, GxPath *pPath)
 コスト無視探索
 
b32 searchFast (GxPathNode *pStartNode, GxPathNode *pGoalNode, GxPath *pPath, GxClassBaseRoot *pObject, SEARCH_LENGTH length=SEARCH_LENGTH::SHORT)
 高速探索
 
b32 searchAStar (GxPathNode *pStartNode, GxPathNode *pGoalNode, GxPath *pPath, GxClassBaseRoot *pObject, SEARCH_LENGTH length=SEARCH_LENGTH::SHORT)
 A*探索
 
b32 getRoute (s32 id, GxPath *pPath) const
 固定ルートを取得
 
- Public Member Functions inherited from GxClassBase
constexpr GxClassBase (void)
 コンストラクタ
 
constexpr GxClassBase (const GxClassBase &base)
 コピーコンストラクタ
 
 ~GxClassBase (void) override
 デストラクタ
 
- Public Member Functions inherited from GxClassBaseRoot
constexpr GxClassBaseRoot (void)
 コンストラクタ
 
constexpr GxClassBaseRoot (const GxClassBaseRoot &)
 コピーコンストラクタ
 
virtual ~GxClassBaseRoot (void)
 デストラクタ
 
constexpr GxClassBaseRootoperator= (const GxClassBaseRoot &)
 代入演算子
 
virtual GxRttigetRtti (void) const =0
 Rttiの取得
 
virtual GX_FORCE_INLINE const GxTypedObjectgetDefaultObject (void)
 デフォルトオブジェクトを取得
 
GX_FORCE_INLINE b32 isDefaultObject (void)
 デフォルトオブジェクト判定
 

Additional Inherited Members

- Static Public Member Functions inherited from GxClassBaseRoot
static GX_FORCE_INLINE GxRtti__getStaticRtti (void)
 Rttiの取得
 
- Protected Member Functions inherited from GxPathSet::GxPathSetArea
b32 checkCollision (const GxVector3 &startPosition, const GxVector3 &endPosition)
 衝突判定
 

Detailed Description

RRT(Rapidly Random Tree)経路セットエリアクラス

Member Enumeration Documentation

◆ TREE_TYPE

enum class GxPathSetAreaRRT::TREE_TYPE
strong

ツリーのタイプ

Enumerator
GROUND 

地上経路

AIR 

空中経路

Member Function Documentation

◆ createRRT()

void GxPathSetAreaRRT::createRRT ( const GxVector3 & startPosition,
const GxVector3 & goalPosition,
TREE_TYPE treeType = TREE_TYPE::GROUND,
f32 searchAreaSize = 30.0f,
f32 maxConnectLength = 2.0f,
u32 maxNode = 32,
f32 goalCheckDistance = 2.0f )

RRT生成

Parameters
startPosition[in] 開始座標
goalPosition[in] ゴール座標
treeType[in] 地上か空中か
searchAreaSize[in] startPosを中心とした、ツリーの構築範囲
maxConnectLength[in] それぞれのノード間の距離、細かさ
maxNode[in] ノードの最大数
goalCheckDistance[in] ゴール到着判定の許容距離
Here is the call graph for this function:

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