Видимость линии визирования между двумя точками в местности
vis = 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
координаты учитывают повышение местности и кривизну тела.
vis = los2(Z,R,lat1,lon1,lat2,lon2)
вычисляет взаимную видимость между парами точек на цифровой карте повышения. Повышения предоставляются как регулярная сетка данных Z
содержащих повышения в единицах измерения. Две точки предусмотрены как векторы широт и долгот в единицах степеней. Получившаяся логическая переменная vis
равен единице, когда две точки видны друг другу, и нулю, когда линия зрения заслоняется местностью. Если какой-либо из входных параметров пуст, los2
пытается собрать данные из текущей системы координат. С одним или несколькими выходными аргументами никакие рисунки не создаются и возвращаются только данные.
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. Все углы указаны в единицах степеней.
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1)
размещает первую точку на заданной высоте в метрах над поверхностью (на башне, для образца). Это эквивалентно постановке точки на башню. Если опущена, точка 1 принимается на поверхности. alt1
может быть либо скаляром, либо вектором с той же длиной, что и lat1
, lon1
, lat2
, и lon2
.
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2)
расположения обеих точек на заданных высотах в метрах над поверхностью. alt2
может быть либо скаляром, либо вектором с той же длиной, что и lat1
, lon1
, lat2
, и lon2
. Если alt2
опущен, точка 2 принята на поверхности.
vis = los2(Z,R,lat1,lon1,lat2,lon2,alt1,alt2,alt1opt)
управляет интерпретацией alt1
как относительная высота (alt1opt
равен 'AGL'
, по умолчанию) или абсолютная высота (alt1opt
равен 'MSL'
). Если опция высоты 'AGL'
, alt1
интерпретируется как высота точки 1 в метрах над местностью («над уровнем земли»). Если alt1opt
является 'MSL'
, 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,
...
принимает больший радиус для распространения линии визирования. Это может объяснить кривизну пути сигнала из-за преломления в атмосфере. Например, распространение радио в атмосфере обычно рассматривается как распространение прямой линии на сфере с радиусом земли 4/3. В этом случае последние два аргумента будут
alt2opt,actualradius,effectiveradius)R_e
и 4/3*R_e
, где R_e
- радиус Земли. Использование Inf
как эффективный радиус для вычисления видимости плоской земли. Высоты, повышения и радиусы должны быть одинаковыми по модулям.
[vis,visprofile,dist,H,lattrk,lontrk]
= los2(...)
, для скалярных входов (lat1
, lon1
, и т.д.), возвращает векторы точек вдоль пути между двумя точками. visprofile
- логический вектор, содержащий true (logical(1)
) где промежуточные точки видны и ложны (logical(0)
) в противном случае. dist
- расстояние вдоль пути (в метрах или модулях радиуса). H
содержит профиль местности относительно вертикальной данной величины вдоль пути. lattrk
и lontrk
являются широтами и долготами точек вдоль пути. Для векторных входов los2
возвращает visprofile
, dist
, H, lattrk
, и lontrk
как массивы ячеек, с одной камерой на элемент lat1,lon1
, и т.д.
los2(...)
без выходные аргументы отображает профиль видимости между двумя точками на новом рисунке.