我需要從2個點(3D)和圓弧角(平面法線也是已知的)計算一個3D圓心點。
我用谷歌搜索了一下,但我覺得我的英語不夠好,不能正確搜索。有誰知道這樣做的計算方法嗎?
uj5u.com熱心網友回復:
我們有一些點A,B,法線N,角度Fi。
計算差異向量(弧弦)和中間點
計算差異向量(弧弦)
AB = B - A
m = (a b) / 2
計算垂直于AB和N的矢量
計算矢量,并將其歸一化。
F = AB x N
uF = F / len(F)
我們知道圓心C位于從點M出發的射線上,方向為F(引數t等于apothemCM長度(中心弦距離))
C = M t * uF
什么應該是t值呢?我們可以通過直角三角形的AMC引數來表示t
tan(Fi/2) = 0.5*len(AB) / t
所以最后中心是
C = M uF * 0.5*len(AB) / tan(Fi/2)
注意,中心C不是唯一的,因為我們不知道弧線的方向(只要在最后一個公式中改變uF前的符號,就可以得到針對弦的鏡像點C')
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/319982.html
標籤:
