点の領域内判定(三角形) 3次元座標

39 views (last 30 days)
ST
ST on 20 Jan 2021
Commented: Shunichi Kusano on 21 Jan 2021
任意の点Pが三角形ABCの内側(平面上、線上は含まない)にあるかどうかを判定したいです。
2次元のものはできたのですが、3次元座標の場合はどのようにしたら良いですか。
P(px,py) A(p0x,p0y) B(p1x,p1y) C(p2x,p2y)・・・2次元の場合
2次元の場合は、inpolygonを用いたものまたは、ベクトルの計算で判定できましたが、3次元のものがうまくできません。
P(px,py,pz) A(p0x,p0y,p0z) B(p1x,p1y,p1z) C(p2x,p2y,p2z)・・・3次元の場合
  1 Comment
Shunichi Kusano
Shunichi Kusano on 21 Jan 2021
2次元ができているということなので、3次元の三角形を2次元になるように座標変換するというのはいかがでしょうか。変換後三角形がxy平面上になっているというイメージです。2辺の外積を計算すれば、三角形が成す面に直交するベクトルが得られるのでそれがz軸になるように変換すればいいかと思います。

Sign in to comment.

Answers (0)

Categories

Find more on 計算幾何学 in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!