連結座標系


cascaded-coords [クラス]


  :super   coordinates 

:slots (parent descendants worldcoords manager changed)


連結された座標系を定義する。cascaded-coordsは、 しばしばcascoordsと略す。


:inheritance [メソッド]

このcascaded-coordsの子孫をすべて記述した継承treeリストを返す。 もし、abがこの座標系の直下の子孫でcaの 子孫であるとき、((a (c)) (b))を返す。


:assoc childcoords &optional relative-coords [メソッド]

childcoordsは、この座標系の子孫として関係している。 もし、childcoordsが既に他のcascaded-coordsassocされて いるとき、childcoordsはそれぞれのcascaded-coordsが1つの親しか 持っていないならdessocされる。 ワールド座標系におけるchildcoordsの方向あるいは位置は変更されない。


:dissoc childcoords [メソッド]

この座標系の子孫リストからchildcoordsを外す。 ワールド座標系におけるchildcoordsの方向あるいは位置は変更されない。


:changed [メソッド]

この座標系の親座標系が変更されていることを通知する。 また、もっとあとでワールド座標系が要求されたとき、ワールド座標系を再計算する 必要がある。


:update [メソッド]

現在のワールド座標系を再計算するために:worldcoordsメソッド を呼び出す。


:worldcoords [メソッド]

ルートの座標系からこの座標系までの全ての座標系を連結させることにより、 この座標系をワールド座標系で表現したcoordinatesオブジェクトで返す。 その結果は、このオブジェクトが持ち、後に再利用される。 よって、この結果の座標系を変更すべきでない。


:worldpos [メソッド]

ワールド座標系で表現したこの座標系のrotを返す。


:worldrot [メソッド]

ワールド座標系で表現したこの座標系のposを返す。


:transform-vector vec [メソッド]

vecをこのローカル座標系での表現とみなして、ワールド座標系での 表現に変換する。


:inverse-transform-vector vec [メソッド]

ワールド座標系で表現されるvecをこのローカル座標系の表現に逆変換する。


:inverse-transformation [メソッド]

この座標系の逆変換を表現するcoordinatesのインスタンスを作る。


:transform trans &optional (wrt :local) [メソッド]



:translate fltvec &optional (wrt :local) [メソッド]


:locate fltvec &optional (wrt :local) [メソッド]


:rotate theta axis &optional (wrt :local) [メソッド]


:orient theta axis &optional (wrt :local) [メソッド]
coordinatesクラスの記述を参照すること。


make-coords &key :pos :rot :rpy :Euler :angle :axis :4X4 :coords :name [関数]



make-cascoords &key :pos :rot :rpy :Euler :angle :axis :4X4 :coords :name [関数]



coords &key :pos :rot :rpy :Euler :angle :axis :4X4 :coords :name [関数]


cascoords &key :pos :rot :rpy :Euler :angle :axis :4X4 :coords :name [関数]
これらの関数は、すべてcoordinatesあるいはcascaded-coordsを 新しく作る。 キーワードパラメータについては、coordinatesクラスの:initメソッドを 見ること。


transform-coords coords1 coords2 &optional (coords3 (coords)) [関数]
coords1coords2に左から適用(乗算)される。 その積はcoords3に蓄積される。


transform-coords* &rest coords [関数]
coordsにリスト表現されている変換を連結させる。 連結された変換で表現されるcoordinatesのインスタンスを返す。


wrt coords vec [関数]
veccoordsにおける表現に変換する。 その結果は(send coords :transform-vector vec)と同一である。


2016-04-05