Определите и визуализируйте видимость через ландшафт

Можно использовать обычные сетки данных данных о повышении, чтобы ответить на вопросы о взаимной видимости местоположений на поверхности (межвидимость). Например,

  • Угол обзора от одной точки до другого затенен ландшафтом?

  • Какая область видна от местоположения?

  • Какая область видит данное местоположение?

На первый вопрос можно ответить с функцией los2. В его самой простой форме los2 определяет видимость между двумя точками на поверхности цифровой карты повышения. Можно также задать высоты наблюдателя и предназначаться для точек, а также данной величины, относительно которой измеряются высоты. Для специализированных приложений можно даже управлять фактическим и эффективным радиусом Земли. Это позволяет вам принимать, например, что Земля имеет радиус 1/3 больше, чем его фактическое значение, установка, которая часто используется в моделировании распространения радиоволны.

Вычислите угол обзора

Следующий пример показывает вычисление угла обзора между двумя точками на обычной сетке данных, сгенерированной функцией peaks. Вычисление выполняется функцией los2, которая возвращает логический результат: 1 (точки взаимно видимы — межвидимый), или 0 (точки не межвидимы).

  1. Создайте сетку повышения с помощью peaks повышение имеющее 500 и установите его источник в (0°N, 0°W), с интервалом 1 000 ячеек на степень):

    map = 500*peaks(100);
    maplegend = [ 1000 0 0];
  2. Задайте два места на этой сетке, чтобы протестировать межвидимость:

    lat1 = -0.027; 
    lon1 = 0.05; 
    lat2 = -0.093; 
    lon2 = 0.042;
  3. Вычислите межвидимость. Итоговый аргумент задает высоту (в метрах) выше поверхности первого местоположения (lat1, lon1), где наблюдатель расположен (точка зрения):

    los2(map,maplegend,lat1,lon1,lat2,lon2,100)
    ans =
    
         1

Функция los2 производит схему профиля в окне рисунка, показывающем видимость в каждой ячейке сетки вдоль угла обзора, который может использоваться, чтобы интерпретировать булев результат. В этом примере схема показывает, что строка между этими двумя местами едва-едва очищает прошедший пик.

Можно также вычислить viewshed, имя, выведенное от водораздела, который указывает на элементы сетки повышения ландшафта, которые видимы от конкретного местоположения. Функция viewshed проверяет на угол обзора между фиксированным наблюдателем и каждым элементом в сетке. Смотрите страницу ссылки на функцию viewshed для примера.