【发布时间】:2021-09-14 18:44:13
【问题描述】:
我需要从 2 个点(3D)和弧角(平面法线也是已知的)计算一个 3D 圆中心点。
我用谷歌搜索了它,但我认为我的英语不够好,无法正确搜索。有人知道这样做的计算吗?
【问题讨论】:
我需要从 2 个点(3D)和弧角(平面法线也是已知的)计算一个 3D 圆中心点。
我用谷歌搜索了它,但我认为我的英语不够好,无法正确搜索。有人知道这样做的计算吗?
【问题讨论】:
我们有点A, B,正常N,角度Fi。
计算差分向量(弧弦)和中点
AB = B - A
M = (A + B) / 2
使用向量积计算垂直于AB和N的向量F并对其进行归一化
F = AB x N
uF = F / len(F)
我们知道圆心 C 位于从点 M 出发的射线上,方向为 F(参数 t 等于 apothem CM 长度(中心弦距))
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'对弦)
【讨论】:
AB = A - B 你搞错了。应该是AB = B - A。