ベクトル

ベクトル

A(ax,ay)ベクトル、B(bx,by)ベクトルとのなす角が
直角 ( 内積 == 0 )
A.dotProduct(B) == 0
ax * bx + ay * by == 0
鈍角 ( 内積 < 0 )
A.dotProduct(B) < 0
ax * bx + ay * by < 0
鋭角 ( 内積 > 0 )
A.dotProduct(B) > 0
ax * bx + ay * by > 0

A1(ax1,ay1)ベクトル、B(bx,by)ベクトルとのなす角α1とする。
Aが移動した点A2(ax2,ay2) ベクトルとBとのなす角α2とする。
α1とα2を比較する方法
A1とB、A2とB内積を計算して、それぞれA1、A2のベクトルの長さで割った値を比較する

ABベクトルと、進行方向Aiと、地点Bへの進入角度Biとが平行で向きが等しい
ab.assimilarity(ai) == 0 && ab.dotProduct(ai) > 0 && ab.assimilarity(bi) == 0 && ab.dotProduct(bi) > 0

public int assimilarity(Ray r){
return Math.abs(x * r.y - y * r.x);
}
最終更新:2009年01月08日 13:37
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。