主要内容

los2

地形中两点之间的视线能见度

语法

= los2(Z,R,lat1,lon1,lat2,lon2)
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1)
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2)
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt)
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt,alt2opt)
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt,…
alt2opt actualradius)
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt,…
alt2opt、actualradius effectiveradius)
[vis,visprofile,dist,H,lattrk,lontrk] = los2(…)
los2(…)

描述

los2计算显示的数字高程地图上两点之间的相互能见度。los2如果当前对象是常规数据网格,或者在当前轴上找到的第一个常规数据网格,则使用当前对象。网格的zdata用于配置文件。颜色数据是在没有数据的情况下使用的z.这两个点是通过点击地图来选择的。结果显示在一个新的图形中。标记指示沿剖面可见和模糊的点。轮廓在笛卡尔坐标系中显示,原点位于观测者的位置。显示的z坐标表示地形的高度和身体的曲率。

= los2(Z,R,lat1,lon1,lat2,lon2)计算数字高程地图上点对之间的相互可见性。标高作为一个规则的数据网格提供Z包含以米为单位的高程。这两个点作为纬度和经度的矢量,以度为单位。产生的逻辑变量当两点互相可见时等于1,当视线被地形遮挡时等于0。如果任何输入参数为空,los2尝试从当前轴收集数据。有了一个或多个输出参数,就不会创建数字,只返回数据。

R可以是地理光栅引用对象、引用向量或引用矩阵。如果R是地理光栅引用对象,其RasterSize属性必须一致大小(Z)

如果R是一个引用向量,它必须是一个1 × 3的元素:

[cells/degree norther_latitude_limit wester_longitude de_limit]

如果R是一个引用矩阵,它必须是3 × 2的,并将栅格行和列索引转换为或从地理坐标:

[lon lat] = [row col 1] * R

如果R是一个引用矩阵,它必须定义一个(非旋转、非倾斜)关系,其中数据网格的每一列沿子午线下落,每一行沿平行线下落。默认情况下使用最近邻插值。对于网格限制之外的点,NaN将被返回纬度包含NaN。所有的角都以度为单位。

vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1)将第一个点放置在地表以上的指定高度(例如,在塔上)。这相当于把点放在塔上。如果省略,则假设点1在曲面上。alt1可以是标量,也可以是长度相同的向量lat1lon1lat2,lon2

vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2)将两个点置于地表以上指定高度(以米为单位)。alt2可以是标量,也可以是长度相同的向量lat1lon1lat2,lon2.如果alt2省略,则假设点2在曲面上。

vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt)控制对alt1作为相对高度(alt1opt=榴弹炮的,为默认值)或绝对高度(alt1opt=“火星科学实验室”).如果高度选项为榴弹炮的alt1解释为点1高于地形的高度,单位为米(“高于地面水平”)。如果alt1opt“火星科学实验室”alt1解释为海拔高于零(“平均海平面”)。

vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt,alt2opt)控制解释ALT2

vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt,…
alt2opt actualradius)
在指定半径的球体上进行可见性计算。如果省略,则假定地球的半径以米为单位。高度、高程和半径要用同一个单位。这种调用形式对于在地球以外的物体上进行计算最有用。

vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt,…
alt2opt、actualradius effectiveradius)
假设视线传播的半径更大。这可以解释由于大气中的折射导致的信号路径的曲率。例如,无线电在大气中的传播通常被视为在地球半径为4/3的球体上的直线传播。在这种情况下,最后两个参数将是R_e而且4/3 * R_e,在那里R_e是地球的半径。使用作为平坦地球能见度计算的有效半径。高度、高程和半径应该用同一个单位。

[vis,visprofile,dist,H,lattrk,lontrk] = los2(…),对于标量输入(lat1lon1,等等),返回两点之间路径上的点的向量。visprofile是逻辑向量,包含true (逻辑(1)),中间点可见且为假(逻辑(0)否则)。经销是沿着路径的距离(以米或半径为单位)。H包含相对于沿路径的垂直基准的地形轮廓。lattrk而且lontrk是路径上各点的经纬度。对于矢量输入los2返回visprofile经销H,lattrk,lontrk的单元格数组,每个元素有一个单元格lat1, lon1等。

los2(…),不带输出参数,显示新图中两点之间的可见性概要。

例子

全部折叠

确定两点的视线。显示能见度轮廓在2-D和3-D。

导入科罗拉多州南博尔德峰附近地区的地形数据。通过指定输出类型为,准备用于分析的数据“双”

[Z,R] = readgeoraster(“n39_w106_3arc_v2.dt1”“OutputType”“替身”);

指定南博尔德峰和附近点的坐标。通过赋值的结果,确定从山顶以上100米的位置是否可以看到附近的点los2到一个变量。

latPeak = 39.95384;lonPeak = -105.29916;latNearby = 39.96955;lonnear = -105.29867;vis = los2(Z,R,latPeak,lonPeak,latNearby,lonNearby,100)
vis =逻辑0

的价值0,这意味着从山顶上看不见这个点。

要以2-D显示可见性概要文件,请调用los2没有输出参数。

los2 (Z, R, latPeak、lonPeak latNearby, lonNearby, 100)

若要以3-D显示可见性配置文件,请返回有关指定坐标之间点的可见性信息。输出lattrk而且lontrk包含点的坐标。输出visprofile包含指示点是否可见的逻辑值。

[~,visprofile,~,~,lattrk,lontrk] = los2(Z,R,latPeak,lonPeak,latNearby, lontrk,100);

创建一个地理地球仪,其中包括南博尔德峰周围地区的自定义地形。

addCustomTerrain (“southboulder”“n39_w106_3arc_v2.dt1”) uif = ufigure;G =地球球体(uif,“地形”“southboulder”);

在指定的坐标之间绘制视距。用洋红色的线来表示这个点从顶点上方看不见。

(g,“上”) geoplot3(g,[latPeak latNearby],[lonPeak lonNearby],[100 0],“m”“线宽”2,...“HeightReference”“地形”

画出中间点。用洋红色标记不可见的点,用绿色标记可见的点。在地势上方10米标出每个值,这样标记就不会被地形遮挡。

geoplot3 (g, lattrk (~ visprofile) lontrk (~ visprofile) 10,...“莫”“MarkerSize”2,“线宽”2,“HeightReference”“地形”) geoplot3 (g, lattrk (visprofile) lontrk (visprofile) 10,“走”...“MarkerSize”2,“线宽”2,“HeightReference”“地形”

通过设置相机位置、俯仰、滚转和航向来调整视图。

Campos (g,39.9519,-105.3039,2.9424e+03) campitch(g,-31.7850) camroll(g,0.3603) camheading(g,36.5618)

关闭包含地理地球仪的图形并删除自定义地形。

关闭(uif) removeCustomTerrain (“southboulder”

假设观测者和目标都在地球上方1000公里处,求观测者与观测者90度处的仰角。

Lat1 = 0;Lon1 = 0;Alt1 = 1000*1000;Lat2 = 0;Lon2 = 90;Alt2 = 1000*1000;[az, elev, r] = geodetic2aer(lat2,lon2,alt2,lat1,lon1,alt1,referenceEllipsoid(“grs 80”))
Az = 90
Elev = -45
R = 1.0434e+07

方法直观地检查结果los2视线功能。构造一个由零组成的数据网格来表示地球表面。的los2函数不带输出参数,将创建显示几何图形的图形。

Z = 0 (181361);R = georefposts ([-90 90],[-180 180], size(Z))
R = GeographicPostingsReference with properties: LatitudeLimits: [-90 90] longitude: [-180 180] RasterSize: [181 361] RasterInterpretation: 'post ' ColumnsStartFrom: 'south' RowsStartFrom: 'west' SampleSpacingInLatitude: 1 SampleSpacingInLongitude: 1 RasterExtentInLatitude: 180 RasterExtentInLongitude: 360 XIntrinsicLimits: [1 361] YIntrinsicLimits: [1 181] CoordinateSystemType: 'geographic'地理crs: [] AngleUnit: 'degree'
los2 (Z, R, lat1、lon1 lat2, lon2, alt1, alt1);

图中包含一个轴对象。axis对象包含5个line类型的对象。这些物体代表地形,视线,可见,模糊,观察者。

版本历史

R2006a之前介绍

另请参阅

|