ライン上のポイントを見つけるにはどうすればよいですか?


11

2つのポイント(A、B)と長さdがあります。ポイントCを見つけるにはどうすればよいですか?

例

回答:


26

VからAまでのベクトルを計算しB、それを正規化します。

V = (B - A) / |B - A|

ベクトルは正規化されているため、長さは1になり、をB基準にした方向を示しますA。次にベクトルをスケーリングdすると、からAへの変位が発生しますC

V' = d * V

これを単純に追加しAてyield することができますC

C = V' + A

ところで、私がそのようなものについて学ぶことができる本を誰かが私に推薦することはできますか?:)
2011年


これを読んでいないが、私もかなり良好であることを言われてきたamazon.com/Mathematics-Programming-Computer-Graphics-Second/dp/...
リッキーAH

1
:この質問を参照してくださいgamedev.stackexchange.com/questions/1210/...

ところで、これはレイ交差アルゴリズムの最後の2つのステップです。レイに沿って交差ポイントがどれだけ離れているかを把握し、ポイントの座標を取得しますgeomalgorithms.com/a05-_intersect-1.html#Plane-Intersections
jhocking

1

dが長さの代わりに比率である場合、たとえば0.5はAとBから等距離に置く場合、次のようにして正規化を回避できます。

C = A * (1 - ratio) + B * ratio
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.