主要内容

在地形可视化飞机视线

这个例子展示了如何计算和可视化的视线可见飞机从地面位置地形。首先,进口地区地形数据和将其应用于三维地理全球。然后,从地面位置进行点对点的可见性分析模拟飞行路径,和显示结果三维地理全球。最后,执行point-to-area可视性分析从地面位置对应于飞机高度不变,和显示结果的二维地理轴。

使用地对空视线分析场景畅通无阻的可见性是很重要的,比如雷达监测、通信和无人机路径规划。这个例子的分析适用于雷达监测机场。

地形数据导入

指定一个DTED-format地形文件用于数据分析和三维可视化。地形文件从“SRTM无效填补”下载数据集可以从美国地质调查局(USGS)。

dtedfile =“n39_w106_3arc_v2.dt1”;归因=“SRTM 3角秒的分辨率。从美国地质调查局(U.S. Geological Survey)数据。”;

DTED文件数据导入到工作空间和地理栅格引用对象数组,指定返回类型为双数据适用于所有分析功能。

[Zterrain, Rterrain] = readgeoraster (dtedfile,“OutputType”,“替身”);

查看地理限制和示例解决地形数据通过访问地理栅格引用对象的属性。限制的文件对应于周边地区博尔德科罗拉多州,美国,和分辨率对应的DTED一级格式示例解决3弧秒,约90米。

latlim = Rterrain.LatitudeLimits;lonlim = Rterrain.LongitudeLimits;latspc = Rterrain.SampleSpacingInLatitude;lonspc = Rterrain.SampleSpacingInLongitude;disp (“地形:纬度限制”+ mat2str (latlim) +换行符+“经度地形的限制:“+ mat2str (lonlim) +换行符+“在纬度:地形分辨率”+ latspc * 3600 +“弧秒”+换行符+“经度:地形分辨率”+ lonspc * 3600 +“弧秒”)
经度纬度的地形(39 40):地形的限制:在纬度(-106 -105)地形分辨率:3弧秒地形分辨率在经度:3弧秒

想象飞机轨迹视线在三维地图上

用自定义创建全球地理地形

添加自定义数据与DTED文件使用3 d可视化。

addCustomTerrain (“southboulder”dtedfile,“归因”归因)

指定自定义新地理地形。

无花果= uifigure;g = geoglobe(无花果,“地形”,“southboulder”);

视图雷达地面位置

定义一个在落基山大都会机场雷达地面位置。雷达安装在一座离地面10米。雷达高度地面高程的总和,雷达塔高度,引用的平均海平面。

rdrlat = 39.913756;rdrlon = -105.118062;rdrtowerht = 10;rdralt = 1717 + rdrtowerht;

情节上的雷达位置地理全球。

geoplot3 (g, rdrlat rdrlon rdralt,“有限公司”,“线宽”6“MarkerSize”,1)

snapshot_1.jpg

模拟飞机轨迹

模拟飞机的轨迹群山上空盘旋。

定义一个盘旋的飞机的中心位置。

tlat0 = 39.80384;tlon0 = -105.49916;tht0 = 3000;

使用east-north-up定义轨迹路径点的飞机(ENU表示)笛卡尔坐标。指定一个曲线的半径5公里(5000米)的垂直偏移1公里(1000米)超过1.5革命。然后,ENU表示坐标转换为引用的大地坐标WGS84椭球。

阿兹= 1:540;r = 5000;(X, Y) = pol2cart(函数(az), r);Z = linspace(0、1000、元素个数(az));wgs84 = wgs84Ellipsoid;[tlat, tlon,年中]= enu2geodetic (X, Y, Z, tlat0 tlon0, tht0, wgs84);

在地形视图飞机轨迹

情节上的飞机轨迹地理全球。默认视图或相机位置,开销和面向下。

(g,“上”)traj = geoplot3 (g, tlat, tlon、阻“y”,“HeightReference”,“椭球体”,“线宽”3);

snapshot_5.jpg

查看三维地形和雷达位置从远处通过改变摄像机的位置和旋转角度。

坎波斯(g, 39.77114, -105.62662, 6670) camheading (g, 70) campitch (g, -12)

snapshot_2.jpg

计算视线可见性与飞机轨迹

计算视线可见性的los2功能和DTED数据。

los2函数支持正高(高于金宝app平均海平面高度)或高度高出地面。从大地高转换飞机轨迹高度正高。然后,计算每架飞机从机场视距雷达位置轨迹路径和结果转换为一个逻辑数组。

numwaypts =元素个数(tlat);numwaypts isvis = 0 (1);talt =阻氢- egm96geoid (tlat tlon);k = 1: numwaypts isvis (k) = los2 (Zterrain、Rterrain rdrlat, rdrlon, tlat (k), tlon (k), rdralt, talt (k),“火星科学实验室”,“火星科学实验室”);结束isvis =逻辑(isvis);

请注意,los2计算视线可见性假设数据是参考一个球形地球,而引用的数据实际上是WGS84椭球,结果可能会有细微的差异。视距的计算也对应光视线,不占折射穿过大气层。

可视化视线在地形可视性

画出视线可见性。使用绿色标志的飞机从机场是可见的和红色的标记,它是不可见的。

删除(traj) geoplot3 (g, tlat (isvis) tlon (isvis),这(isvis),“og”,“HeightReference”,“椭球体”,“线宽”2,“MarkerSize”,1)geoplot3 (g, tlat (~ isvis) tlon (~ isvis),这(~ isvis),“唵”,“HeightReference”,“椭球体”,“线宽”2,“MarkerSize”,1)

los1.jpg

把视线从机场的角度。的大地坐标位置,东900米,200米,100米从雷达的位置。然后,设置相机的位置和旋转角度。绿色标记出现在视图中,但是红色标记由地形完全或部分阻塞。

rdrht = rdralt + egm96geoid (rdrlat rdrlon);[camlat, camlon camht] = enu2geodetic (900200100、rdrlat rdrlon rdrht, wgs84);坎波斯(g, camlat camlon camht) camheading (g, -110) campitch (g, 0)

los2.jpg

二维地图可视化飞机视线可见轮廓

前面的小节进行点对点的视线从一个雷达位置分析和可视化飞机轨迹。现在执行point-to-area视距分析和可视化的雷达地形区域位置。可视化显示的边缘可见性的飞机在固定的高度。

情节雷达二维地图位置和地形限制

情节雷达的位置在一个新的地形二维映射图。

图geoplot (rdrlat rdrlon,“有限公司”,“线宽”6“MarkerSize”3,“DisplayName”,“雷达位置”)geobasemap地形甘氨胆酸gx =;gx。InnerPosition = gx.OuterPosition;

显示自定义的局限性地形地图上的一个矩形。

latmin = latlim (1);latmax = latlim (2);lonmin = lonlim (1);lonmax = lonlim (2);持有geoplot ([latmin latmin latmax latmax latmin], [lonmin lonmax lonmax lonmin lonmin),“线宽”,1“颜色”,“k”,“DisplayName”,“地形限制”)

显示西北角的一个传奇。

传奇(“位置”,“西北”)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表雷达位置、地形的限制。

情节能见度轮廓为飞机在固定的高度

指定三个海拔平均海平面以上飞机。对于每一个高度:

  • 计算视域范围使用雷达位置作为观察者。视域范围定义了区域视线可见性。

  • 发现飞机的边缘可见性计算轮廓的视域范围的数据。

  • 删除小轮廓段。

  • 地理轴上的轮廓。

tgtalts = (3000 4000 5000);minVertices = 10;cfig =图(“可见”,“关闭”);%抑制等高线图使用无形的图cax =轴(“父”,cfig);tgtalt = tgtalts vis =视域范围(Zterrain、Rterrain rdrlat, rdrlon, rdralt, tgtalt,“火星科学实验室”,“火星科学实验室”);C = contourm (vis、Rterrain“LevelList”,1“父”,cax);clat = C (2);:克隆= C (1);clats = [];克隆= [];k = 1;k <大小(C, 2) numVertices = clat (k);如果numVertices > minVertices%不阴谋小段clats = [clats clat (k + 1: k + numVertices)南);% #好< AGROW >克隆=[克隆无性系(k + 1: k + numVertices)南);% #好< AGROW >结束k = k + numVertices + 1;结束geoplot (gx clats,克隆,“线宽”2,“DisplayName”,飞机:“字符串(tgtalt) + +“m”);结束

图包含一个坐标轴对象。坐标轴对象包含5线类型的对象。这些对象代表雷达位置、地形限制,飞机:3000米,飞机:4000米、飞机:5000米。

轮廓出现主要雷达位置在山脉的西部。轮廓不出现在其他方向因为能见度不是受制于地形数据内的地形在这些方向限制。

如果雷达受到视线可见性,那么雷达覆盖区域的轮廓对应不同的高度,在最近的轮廓的雷达与雷达覆盖飞机在3000米,最远的轮廓对应于雷达覆盖的飞机在5000米。

los2,视域范围函数计算视线可见性假设数据是参考一个球形地球,而引用的数据实际上是WGS84椭球,结果可能会有细微的差异。视距的计算也对应光视线,不占折射穿过大气层。

清理

清理通过关闭全球地理地形和删除导入的数据。

如果isvalid(图)关闭(图)结束removeCustomTerrain (“southboulder”)

另请参阅

功能

对象

相关的话题