[算法] 前向交会计算坐标实例

科普文章介绍了前向交会的原理,即通过观测角度A和B来确定点P的坐标。文中给出了一个实例,假设使用逆时针坐标系,详细展示了计算过程,并分享了代码实现。实测结果显示,坐标偏离误差在0.1左右,同时提到了一个特殊简便的计算示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

科普:前向交会是通过观测角A和角B求出点P坐标的定位方法。

#举例:

这里默认使用逆时针坐标系,所以sign=1;

已知条件如图所示,求P1,P2坐标。
在这里插入图片描述

代码:

#include <stdio.h>
#include <math.h>

typedef struct
{
      
    double x;
    double y;
    double z;
}point_info_t;

/*
** describe: 
**      Calculate the coordinates of point P from coordinates A and B
**      The coordinates A, B and P are counter clockwise
** param:
**      ag_a: angle of PAB
**      ag_b: angle of PBA
**      grid_a: A point coordinates
**      grid_b: B point coordinates
**
**  return:
**      P point coordinates
*/

#define PI 3.1415926535898
static inline double rad(double rd)
{
   
    return rd * 180 / PI;
}

extern void sincos(double d, double* s, double* c);
static point_info_t test_get_grid(double ag_a, double ag_b, point_info_t grid_a, point_info_t grid_b)
{
   
    point_info_t p;
    double sin_a, cos_a, sin_b, cos_b;
    double sin_cos, cos_sin, sin_sin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值