Области, видимые от точки на сетке повышения ландшафта
[vis,R] = viewshed(Z,R,lat1,lon1)
viewshed(Z,R,lat1,lon1,observerAltitude)
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude)
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
observerAltitudeOption)
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
observerAltidueOption,targetAltitudeOption)
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
observerAltitudeOption,targetAltitudeOption,actualRadius)
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
observerAltitudeOption,targetAltitudeOption,
...
actualRadius,effectiveRadius)
[vis,R] = viewshed(Z,R,lat1,lon1)
вычисляет области, видимые из точки на цифровой сетке повышения. Z
является обычной сеткой данных, содержащей повышения в модулях метров. Местоположение наблюдателя обеспечивается как скалярная широта и долгота в модулях степеней. vis
сетки видимости содержит 1
s в поверхностных районах, видимых от местоположения наблюдателя и 0
s, где угол обзора затенен ландшафтом. R
может быть географическим растровым объектом ссылки, вектором ссылки или матрицей ссылки.
Если R
является географическим растровым объектом ссылки, его свойство RasterSize
должно быть сопоставимо с size(Z)
.
Если R
является вектором ссылки, это должно быть 1 3 с элементами:
[cells/degree northern_latitude_limit western_longitude_limit]
Если R
является матрицей ссылки, это должно быть 3 2 и преобразовать растровые индексы строки и столбца к или от географических координат согласно:
[lon lat] = [row col 1] * R
Если R
является матрицей ссылки, он должен задать (невращательный, нескошенный) отношение, в котором каждый столбец сетки данных падает вдоль меридиана и каждой строки падения вдоль параллели. Интерполяция ближайшего соседа используется по умолчанию. NaN возвращен для точек вне пределов сетки или для которого lat
или lon
содержат NaN. Все углы находятся в модулях степеней.
viewshed(Z,R,lat1,lon1,observerAltitude)
размещает наблюдателя на заданной высоте в метрах выше поверхности. Это эквивалентно помещению наблюдателя на башне. Если не использовано, наблюдатель принят, чтобы быть на поверхности.
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude)
проверки на видимость цели указывают заданное расстояние выше ландшафта. Это эквивалентно помещению целевых точек на башнях, которые не затрудняют представление. Если не использовано, целевые точки приняты, чтобы быть на поверхности.
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
средства управления, является ли наблюдатель на относительной или абсолютной высоте. Если
observerAltitudeOption)observerAltitudeOption
является 'AGL'
, то observerAltitude
исчисляется в метрах над уровнем земли. Если observerAltitudeOption
является 'MSL'
, observerAltitude
интерпретирован как высота выше нуля или средний уровень моря. Если не использовано, 'AGL'
принят.
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
средства управления, являются ли целевые точки на относительной или абсолютной высоте. Если целевой высотной опцией является
observerAltidueOption,targetAltitudeOption)'AGL'
, targetAltitude
исчисляется в метрах над уровнем земли. Если targetAltitudeOption
является 'MSL'
, targetAltitude
интерпретирован как высота выше нуля или средний уровень моря. Если не использовано, 'AGL'
принят.
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
делает вычисление видимости на сфере с заданным радиусом. Если не использовано, радиус земли в метрах принят. Высоты, повышения и радиус должны быть в тех же модулях. Эта форма вызова является самой полезной для вычислений на телах кроме Земли.
observerAltitudeOption,targetAltitudeOption,actualRadius)
viewshed(Z,R,lat1,lon1,observerAltitude,targetAltitude,
...
принимает больший радиус для распространения угла обзора. Это может составлять искривление пути прохождения сигнала из-за преломления в атмосфере. Например, радио-распространение в атмосфере обычно обрабатывается как распространение прямой линии на сфере с 4/3 радиус Земли. В этом случае последними двумя аргументами был бы
observerAltitudeOption,targetAltitudeOption,
...
actualRadius,effectiveRadius)R_e
и 4/3*R_e
, где R_e
является радиусом земли. Используйте Inf
для плоской Земли вычисления viewshed
. Высоты, повышения и радиусы должны быть в тех же модулях.
Наблюдатель должен быть расположен в пределах долготы широты сетки повышения. Если наблюдатель расположен вне сетки, существует недостаточная информация, чтобы вычислить viewshed. В этом случае viewshed
выдает предупреждение и обнуляет все элементы vis
.