我在 3D 空间中有两个点,比如说 (0, 0, 0) 和 (5, 5, 0)
我在 (0,0,5) 有一个摄像头
鉴于此,第一个点 (0,0,0) 比第二个点更靠近相机。我想做的是限制第二个点与相机点的距离,以便它(或实际上任何假设点)离相机点的距离不能比我的控制点的距离更远(0,0, 0).
我可以使用什么数学工具来计算空间中与相机矢量相同但距离不远的点?
我希望这是有道理的......我希望我参加过任何高于基础代数的数学类(class)。
最佳答案
如果我理解正确的话。你有点让 P1 (x1, y1 , z1) 和距离 D 和另一个点 P2 (x2 , y2 , z2) 并且你想要另一个点 P3 以便它与 P2 的方向相同但距离 P1 只有 D。如果是这样的话。
从 P1 到 P2 的方向 V1 是 ( P2 - P1 ) 即 ( x2 - x1 , y2 - y1 , z2 - z1 )
来自 V1 的单位向量将 U1
U1 = V1 / distance between ( P1 , P2)
Formula for distance between two points
最后,P3 将是沿着这个单位向量的 D 距离
P3 = P1 + U1 * D
关于math - 3D三角函数: finding a point in space along the surface of a sphere,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8420811/