Локальный вертикальный угол возвышения, диапазон и азимут
elevation будет удален в следующем выпуске. Использовать geodetic2aer вместо этого.
Опорная точка занимает второе место в geodetic2aer список аргументов, и выходные данные упорядочены по-разному. Шаблон замены:
[azimuthangle, elevationangle, slantrange] = geodetic2aer(lat2, lon2, alt2, lat1, lon1, alt1, spheroid, ...)
В отличие от этого, elevation, geodetic2aer требует ввода сфероида, и он должен быть oblateSpheroid, referenceEllipsoid, или referenceSphere объект, а не эллипсоидный вектор 2 на 1.
Для преобразования эллипсоидного вектора можно использовать следующие шаги: ellipsoid, к oblateSpheroid объект, spheroid:
spheroid = oblateSpheroid;
spheroid.SemimajorAxis = ellipsoid(1);
spheroid.Eccentricity = ellipsoid(2);
Если отметка называется только с 6 входами, по умолчанию используется опорный эллипсоид GRS 80 в метрах. Чтобы заменить это использование, используйте referenceEllipsoid('GRS80','meters') как вход сфероида для geodetic2aer.
Если angleunits вход включен, он должен следовать за spheroid ввод в вызов geodetic2aer, а не предшествовать ему.
Можно указать lengthunits параметр при вызове elevation, но geodetic2aer не имеет такого ввода. Вместо этого установите LengthUnit свойство входного сфероида до требуемого значения. В этом случае a referenceEllipsoid или referenceSphere должен использоваться объект (не oblateSpheroid объект).
[elevationangle,slantrange,azimuthangle] = ...
elevation(lat1,lon1,alt1,lat2,lon2,alt2)
[...] = elevation(lat1,lon1,alt1,lat2,lon2,alt2,...
angleunits)
[...] = elevation(lat1,lon1,alt1,lat2,lon2,alt2,...
angleunits,distanceunits)
[...] = elevation(lat1,lon1,alt1,lat2,lon2,alt2,...
angleunits,ellipsoid)
[elevationangle,slantrange,azimuthangle] = ... вычисляет угол места, диапазон наклона и азимутальный угол точки 2 (с геодезическими координатами
elevation(lat1,lon1,alt1,lat2,lon2,alt2)lat2, lon2, и alt2), если смотреть из точки 1 (с геодезическими координатами lat1, lon1, и alt1). Координаты alt1 и alt2 эллипсоидальные высоты. Угол места - это угол линии визирования над локальной горизонталью в точке 1. Диапазон наклона - это трехмерное декартово расстояние между точкой 1 и точкой 2. Азимут - угол с севера к проекции линии визирования на локальную горизонталь. Углы в единицах градусов; высоты и расстояния в метрах. Фигура земли - эллипсоид по умолчанию (GRS 80).
Входные данные могут быть векторами точек или массивов любой формы, но должны совпадать по размеру, за исключением: Отметка, диапазон и азимут из одной точки в набор точек могут быть вычислены очень эффективно путем предоставления скалярных координатных входных данных для точки 1 и векторов или массивов для точки 2.
[...] = elevation(lat1,lon1,alt1,lat2,lon2,alt2,... где
angleunits)angleunits определяет единицы входного и выходного углов. Если опустить angleunits, 'degrees' предполагается.
[...] = elevation(lat1,lon1,alt1,lat2,lon2,alt2,... где
angleunits,distanceunits)distanceunits определяет единицы измерения высоты и наклонной дальности. Если опустить distanceunits, 'meters' является значением по умолчанию. Любое значение единиц, распознаваемое unitsratio может использоваться.
[...] = elevation(lat1,lon1,alt1,lat2,lon2,alt2,... использование
angleunits,ellipsoid)ellipsoid для задания эллипсоида. ellipsoid является referenceSphere, referenceEllipsoid, или oblateSpheroid объект или вектор формы [semimajor_axis eccentricity]. Если ellipsoid обеспечивается, высоты должны быть в тех же единицах, что и большая полуось, и диапазон наклона будет возвращен в этих единицах. Если ellipsoid опущено, по умолчанию используется единичная сфера. Расстояния в метрах, если не указано иное.
Примечание
Углы азимута линии визирования, возвращаемые elevation будет, как правило, незначительно отличаться от соответствующих выходов azimuth и distance, за исключением больших азимутов круга на сферической земле.
Найдите угол возвышения точки на 90 градусов от наблюдателя, предполагая, что наблюдатель и цель находятся на высоте 1000 км над Землей.
lat1 = 0; lon1 = 0; alt1 = 1000*1000; lat2 = 0; lon2 = 90; alt2 = 1000*1000; elevang = elevation(lat1,lon1,alt1,lat2,lon2,alt2) elevang = -45
Визуально проверить результат с помощью los2 функция прямой видимости. Создайте сетку данных из нулей для представления поверхности Земли. los2 функция без выходных аргументов создает фигуру, отображающую геометрию.
Z = zeros(180,360); refvec = [1 90 -180]; los2(Z,refvec,lat1,lon1,lat2,lon2,alt1,alt1);
