经纬度坐标,计算偏北角算法"/>
通过两个点的经纬度坐标,计算偏北角算法
以下是matlab代码
clc
clear all
reflat = [121.5579868206571 29.901759261705514 0];%基准点经纬度
lla = [121.5575941023510 29.901770103264110 0];%待测点经纬度
% reflat = [121.5575660045000 29.901662429833333 0];
% lla = [121.5580470217427 29.901685205115914 0];
pointNum = size(lla,1);%待测点个数
enu = zeros(pointNum,3);%待测点东北天坐标
northAngle = zeros(pointNum,1);%待测点偏北角
for i = 1:pointNum
enu(i,:) = Fun.wgslla2enu(lla(i,2), lla(i,1), lla(i,3), reflat(2), reflat(1), reflat(3));%待测点东北天坐标求取
if abs(enu(i,1)) < 0.0001
if enu(i,2) > 0
northAngle(i) = 0;
else
northAngle(i) = 180;
end
else
if enu(i,1) > 0
northAngle(i) = 90 - atand(enu(i,2)/enu(i,1)); %目标偏北角
else
northAngle(i) = 270 - atand(enu(i,2)/enu(i,1)); %目标偏北角
end
end
end
更多推荐
通过两个点的经纬度坐标,计算偏北角算法
发布评论