如何创建任意,共面三维曲线的2d图

问题描述 投票:0回答:1

我有一组包含(理论上)共面曲线的点。我的问题是飞机是任意的,可以在每次收集数据之间移动(这些点是从相机收集的)。我想知道你们是否可以帮助我弄清楚如何:

  1. 找到最接近这些点共面的平面
  2. 以这样的方式投射这个平面上的点,给我一条2-d曲线

我相信我知道如何做第2点,主要是第1点,我正在努力,但我不介意第二点的帮助。

万分感谢!

math plot 3d projection curve
1个回答
1
投票
  1. 在你的数据中找到3分A,B,C 它们不得单线,并且应尽可能远离彼此以提高准确性。
  2. 构造U,V基矢量 U = B-A V = C-A 正常化 U /= |U| V /= |U| U,V垂直 W = cross(U,V) // this will be near zero if A,B,C are on single line U = cross(V,W)
  3. 将您的数据转换为U,V飞机 只是对于数据计算中的任何点P=(x,y,z)x' = dot(U,P) y' = dot(V,P) 如果您还需要反向转换: P = x'*U + y'*V 如果你想要/有一个原点A,转换将是: x' = dot(U,P-A) y' = dot(V,P-A) P = A + x'*U + y'*V 这将在您的2D坐标中将A映射到(0,0)

如果你不知道你的矢量数学看这里:

在底部,您将找到向量运算的等式。希望有帮助......

© www.soinside.com 2019 - 2024. All rights reserved.