RINEARN トップ > RINEARN-X > RINEARN-X 開発API仕様


rxvesapi.system3d.geometry.
CoordinateSystem3DEG クラス

[ 概要 ]
 CoordinateSystem3DEGクラスは、3次元ユークリッド幾何学の直交座標系(デカルト座標系、カーテシアン座標系)として使用できるクラスです。CoordinateSystem3DEGクラスの主な役割は座標変換です。CoordinateSystem3DEGクラスを用いることで、ユーザーは、変換行列などの高度な数学概念を一切必要とすること無く、座標系を駆使した複雑なモデリングを容易に行う事ができます。
 CoordinateSystem3DEGクラスには、ベクトルであるVector3DEGクラスをはじめ、各種描画用ポリゴン要素クラス、及び立体モデルとなる各種Model3DEG継承クラスを配置(add)して使用する事ができます。さらに、CoordinateSystem3DEGクラスにCoordinateSystem3DEGクラスを配置する事も可能です。
 なお、CoordinateSystem3DEGを継承したサブクラスには、3DCG描画エンジン機能を実装したrxvexapi.system3d.renderer.ScreenSystem3DEGクラスが存在します。

[ 仕様 ]

基本仕様
名称 rxvesapi.system3d.geometry..CoordinateSystem3DEG
概要 3次元ユークリッド空間における直交座標系オブジェクト
種類 クラス
継承関係 スーパークラス
インターフェイス 非実装

コンストラクタ一覧
CoordinateSystem3DEG( )
デフォルトコンストラクタ
CoordinateSystem3DEG( ScreenSystem3DVG screenSystem )
引数に指定されたスクリーン座標系に、描画リクエストを自動提出するよう設定してインスタンス化します。

public フィールド一覧
double
x
x座標値を表します。
double
y
y座標値を表します。
double
z
z座標値を表します。

public メソッド一覧
void
add( Vector3DEG addVector )
この座標系に、引数に渡したベクトルを配置します。
void
add( Element3DEG addElement )
この座標系に、引数に渡した描画用ポリゴン要素を配置します。Element3DEG配列や、各種のElement3DEG継承クラスも配置可能です。
void
add( Model3DEG addModel )
この座標系に、引数に渡した立体モデルを配置します。Model3DEG配列や、各種のModel3DEG継承クラスも配置可能です。
void
add( CoordinateSystem3DEG )
引数に渡した座標系を、この座標系の子座標系として配置します。
Vector3DVG
see( Vector3DEG vector )
引数に指定したベクトルを、この座標系から見たベクトルに座標変換したものを返します。
Element
see( Element3DEG element )
引数に指定した描画用ポリゴン要素を、この座標系から見た描画用ポリゴン要素に座標変換したものを返します。各種のElement3DEG継承クラスに対して実行可能です。
void
setAutomaticRequest( ScreenSystem3DEG screenSystem )
実行後、この座標系にaddされる対象について、引数に指定されたスクリーン座標系に描画リクエストを自動提出するよう設定します。
doule
getOriginX( )
座標系原点位置のx座標値を返します。
doule
getOriginY( )
座標系原点位置のy座標値を返します。
doule
getOriginZ( )
座標系原点位置のz座標値を返します。
void
setOrigin( double ox, double oy, double oz )
座標系原点位置を、引数に指定された座標値( ox, oy, oz )に設定します。
void
setOrigin( Vector3DEG originVector )
引数に指定したベクトルを、座標系原点の位置ベクトルとして読み込みます。実行後におけるoriginVectorに対する操作は反映されません。
void
move( Vector3DEG dVector )
引数に指定された変位ベクトルだけ平行移動します。
void
move( double dx, double dy, double dz )
引数に指定された変位ベクトル( dx, dy, dz )だけ平行移動します。
void
spinX( double angle )
この座標系のX軸を回転軸として、引数に指定された角度だけ回転します。※X軸の方向に右ネジが進む回転方向を正にしています。
void
spinY( double angle )
この座標系のY軸を回転軸として、引数に指定された角度だけ回転します。※Y軸の方向に右ネジが進む回転方向を正にしています。
void
spinZ( double angle )
この座標系のZ軸を回転軸として、引数に指定された角度だけ回転します。※Z軸の方向に右ネジが進む回転方向を正にしています。
void
spin( double angle, double vx, double vy, double vz )
この座標系における、「 原点を通り、かつ引数に指定された方向ベクトル( vx, vy, vz )をもつ回転軸 」 のまわりに、引数angleに指定された角度だけ回転します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
spin( double angle, Vector3DEG directionalVector )
この座標系における、「 原点を通り、かつ引数directionalVectorに指定された方向ベクトルをもつ回転軸 」 のまわりに、引数に指定された角度だけ回転します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
spin( double angle, double vx, double vy, double vz, double px, double py, double pz )
この座標系における、「 引数に指定された座標点( px, py, pz )を通り、かつ引数に指定された方向ベクトル( vx, vy, vz )をもつ回転軸 」 のまわりに、引数angleに指定された角度だけ回転します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
spin( double angle, Vector3DEG directionalVector, Vector3DVG pointVector )
この座標系における、「 引数pointVectorに指定された座標点を通り、かつ引数directionalVectorに指定された方向ベクトルをもつ回転軸 」 のまわりに、引数angleに指定された角度だけ変換します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
rotX( double angle )
親座標系のX軸を回転軸として、引数に指定された角度だけ回転します。※X軸の方向に右ネジが進む回転方向を正にしています。
void
rotY( double angle )
親座標系のY軸を回転軸として、引数に指定された角度だけ回転します。※Y軸の方向に右ネジが進む回転方向を正にしています。
void
rotZ( double angle )
親座標系のZ軸を回転軸として、引数に指定された角度だけ回転します。※Z軸の方向に右ネジが進む回転方向を正にしています。
void
rot( double angle, double vx, double vy, double vz )
親座標系における、「 原点を通り、かつ引数に指定された方向ベクトル( vx, vy, vz )をもつ回転軸 」 のまわりに、引数angleに指定された角度だけ回転します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
rot( double angle, Vector3DEG directionalVector )
親座標系における、「 原点を通り、かつ引数directionalVectorに指定された方向ベクトルをもつ回転軸 」 のまわりに、引数に指定された角度だけ回転します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
rot( double angle, double vx, double vy, double vz, double px, double py, double pz )
親座標系における、「 引数に指定された座標点( px, py, pz )を通り、かつ引数に指定された方向ベクトル( vx, vy, vz )をもつ回転軸 」 のまわりに、引数angleに指定された角度だけ回転します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
rot( double angle, Vector3DEG directionalVector, Vector3DVG pointVector )
親座標系における、「 引数pointVectorに指定された座標点を通り、かつ引数directionalVectorに指定された方向ベクトルをもつ回転軸 」 のまわりに、引数angleに指定された角度だけ変換します。※方向ベクトルの向きに右ネジが進む回転方向を正にしています。
void
(非推奨)setAngle( double tehta, double phi, double rambda )
座標系の向きを、引数に指定されたオイラー角( θ, φ, λ )で設定します。
void
(非推奨)plusAngle( double d_tehta, double d_phi, double d_rambda )
座標系の向きを、引数に指定されたオイラー角の増分( dθ, dφ, dλ )だけ回転します。
double
(非推奨)getTheta( )
オイラー角表示における頂角θを返します。
double
(非推奨)getPhi( )
オイラー角表示における座角φを返します。
double
(非推奨)getRambda( )
オイラー角表示における回転角λを返します。
void
reOrtho( )
基底ベクトルを正規直交化します。基底ベクトルの蓄積誤差を完全排除する為のメソッドです。


Copyright(C) 2010 RINEARN All Rights Reserved.