• 大小: 2KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: 其他
  • 标签: 坐标转换  

资源简介

大地坐标与空间直角坐标互相转换,空间直角坐标转大地坐标,大地坐标转空间直角坐标。

资源截图

代码片段和文件信息

function [XYZ] = BLh2XYZ(LATLONh) 

% Example:
%(BLh)WGS84-(XYZ)WGS84
% LAT = 40.9987167395335;
% LON = 39.7652393428761;
% h = 51.403;

refell = 1;

switch refell
    case 1
        % IERS 2003 numerical standards
        % ellipsoid parameters for xyz2ellip.m
        a_tidefree = 6378136.6; %m      Equatorial radius of the Earth
        f_tidefree = 1/298.25642;     % Flattening factor of the Earth
        a = a_tidefree;  %m      Equatorial radius of the Earth
        f = f_tidefree;       % Flattening factor of the Earth
    case 2
        % GRS 80 (http://www.bkg.bund.de/nn_164850/geodIS/EVRS/EN/References/...
        %  Definitions/Def__GRS80-pdftemplateId=rawproperty=publication...
        %  File.pdf/Def_GRS80-pdf.pdf)
        a_grs80    = 6378137;
        f_grs80    = 0.00335281068118;
        a = a_grs80;   %m      Equatorial radius of the Earth
        f = f_grs80;        % Flattening factor of the Earth
    case 3
        % WGS84
        a=6378137;
        f=1/298.25722356;
    case 4
        % Hayford
        a=6378388;
        f=1/297;
end

b = a-f*a;

lat=LAT*pi/180;
lon=LON*pi/180;
e2=(a^2-b^2)/a^2;
N=a/sqrt(1-e2*(sin(lat)^2));
X=(N+h)*cos(lat)*cos(lon);
Y=(N+h)*cos(lat)*sin(lon);
Z=(N*(1-e2)+h)*sin(lat);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-07-10 16:47  MATLABcode\BLh2XYZ\
     文件        1290  2012-05-28 18:09  MATLABcode\BLh2XYZ\BLh2XYZ.m
     目录           0  2017-07-10 16:47  MATLABcode\XYZ2BLh\
     文件        1831  2012-05-22 15:41  MATLABcode\XYZ2BLh\xyz2ell.m
     目录           0  2017-07-10 16:47  MATLABcode\

评论

共有 条评论