已知两点坐标,计算方位角 C代码
时间: 2023-08-17 17:04:23 浏览: 267
利用C#编写一个坐标方位角计算程序
5星 · 资源好评率100%
以下是计算方位角的C代码:
```c
#include <stdio.h>
#include <math.h>
#define PI 3.14159265358979323846
struct Point {
double x;
double y;
};
double getDirectionAngle(struct Point p1, struct Point p2) {
double dx = p2.x - p1.x;
double dy = p2.y - p1.y;
double angle = atan2(dy, dx) * 180 / PI;
if (angle < 0) {
angle += 360;
}
return angle;
}
int main() {
struct Point p1 = {0, 0};
struct Point p2 = {3, 4};
double angle = getDirectionAngle(p1, p2);
printf("The direction angle is %lf degrees\n", angle);
return 0;
}
```
在这个示例中,我们定义了一个 `Point` 结构体来表示一个点的坐标。`getDirectionAngle` 函数接受两个点作为输入参数,并返回它们之间的方位角。我们使用 `atan2` 函数来计算方位角,然后将其转换为角度制。最后,我们使用一个简单的 if 语句将负角度转换为正角度。在 `main` 函数中,我们定义了两个点 `p1` 和 `p2`,然后调用 `getDirectionAngle` 函数来计算它们之间的方位角,并将结果打印出来。
阅读全文