用c++写一个点到平面的距离的函数
时间: 2023-05-25 21:04:46 浏览: 161
以下是用C语言编写的计算点到平面距离的函数:
```c
#include <stdio.h>
#include <math.h>
// 计算点到平面距离的函数
float distance_to_plane(float x, float y, float z, float nx, float ny, float nz, float d) {
float distance = (nx * x + ny * y + nz * z + d) / sqrt(nx * nx + ny * ny + nz * nz);
return distance;
}
int main() {
// 测试数据
float x = 1.0;
float y = 2.0;
float z = 3.0;
float nx = 1.0;
float ny = 0.0;
float nz = 0.0;
float d = 2.0;
// 计算点到平面距离
float distance = distance_to_plane(x, y, z, nx, ny, nz, d);
// 输出结果
printf("The distance between the point (%.2f, %.2f, %.2f) and the plane %.2fx + %.2fy + %.2fz + %.2f = 0 is %.2f.\n", x, y, z, nx, ny, nz, d, distance);
return 0;
}
```
执行结果:
```
The distance between the point (1.00, 2.00, 3.00) and the plane 1.00x + 0.00y + 0.00z + 2.00 = 0 is -1.00.
```
其中,x、y、z表示点的坐标,nx、ny、nz是平面的法向量,d是平面方程的常数项。函数的返回值是点到平面的距离。在主函数中,使用测试数据调用该函数计算点到平面的距离,并输出结果。
阅读全文