c - 来自两个 3D 点的平面方程以及该平面与点之间的垂直距离

标签 c math

我有三个 3d 点,即 A(x1,y1,z1)、B(x2,y2,z2) 和 C(x3,y3,z3)。如何求出经过A点和B点的平面方程,然后如何求出C点到该平面的垂直距离。垂直距离是通过点 C 的平面与平行于平面 b/w A 和 B 之间的距离。是否有任何短的方法来实现这些计算,因为我希望这些计算在 C 语言代码中实现,以执行时间为主要忧虑。 主要目的是找到 C 与包含 A 和 B 的平面的垂直距离 b/w。

最佳答案

2 个点定义一条线。 您始终可以选择一个包含该线和点 C 的平面,因此距离始终为零。

您正在寻找的 C 类似于:

struct Point {
    double x;
    double y;
    double z;
};

double perpendicular_distance(struct Point *a, struct Point *b, struct Point *c)
{
    return 0.0;
}

说真的,首先要理解数学。

关于c - 来自两个 3D 点的平面方程以及该平面与点之间的垂直距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11113736/

相关文章:

objective-c - 如何让主线程等待几秒钟然后调用方法?

javascript - 将球从一个点弹到另一个点 - 矢量和加速度

arrays - 如何在 O(n) 时间内统计 0, 1, 2, ..., n 中设置的 1 位的个数?

c# - 双重和舍入很难,但这太疯狂了

math - 仍可排序的最佳整数编码

c - 使用 MPI_Isend 发送和接收不同类型的数据

c - 防止 Keil uVision 中 bool 值的 "enumerated type mixed with another type"警告

jquery - 在小数末尾添加 0 以确保它始终是小数点后 2 位?

c - GNU C 编译器的舍入错误

c - 在 if 语句的表达式内部递增