exponenta event banner

isequal

Сравнение двух projcrs или geocrs объекты для эквивалентности

Синтаксис

Описание

пример

tf = isequal(crs1,crs2) возвращает логический 1 (true), если системы координат (CRS) crs1 и crs2 эквивалентны. В противном случае возвращается логическое значение 0 (false).

  • Два projcrs объекты эквивалентны, если они имеют один и тот же географический CRS, метод проекции, параметры проекции и единицу длины.

  • Два geocrs объекты эквивалентны, если у них одинаковые имя базы, ссылочный сфероид, простой меридиан и единица измерения угла.

isequal функция не учитывает имена CRS.

Примеры

свернуть все

Получение информации о двух наборах растровых данных с помощью georasterinfo функция. Назначьте их системы координат переменным. В этом случае системы координат являются projcrs объекты.

info1 = georasterinfo('MtWashington-ft.grd');
info2 = georasterinfo('MountDartmouth-ft.grd');
 
crs1 = info1.CoordinateReferenceSystem;
crs2 = info2.CoordinateReferenceSystem;

Сравните системы координат.

tf = isequal(crs1,crs2)
tf = logical
   1

Две системы координат могут быть эквивалентны, даже если строки возвращены wktstring функции не идентичны.

Возвращает информацию о файле формы в виде структуры. Найдите систему координат, запросив CoordinateReferenceSystem поле.

info = shapeinfo('landareas.shp');
g1 = info.CoordinateReferenceSystem
g1 = 
  geocrs with properties:

             Name: "WGS 84"
            Datum: "World Geodetic System 1984"
         Spheroid: [1x1 referenceEllipsoid]
    PrimeMeridian: 0
        AngleUnit: "degree"

Создайте вторую систему координат с помощью geocrs функция.

g2 = geocrs(4326)
g2 = 
  geocrs with properties:

             Name: "WGS 84"
            Datum: "World Geodetic System 1984"
         Spheroid: [1x1 referenceEllipsoid]
    PrimeMeridian: 0
        AngleUnit: "degree"

Системы координат имеют одинаковые имя базы, сфероид привязки, простой меридиан и единицу измерения угла. Поэтому системы координат являются эквивалентными.

isequal(g1,g2)
ans = logical
   1

Обратите внимание, что строки WKT не идентичны. Строка для g2 содержит дополнительную информацию о области использования ("USAGE«) и код полномочий (»ID").

wktstring(g1,'Format','Formatted')
ans = 
    "GEOGCRS["WGS 84",
         DATUM["World Geodetic System 1984",
             ELLIPSOID["WGS 84",6378137,298.257223563,
                 LENGTHUNIT["metre",1]],
             ID["EPSG",6326]],
         PRIMEM["Greenwich",0,
             ANGLEUNIT["Degree",0.0174532925199433]],
         CS[ellipsoidal,2],
             AXIS["longitude",east,
                 ORDER[1],
                 ANGLEUNIT["Degree",0.0174532925199433]],
             AXIS["latitude",north,
                 ORDER[2],
                 ANGLEUNIT["Degree",0.0174532925199433],
                 ID["EPSG",7030]]]"

wktstring(g2,'Format','Formatted')
ans = 
    "GEOGCRS["WGS 84",
         DATUM["World Geodetic System 1984",
             ELLIPSOID["WGS 84",6378137,298.257223563,
                 LENGTHUNIT["metre",1]]],
         PRIMEM["Greenwich",0,
             ANGLEUNIT["degree",0.0174532925199433]],
         CS[ellipsoidal,2],
             AXIS["geodetic latitude (Lat)",north,
                 ORDER[1],
                 ANGLEUNIT["degree",0.0174532925199433]],
             AXIS["geodetic longitude (Lon)",east,
                 ORDER[2],
                 ANGLEUNIT["degree",0.0174532925199433]],
         USAGE[
             SCOPE["unknown"],
             AREA["World"],
             BBOX[-90,-180,90,180]],
         ID["EPSG",4326]]"

Входные аргументы

свернуть все

Первая система координат, заданная как projcrs или geocrs объект.

Вторая система координат, заданная как projcrs или geocrs объект.

Совет

  • Если предполагается, что две системы координат являются эквивалентными, но isequal функция возвращает 0 (false), можно проверить строки WKT на наличие различий с помощью wktstring функция.

См. также

Объекты

Представлен в R2021a