Простой доступ к функциям
Простой доступ Особенности является спецификацией на Open Geospatial Consortium , который определяет , в общем , применимую архитектуру для географических данных и их геометрии .
Спецификация описывает, с одной стороны, хранение и доступ к геометрии, а с другой стороны, различные пространственные операторы.
Модель класса геометрии
Модель содержит следующие экземпляры классов:
- Точка
- Линии (LineString)
-
Полигоны (многоугольник)
- Точки на внешнем кольце отсортированы против часовой стрелки (против часовой стрелки).
- Точки внутреннего кольца (отверстия) отсортированы по часовой стрелке (правые)
- Несколько точек (MultiPoint)
- Несколько строк (MultiLineString)
- Несколько полигонов (MultiPolygon)
- Коллекция этих геометрий (GeometryCollection)
Все геометрические формы являются производными от абстрактного класса Geometry.
Методы работы с объектами геометрии
В спецификации Simple Feature Access выделяются три разные группы методов:
- Первая группа предоставляет различные базовые методы, такие как: B. запрос типа геометрии (GeometryType), запрос экстента (Envelope) или возврат геометрии в виде текста (AsText).
- Вторая группа обобщает методы, описывающие пространственные отношения между геометрическими объектами. Эти методы включают Б. являются ли объекты одинаковыми (Равно), пересекаются (Пересекаются) или касаются (Касается).
- Наконец, последняя группа включает методы пространственного анализа, такие как 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 также стандартизирует представление геодезических систем с географическими , проекционными или геоцентрическими координатами в буквенно-цифровой форме в виде общеизвестного текста. Примеры представления систем координат:
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 .
веб ссылки
- Спецификация простого доступа к функциям Open Geospatial Consortium (английский)