gckohaku / p5-4dRendering

MIT License
0 stars 0 forks source link

memo: 線分同士の最接近位置 #6

Open gckohaku opened 2 weeks ago

gckohaku commented 2 weeks ago

https://inak-eng.jp/2020/05/17/3%E6%AC%A1%E5%85%83%E7%A9%BA%E9%96%93%E3%81%A7%E3%81%AE2%E7%9B%B4%E7%B7%9A%E3%81%AE%E6%9C%80%E6%8E%A5%E8%BF%91%E4%BD%8D%E7%BD%AE/

gckohaku commented 1 week ago

2直線の最接近点の導出 https://www.mathcha.io/editor/oMjp3H1LFkXh8kW5yXFrPPvkecjqz86GCqkpLpK

gckohaku commented 1 week ago

※ github では \boldsymbol{} などが機能しないため、一部スタイルが不正確です

実装の方針

まず、mathcha での導出での $$m_1,m_2,n_1,n_2,o$$ を求める。 これらは既に求めた平面同士の交線のベクトルとそれを通る座標、ポリゴンの2頂点とそれらから求めるベクトルから計算できる。 そのあとに連立方程式から導出した式の通りに $$s\rightarrow t$$ の順番で求める。 今回の場合は $$\boldsymbol{l}_1,\boldsymbol{l}_2$$ が同一平面上にあるので、本来 $$s,t$$ の両方を求める必要は無い。ただし、計算誤差の問題もあるので $$s,t$$ の結果を元にそれぞれの最接近位置を求めてから、それらの平均を取ることで交点とする。