FineKernelToolKit 4.2.13
読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | 全メンバ一覧
FK::fk_GuideObject クラス

座標系可視化支援クラス [詳解]

#include <FK/GuideObject.h>

公開メンバ関数

 fk_GuideObject (void)
 コンストラクタ
 
 ~fk_GuideObject (void)
 デストラクタ
 
void setScale (double scale)
 グリッド間隔設定関数
 
void setNum (int num)
 グリッド分割数設定関数
 
void setParent (fk_Model *model)
 座標系ガイド適用モデル設定関数
 
void entryScene (fk_Scene *scene, fk_Guide mode=fk_Guide::AXIS_X|fk_Guide::AXIS_Y|fk_Guide::AXIS_Z|fk_Guide::GRID_XZ)
 シーン登録関数
 
void removeScene (fk_Scene *scene, fk_Guide mode=fk_Guide::NO_GUIDE)
 シーン登録解除関数
 

詳解

座標系可視化支援クラス

このクラスは、座標系を可視化を支援するためのクラスで、 座標軸やグリッド(方眼状の線の集合)を表示する機能を提供します。 fk_AppWindow では内部で利用しています。

座標軸については、x 軸が赤、y 軸が緑、z 軸が青となり、 すべて原点より正方向に伸びています。 グリッドの線色は黒となります。

参照
fk_Model, fk_Scene, fk_AppWindow

構築子と解体子

◆ fk_GuideObject()

FK::fk_GuideObject::fk_GuideObject ( void  )

コンストラクタ

◆ ~fk_GuideObject()

FK::fk_GuideObject::~fk_GuideObject ( void  )

デストラクタ

関数詳解

◆ setScale()

void FK::fk_GuideObject::setScale ( double  scale)

グリッド間隔設定関数

グリッドの線同士の間隔を設定します。 デフォルトでは 5 になっています。

引数
[in]scaleグリッド線同士の間隔。
参照
setNum()

◆ setNum()

void FK::fk_GuideObject::setNum ( int  num)

グリッド分割数設定関数

グリッドの分割数を指定します。 ここでの分割数とは、グリッドの縦、横それぞれの領域の分割数を表します。 分割数を \( n \) としたとき、 グリッド領域全体の分割数は \( n^2 \) となり、 線分の本数は \( 2(n+1) \) となります。 デフォルトでは 20 になっています。

引数
[in]num分割数。
参照
setScale()

◆ setParent()

void FK::fk_GuideObject::setParent ( fk_Model model)

座標系ガイド適用モデル設定関数

座標軸やグリッドを、この関数で指定したモデルの子モデルとします。 これにより、任意モデルのローカル座標系に追従した座標軸やグリッドを表示することができます。

引数
[in]model座標系表示を追従させたいモデルインスタンスのポインタ。
参照
entryScene()

◆ entryScene()

void FK::fk_GuideObject::entryScene ( fk_Scene scene,
fk_Guide  mode = fk_Guide::AXIS_X|fk_Guide::AXIS_Y|fk_Guide::AXIS_Z|fk_Guide::GRID_XZ 
)

シーン登録関数

座標軸ならびにグリッドをシーンに登録します。 登録を制御できるのは x,y,z 軸ならびに xy, yz, xz 平面グリッドの6種類となります。 複数の要素を同時に登録するには、 対応する値をビット論理和演算子によって並べることで実現できます。 例えば x 軸, z 軸、xz 面グリッドを表示したい場合は以下の様になります。

fk_GuideObject  gobj;

gobj.entryScene(scene, fk_Guide::AXIS_X | fk_Guide::AXIS_Z | fk_Guide::GRID_XZ);
引数
[in]scene登録するシーンインスタンスのポインタ。
[in]mode登録する要素。
参照
removeScene()

◆ removeScene()

void FK::fk_GuideObject::removeScene ( fk_Scene scene,
fk_Guide  mode = fk_Guide::NO_GUIDE 
)

シーン登録解除関数

entryScene() によって登録した要素を解除します。 要素の複数指定方法は entryScene() と同様です。

引数
[in]scene登録解除するシーンインスタンスのポインタ。
[in]mode登録解除する要素。
参照
entryScene()