Простой доступ к функциям

Простой доступ Особенности является спецификацией на Open Geospatial Consortium , который определяет , в общем , применимую архитектуру для географических данных и их геометрии .

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

Модель класса геометрии

Модель содержит следующие экземпляры классов:

  • Точка
  • Линии (LineString)
  • Полигоны (многоугольник)
    • Точки на внешнем кольце отсортированы против часовой стрелки (против часовой стрелки).
    • Точки внутреннего кольца (отверстия) отсортированы по часовой стрелке (правые)
  • Несколько точек (MultiPoint)
  • Несколько строк (MultiLineString)
  • Несколько полигонов (MultiPolygon)
  • Коллекция этих геометрий (GeometryCollection)

Все геометрические формы являются производными от абстрактного класса Geometry.

Методы работы с объектами геометрии

В спецификации Simple Feature Access выделяются три разные группы методов:

  1. Первая группа предоставляет различные базовые методы, такие как: B. запрос типа геометрии (GeometryType), запрос экстента (Envelope) или возврат геометрии в виде текста (AsText).
  2. Вторая группа обобщает методы, описывающие пространственные отношения между геометрическими объектами. Эти методы включают Б. являются ли объекты одинаковыми (Равно), пересекаются (Пересекаются) или касаются (Касается).
  3. Наконец, последняя группа включает методы пространственного анализа, такие как B. Буферная зона (Buffer), пересечение (Intersection) или разница (Difference).

Представление геометрии

Другая часть спецификации включает представление геометрии. К ним относятся так называемый хорошо известный текст ( WKT ) или широко известный двоичный ( WKB ) формат.

Известный текст

Хорошо известное текстовое представление в основном используется для буквенно-цифрового представления геометрии . Примеры общеизвестного текста:

  • Точка
Point(10 10)
  • LineString (линия с «точками перегиба»)
LineString (10 10, 20 20, 30 40)
  • Многоугольник (площадь)

многоугольник заключен в две скобки. Многоугольник без отверстия:

Polygon((10 10, 10 20, 20 20, 20 15, 10 10))

с наружным кольцом и внутренним кольцом (отверстие)

Polygon((0 0, 0 20, 20 20, 20 0, 0 0),(5 5, 5 15, 15 15, 15 5, 5 5))
  • Множественный многоугольник

два полигона

MultiPolygon(((10 10, 10 20, 20 20, 20 15, 10 10)),((60 60, 70 70, 80 60, 60 60 )))

два многоугольника, первый многоугольник с отверстием:

MultiPolygon(((0 0, 0 20, 20 20, 20 0, 0 0),(5 5, 5 15, 15 15, 15 5, 5 5)),((30 30, 30 40, 40 40, 40 30, 30 30)))

Первая скобка охватывает весь мультиполигон. Следующие две скобки заключают соответствующий многоугольник. Если в этом многоугольнике есть дыра, скобка закрывается, а второй многоугольник отделяется запятой. Если второй многоугольник геометрически находится внутри первого, он представляет собой отверстие, если геометрически он находится вне многоугольника, это эксклав .

Хорошо известный двоичный файл

Хорошо известное двоичное представление - это переносимое представление геометрии в виде непрерывной байтовой цепочки данных. В качестве типов данных WKB использует целое число без знака из одного или четырех байтов и числа двойной точности из восьми байтов. Пример для известного двоичного файла:

  • Точка с координатой 1.1
0101000000000000000000F03F000000000000F03F

Эта цепочка данных, разбитая на части, означает следующее:

01 : Byte-Reihenfolge
01000000 : Geometrietyp
000000000000F03F : X
000000000000F03F : Y

Представление систем координат

Simple Feature Access также стандартизирует представление геодезических систем с географическими , проекционными или геоцентрическими координатами в буквенно-цифровой форме в виде общеизвестного текста. Примеры представления систем координат:

  • UTM Zone 10 с североамериканской датой NAD27
 PROJCS["UTM Zone 10, Northern Hemisphere",
   GEOGCS["clark66",
       DATUM["North_American_Datum_1927",
           SPHEROID["clark66",6378206.4,294.9786982]],
       PRIMEM["Greenwich",0],
       UNIT["degree",0.0174532925199433]],
   PROJECTION["Transverse_Mercator"],
   PARAMETER["latitude_of_origin",0],
   PARAMETER["central_meridian",-123],
   PARAMETER["scale_factor",0.9996],
   PARAMETER["false_easting",500000],
   PARAMETER["false_northing",0],
   UNIT["Meter",1]]
  • Географическая система координат WGS84
 GEOGCS["wgs84",
   DATUM["WGS_1984",
       SPHEROID["wgs84",6378137,298.257223563],
       TOWGS84[0.000,0.000,0.000]],
   PRIMEM["Greenwich",0],
   UNIT["degree",0.0174532925199433]]

использовать

Спецификация Simple Feature Access широко используется в геопространственных приложениях как в проектах с открытым исходным кодом, так и в проприетарных программах. Две хорошо известные библиотеки лицензионных программ LGPL - это JTS Topology Suite и GEOS . JTS предоставляет API для Java , а GEOS - это API для C ++ . Используя GEOS в PostGIS , WKT / WKB можно использовать непосредственно в базе данных PostgreSQL .

веб ссылки