前言
采用:MATLAB R2019a
功能:完成同一椭球下大地坐标与空间直角坐标互相转换,高斯正反算,单点和批量处理数据。
界面
程序编写
同一目录下,有实现坐标转换和高斯投影的.m文件函数,设计app时调用这些函数就行了。
下面是一些变量及回调函数代码:
properties (Access = private)
ellname % 椭球名称
opt %决定坐标转换功能:bl=>xy或xy=>bl
belt %带宽
anformat
end
methods (Access = private)
function func(app)
switch app.DropDown.Value
case 'CGCS2000'
app.ellname = 'cgcs2000';
case 'WGS-84'
app.ellname = 'wgs84';
case '1975国际椭球'
app.ellname = 'int75';
case '克拉索夫斯基椭球'
app.ellname = 'kra';
end
switch app.DropDown_2.Value
case '坐标转换BL=>XY'
app.opt = 'blh2xyz';
case '坐标转换XY=>BL'
app.opt = 'xyz2blh';
end
switch app.DropDown_4.Value
case '6度带'
app.belt = 6;
case '3度带'
app.belt = 3;
end
switch app.DropDown_3.Value
case 'DD.MMSS'
app.anformat = 'DD.MMSS';
case 'DD.DDDD'
app.anformat = 'DD.DDDD';
end
end
end
% Callbacks that handle component events
methods (Access = private)
% Button pushed function: Button
function ButtonPushed(app, event)
switch app.DropDown_2.Value
case '坐标转换BL=>XY'
func(app);
a(2) = app.BEditField.Value;
a(1) = app.LEditField.Value;
a(3) = app