Видимость линии визирования между двумя точками в местности
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(...)без выходные аргументы отображает профиль видимости между двумя точками на новом рисунке.