2011-07-29 19 views
0

自律エージェントのペーパーステアリング動作から障害回避行動を実装しようとしています。私が悩んでいるのは、グローバル座標(2d)を自分のキャラクタのローカル座標に変換する方法です。グローバル座標を文字のローカル座標とバックに変換する

基本的に私は1,0にあり、敵は10,0と言います。私は原点を1,0に移動したいので、敵の座標として9,0を得る。

バックグローバル使用して、

 

[1 0 tx] [x] 
[0 1 ty] x [y] 
[0 0 1] [1] 
 

TXに、その後私は何をやってしまった、

ローカルに変換するために、

 

[1 0 -tx] [x] 
[0 1 -ty] x [y] 
[0 0 1] [1] 
 

、tyがローカルのchar COORDSとxは、 yは敵の斧です。

+0

本当に、質問「何が1と10を取得し、9を返し数学演算子である」?これですか – unkulunkulu

答えて

1

ポイントを減算するだけです。

相対=位置 - 移動軸ポイント。

(10,0) - (1,0)=(9,0)

Displacement

編集:全体のxを変換するAffine transformationを使用

、y平面:ただ、数字の問題について

、別の視点ポイントを選択することができます:(3,7)

[x] = [ 1 0 -3 ] = [x`] = x -3 
[y] [ 0 1 -7 ] = [y`] = y -7 
[1] [ 0 0 1 ] = [1 ] = we don't care 

Transformation matrix

+0

それは私が試した最初のことでした、それは動作しません。 AFAIK私はcoordsに変換行列を掛けることになっていますが、私はその行列を構築することを知らないです。 –

+0

座標軸セット全体を変換して、新しい軸ポイントから見ることができるようにしたいですか? –

+0

はい、すべての障害物座標(グローバルスペース内)をローカルの文字座標に変換したいと思います。 –

関連する問題