math - 3D三角函数: finding a point in space along the surface of a sphere

标签 math 3d coordinates trigonometry

我在 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/

相关文章:

java - 如何为任何给定坐标找到正确的邻居?

math - Tensorflow L2 损失定义

SQL 查询数学体操

r - 将 xyz 给定的平面转换为 R 中的 xy 坐标(3D 到 2D)

javascript - 通过修改Three.JS中的属性在Canvas中绘制直线 “Line”

java - Java中的深度缓冲和多边形填充

java - 极其紧凑的 UUID(使用所有字母数字字符)

javascript - Excel日志相当于JS Math.log()

tensorflow - 如何在 Tensorflow 对象检测 API 中查找边界框坐标

flash - 锁定鼠标位置