主要内容

1996年地球位势模型大地水准面高度可视化

这个例子展示了如何使用航空航天工具箱™软件的EGM96地球位势模型来计算地球的大地水准面高度。它还显示了如何可视化的结果与等高线地图覆盖在地图上的地球。映射工具箱™和Simulink®3D动画™需要生成金宝app可视化。

1996年地球位势模型的生成值

计算值的地球的位势使用geoidheight功能实现EGM96位势模型。

以下代码可用于生成260281个数据点,用于计算地球大地水准面高度geoidheight.为了减少计算开销,此示例包含一个包含此数据的mat文件。

% %设置度数之间的增量量% gridDegInc = 0.5;%度% %用于纬度扫描的经度值。% lon = -180:gridDegInc:180;%度% %要扫描的大地纬度值。% geod_lat = -90:gridDegInc:90;%度% %遍历每个纬度为-90:90的数组的经度值。% for lonIdx = size(lon,2):-1:1% %经度必须与纬度数组相同的维度% lon = lon(lonIdx)*ones(1,numLatitude);%度% geoidResults(1:end,lonIdx) = geoidheight(geod_lat,lon,'None');%结束

加载大地水准面数据文件和海岸数据

geoidFileName =“GeoidResults_05deg_180.mat”;负载(geoidFileName);海岸=负载(“coastlines.mat”);

绘制大地水准面高度的二维视图

%使用|meshm|创建二维图h2D =图;集(h2D,“位置”,[20 75 700 600],“工具栏”“图”);%映射大地水准面高度到地球上纬度/经度的参考矩阵。存款准备金率= makerefmat (“RasterSize”、大小(geoidResults),...“Latlim”(-90 90),“Lonlim”, [-180 180]);ast2DGeoidPlot(存款准备金率、geoidResults海岸,gridDegInc)%使用VR画布查看大地水准面高度www2D = vrworld (“astGeoidHeights.wrl”);打开(www2D)%实际大地水准面高度供参考geoidGrid = vrnode (www2D,“EGM96_Grid”);actualHeights = getfield (geoidGrid,“高度”);% #好< GFLD >%初始化滑块控件的高度为0geoidGrid。身高= 0 * actualHeights;%用于绘图和设置参数的大小画布geoidcanvas2D = vr.canvas (www2D,“父”h2D,...抗锯齿的“上”“NavSpeed”“veryslow”...“NavMode”“检查”“单位”“归一化”...“观点”“视角”“位置”,(。15.04 . 7.42]);%创建滑块滑= astGeoidSlider (geoidcanvas2D);

绘制大地水准面高度的三维视图

h3D =图;集(h3D,“位置”,[20 75 700 600]);%设置坐标轴= axesm ()“全球”“网格”“上”);集(hmapaxis,“位置”,(。视图(85,0)轴%在3d地球上绘制数据meshm (geoidResults,存款准备金率)%地块地块轮廓plotm (coast.coastlat coast.coastlon,“颜色”“k”) colormap (“喷气机”);%绘制标题标题({“EGM96大地水准面高度的;[“网格增量:”num2str (gridDegInc),度;单位:米高的colorbar]});% 3-D地球:大地水准面高度使用VR画布www3D = vrworld (“astGeoidSphere.wrl”);打开(www3D)%的位置帆布geoidcanvas3D = vr.canvas (www3D,“父”h3D,...抗锯齿的“上”“NavSpeed”“veryslow”...“NavMode”“检查”“单位”“归一化”...“位置”,(。15.04 .7 .4]);vrdrawnow;

清理

关闭(h2D h3D)关闭(www2D);密切(www3D);删除(www2D);删除(www3D);