Области, видимые от точки на сетке вертикального изменения ландшафта
[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
обнулять.