c++点到直线的距离(函数之点到坐标原点的距离c语言)
简介
在计算机图形学和几何学中,计算点到直线的距离是一个常见的任务。本文将介绍 C++ 中计算两点之间距离的方法,以及如何将其扩展到计算点到直线的距离。
计算两点之间的距离
要计算两个点 (x1, y1) 和 (x2, y2) 之间的距离,可以使用欧几里得距离公式:```cpp double distance(double x1, double y1, double x2, double y2) {return sqrt((x2 - x1)
(x2 - x1) + (y2 - y1)
(y2 - y1)); } ```
计算点到直线的距离
要计算点 (x, y) 到直线 Ax + By + C = 0 的距离,可以使用以下公式:```cpp double distanceToLine(double x, double y, double A, double B, double C) {return abs(A
x + B
y + C) / sqrt(A
A + B
B); } ```其中:
`x` 和 `y` 是点的坐标。
`A`, `B` 和 `C` 是直线方程中的系数。
代码示例
以下是一个 C++ 代码示例,用于计算点 (2.5, 3.5) 到直线 2x + 3y - 10 = 0 的距离:```cpp
#include
输出
``` Distance from point to line: 1.41421 ```
**简介**在计算机图形学和几何学中,计算点到直线的距离是一个常见的任务。本文将介绍 C++ 中计算两点之间距离的方法,以及如何将其扩展到计算点到直线的距离。**计算两点之间的距离**要计算两个点 (x1, y1) 和 (x2, y2) 之间的距离,可以使用欧几里得距离公式:```cpp double distance(double x1, double y1, double x2, double y2) {return sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); } ```**计算点到直线的距离**要计算点 (x, y) 到直线 Ax + By + C = 0 的距离,可以使用以下公式:```cpp double distanceToLine(double x, double y, double A, double B, double C) {return abs(A * x + B * y + C) / sqrt(A * A + B * B); } ```其中:* `x` 和 `y` 是点的坐标。 * `A`, `B` 和 `C` 是直线方程中的系数。**代码示例**以下是一个 C++ 代码示例,用于计算点 (2.5, 3.5) 到直线 2x + 3y - 10 = 0 的距离:```cpp
include
include