Опорный эллипсоид
referenceEllipsoid объект инкапсулирует опорный эллипсоид, смоделированный как сжатый сфероид с тремя дополнительными свойствами: имя, единица длины полуглавных и полунезначительных осей и числовой код EPSG.
Можно создать общий referenceEllipsoid объект с referenceEllipsoid функция описана здесь. Можно также создать referenceEllipsoid со свойствами, характерными для Мировой Геодезической Системы 1 984 опорных эллипсоида с помощью wgs84Ellipsoid функция.
E = referenceEllipsoid создает referenceEllipsoid объект, который представляет сферу единичного радиуса.
E = referenceEllipsoid( создает name)referenceEllipsoid объект, соответствующий nameИмя является нечувствительным к регистру. Значения SemimajorAxis и SemiminorAxis свойства исчисляются в метрах.
E = referenceEllipsoid( создает code)referenceEllipsoid объект, соответствующий числовому коду EPSG, code. Единица длины используется для SemimajorAxis и SemiminorAxis свойства зависят от эллипсоида, выбранного, и обозначаются в свойстве LengthUnit.
E = referenceEllipsoid( иname,lengthUnit)
E = referenceEllipsoid( создайте code,lengthUnit)referenceEllipsoid объект с SemimajorAxis и SemiminorAxis свойства в заданной единице длины, LengthUnit. Единица длины может быть любой единицей длины, поддержанной validateLengthUnit функция.
name — Имя опорного эллипсоида'Unit Sphere' (значение по умолчанию) | вектор символов | строковый скалярИмя опорного эллипсоида в виде одного из значений в таблице Names of EPSG Ellipsoids.
Типы данных: char | string
code — Числовой код EPSG[] (значение по умолчанию) | целое число между 7 000 и 8000Числовой код EPSG в виде пустого вектора или целого числа между 7 000 и 8000, несмотря на то, что не все целые числа в этой области значений являются допустимыми числовыми кодами EPSG. Для получения информации о допустимых кодах EPSG смотрите домашнюю страницу EPSG.
Типы данных: double
lengthUnit — Единица длины'' (значение по умолчанию) | вектор символов | строковый скалярЕдиница длины в виде вектора символов или строкового скаляра. Можно задать любую единицу длины, которая поддерживается validateLengthUnit функция.
Типы данных: char | string
Code — Числовой код EPSG[] (значение по умолчанию) | целое число между 7 000 и 8000Числовой код EPSG в виде пустого вектора или целого числа между 7 000 и 8000, несмотря на то, что не все целые числа в этой области значений являются допустимыми числовыми кодами EPSG. Для получения информации о допустимых кодах EPSG смотрите домашнюю страницу EPSG.
Когда опорный эллипсоид представляет сферу единичного радиуса или пользовательский эллипсоид, Code пустой вектор ([]).
Пример: 7030
Типы данных: double
Name — Имя опорного эллипсоида'Unit Sphere' (значение по умолчанию) | вектор символов | строковый скалярИмя опорного эллипсоида в виде вектора символов или строкового скаляра. Когда вы создадите опорный эллипсоид путем определения его имени, используйте одно из значений в таблице Names of EPSG Ellipsoids.
Когда опорный эллипсоид представляет сферу единичного радиуса, Name вектор символов 'Unit Sphere'.
Пример: 'World Geodetic System 1984'
Типы данных: char | string
LengthUnit — Единица длины для осей эллипсоида'' (значение по умолчанию) | вектор символов | строковый скалярЕдиница длины для осей эллипсоида в виде вектора символов. Вектор символов может быть пустым, или это может быть любая единица длины, принятой validateLengthUnit функция.
Когда опорный эллипсоид представляет сферу единичного радиуса, LengthUnit пустой символьный вектор ''.
Пример: 'km'
Типы данных: char | string
SemimajorAxis — Экваториальный радиус эллипсоидаЭкваториальный радиус эллипсоида в виде положительного, конечного скаляра. SemimajorAxis свойство описывается в единицах длины, заданной LengthUnit.
Когда SemimajorAxis свойство изменяется, SemiminorAxis свойство масштабируется по мере необходимости, чтобы сохранить форму эллипсоида и значения связанных с формой свойств включая InverseFlattening и Eccentricity. Единственный способ изменить SemimajorAxis свойство состоит в том, чтобы установить его непосредственно, с помощью записи через точку.
Пример: 6378137
Типы данных: double
SemiminorAxis — Расстояние от центра эллипсоида, чтобы орудовать шестамиРасстояние от центра эллипсоида, чтобы орудовать шестами в виде неотрицательного, конечного скаляра. Значение SemiminorAxis всегда меньше чем или равно SemimajorAxis, и описывается в единицах длины, заданной LengthUnit.
Когда SemiminorAxis свойство изменяется, SemimajorAxis свойство остается неизменным, но форма изменений эллипсоида, которая отражается в изменениях в значениях InverseFlattening, Eccentricity, и другие связанные с формой свойства.
Пример: 6356752
Типы данных: double
InverseFlattening — Обратная величина выравниванияInf (значение по умолчанию) | положительная скалярная величина в области значений [1, Inf]Обратная величина выравнивания в виде положительной скалярной величины в области значений [1, Inf].
Значение обратного выравнивания, 1/f, вычисляется с помощью SemimajorAxis значение a и SemiminorAxis значение b согласно 1/f = a / (a-b). Значение 1/f Inf определяет совершенную сферу. Когда 1/f приближается 1, опорный эллипсоид приближается к сглаженному диску.
Когда InverseFlattening свойство изменяется, другое связанное с формой обновление свойств, включая Eccentricity. SemimajorAxis свойство остается неизменным, но значение SemiminorAxis настраивает, чтобы отразить новую форму.
Пример: 300
Типы данных: double
Eccentricity — Первый эксцентриситет эллипсоидаПервый эксцентриситет эллипсоида в виде неотрицательного скаляра в области значений [0, 1].
Значение эксцентриситета, ecc, вычисляется с помощью SemimajorAxis значение a и SemiminorAxis значение b согласно ecc = sqrtA2 B2A. Значение ecc 0 определяет совершенную сферу.
Когда Eccentricity свойство изменяется, другое связанное с формой обновление свойств, включая InverseFlattening. SemimajorAxis свойство остается неизменным, но значение SemiminorAxis настраивает, чтобы отразить новую форму.
Пример: 0.08
Типы данных: double
Flattening — Выравнивание эллипсоидаЭто свойство доступно только для чтения.
Выравнивание эллипсоида в виде неотрицательного скаляра в области значений [0, 1].
Значение выравнивания, f, вычисляется с помощью SemimajorAxis значение a и SemiminorAxis значение b согласно f = (a-b)/a.
Типы данных: double
ThirdFlattening — Третье выравнивание эллипсоидаЭто свойство доступно только для чтения.
Третье выравнивание эллипсоида в виде неотрицательного скаляра в области значений [0, 1].
Значение третьего выравнивания, n, вычисляется с помощью SemimajorAxis значение a и SemiminorAxis значение b согласно n = (a-b) / (a +b).
Типы данных: double
MeanRadius — Средний радиус эллипсоидаЭто свойство доступно только для чтения.
Средний радиус эллипсоида в виде положительного, конечного скаляра. MeanRadius свойство описывается в единицах длины, заданной LengthUnit.
Средний радиус эллипсоида, r, вычисляется с помощью SemimajorAxis значение a и SemiminorAxis значение b согласно r = (2a+b)/3.
Типы данных: double
SurfaceArea — Площадь поверхности эллипсоидаЭто свойство доступно только для чтения.
Площадь поверхности эллипсоида в виде положительного, конечного скаляра. SurfaceArea свойство описывается в единицах площади, сопоставимых единица длины, заданной LengthUnit свойство.
Типы данных: double
Volume — Объем эллипсоидаЭто свойство доступно только для чтения.
Объем эллипсоида в виде положительного, конечного скаляра. Volume свойство описывается в модулях объема, сопоставимого с единицей длины, заданной LengthUnit свойство.
Типы данных: double
Создайте объект опорного эллипсоида путем определения имени эллипсоида.
e = referenceEllipsoid('GRS 1980')e =
referenceEllipsoid with defining properties:
Code: 7019
Name: 'GRS 1980'
LengthUnit: 'meter'
SemimajorAxis: 6378137
SemiminorAxis: 6356752.31414036
InverseFlattening: 298.257222101
Eccentricity: 0.0818191910428158
and additional properties:
Flattening
ThirdFlattening
MeanRadius
SurfaceArea
Volume
Создайте тот же объект опорного эллипсоида путем определения кода 7019 EPSG.
e = referenceEllipsoid(7019)
e =
referenceEllipsoid with defining properties:
Code: 7019
Name: 'GRS 1980'
LengthUnit: 'meter'
SemimajorAxis: 6378137
SemiminorAxis: 6356752.31414036
InverseFlattening: 298.257222101
Eccentricity: 0.0818191910428158
and additional properties:
Flattening
ThirdFlattening
MeanRadius
SurfaceArea
Volume
Создайте объект опорного эллипсоида, задав модули. Для единицы длины можно задать любую единицу длины, принятой validateLengthUnit функция.
e = referenceEllipsoid('GRS80','km')
e =
referenceEllipsoid with defining properties:
Code: 7019
Name: 'GRS 1980'
LengthUnit: 'kilometer'
SemimajorAxis: 6378.137
SemiminorAxis: 6356.75231414036
InverseFlattening: 298.257222101
Eccentricity: 0.0818191910428158
and additional properties:
Flattening
ThirdFlattening
MeanRadius
SurfaceArea
Volume
Создайте опорный эллипсоид, задав GeoTIFFCodes.Ellipsoid поле из файла.
info = geotiffinfo('boston.tif');
e = referenceEllipsoid(info.GeoTIFFCodes.Ellipsoid)e =
referenceEllipsoid with defining properties:
Code: 7019
Name: 'GRS 1980'
LengthUnit: 'meter'
SemimajorAxis: 6378137
SemiminorAxis: 6356752.31414036
InverseFlattening: 298.257222101
Eccentricity: 0.0818191910428158
and additional properties:
Flattening
ThirdFlattening
MeanRadius
SurfaceArea
Volume
Создайте пользовательский опорный эллипсоид путем изменения свойств опорного эллипсоида по умолчанию.
customPlanet = referenceEllipsoid; customPlanet.Name = 'Tiny Planet'; customPlanet.LengthUnit = 'meter'; customPlanet.SemimajorAxis = 8000; customPlanet.SemiminorAxis = 7900
customPlanet =
referenceEllipsoid with defining properties:
Code: []
Name: 'Tiny Planet'
LengthUnit: 'meter'
SemimajorAxis: 8000
SemiminorAxis: 7900
InverseFlattening: 80
Eccentricity: 0.157619002661481
and additional properties:
Flattening
ThirdFlattening
MeanRadius
SurfaceArea
Volume
Все эти почти 60 кодов в таблице эллипсоида EPSG поддерживаются. Подмножество этих эллипсоидов может быть создано путем определения их имени. Короткие и длинные имена этих эллипсоидов, наряду с их соответствующим кодом, появляются в таблице. Можно создать опорный эллипсоид путем определения или его кода, краткого названия или длинного имени.
| Код EPSG | Краткое название | Длинное имя |
|---|---|---|
| — | 'unitsphere' | 'Unit Sphere' |
| 7019 | 'grs80' | 'GRS 1980' |
| 7030 | 'wgs84' | 'WGS 84' |
| 7015 | 'everest' | 'Everest 1830 (1837 Adjustment)' |
| 7004 | 'bessel' | 'Bessel 1841' |
| 7001 | 'airy1830' | 'Airy 1830' |
| 7002 | 'airy1849' | 'Airy Modified 1849' |
| 7008 | 'clarke66' | 'Clarke 1866' |
| 7012 | 'clarke80' | 'Clarke 1880 (RGS)' |
| 7022 | 'international' | 'International 1924' |
| 7024 | 'krasovsky' | 'Krassowsky 1940' |
| 7043 | 'wgs72' | 'WGS 72' |
| — | 'wgs60' | 'World Geodetic System 1960' |
| — | 'iau65' | 'International Astronomical Union 1965' |
| — | 'wgs66' | 'World Geodetic System 1966' |
| — | 'iau68' | 'International Astronomical Union 1968' |
| 7030 | 'earth' | 'WGS 84' |
| — | 'sun' | 'Sun' |
| — | 'moon' | 'Moon' |
| — | 'mercury' | 'Mercury' |
| — | 'venus' | 'Venus' |
| — | 'mars' | 'Mars' |
| — | 'jupiter' | 'Jupiter' |
| — | 'saturn' | 'Saturn' |
| — | 'uranus' | 'Uranus' |
| — | 'neptune' | 'Neptune' |
| — | 'pluto' | 'Pluto' |
Когда вы задаете эллипсоид в терминах полуглавных и полунезначительных осей (а не полуглавной оси и обратного выравнивания, или полуглавной оси и эксцентриситета), маленькая потеря точности в последних нескольких цифрах Flattening, Eccentricity, и ThirdFlattening может произойти. Это неизбежно, но не влияет на результаты практического расчета.
Name свойство для некоторого ReferenceEllipsoid объекты изменилисьПоведение изменяется в R2020b
Начиная в R2020b, Name свойство referenceEllipsoid объекты всегда содержат имена эллипсоидов, когда они появляются в Геодезической Базе данных EPSG. В R2020a и предыдущих релизах, значении Name свойство зависело от имени или кода, вы раньше создавали объект.
Например, создайте два referenceEllipsoid объекты с помощью ссылочной системы WGS84. Создайте первый объект путем определения его кода EPSG и создайте второй объект путем определения его имени. В R2020b и более поздних релизах значение Name свойство является тем же самым для обоих referenceEllipsoid объекты. В R2020a и более ранних релизах значение Name свойство различное.
r1 = referenceEllipsoid(7030);
r2 = referenceEllipsoid('World Geodetic System 1984');
r1.Name
r2.Name| R2020b и позже | R2020a и ранее |
|---|---|
ans =
'WGS 84'
ans =
'WGS 84'
|
ans =
'WGS 84'
ans =
'World Geodetic System 1984'
|
Если у вас есть существующий код, в котором вы создаете объект опорного эллипсоида путем определения имени к referenceEllipsoid функция создания, вы не должны обновлять свой код, чтобы соответствовать имени в Геодезической Базе данных EPSG.
Для получения дополнительной информации о Геодезической Базе данных EPSG, смотрите домашнюю страницу EPSG.
oblateSpheroid | referenceSphere | validateLengthUnit | wgs84Ellipsoid | geocrs
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.