WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте
JTS Topology Suite
Тип Библиотека
Автор Мартин Дэвис
Написана на Java
Аппаратная платформа Java SE
Последняя версия 1.16 (30 апреля 2014)
Лицензия Eclipse Public License v.1.0 (начиная с 1.15), GNU Lesser General Public License (до версии 1.14)
Сайт locationtech.org/project…

JTS Topology Suite (Java Topology Suite или JTS) — это библиотека Java с открытым исходным кодом которая предоставляет объектную модель для евклидовой плоской линейной геометрии вместе с набором основных геометрических функций. JTS в первую очередь предназначен для использования в качестве основного компонента программного обеспечения для векторной геоматики, такого как географические информационные системы (ГИС). JTS также может быть использоваться как библиотека общего назначения, предоставляющая алгоритмы для вычислительной геометрии.[1]

JTS реализует геометрическую модель и API, определенные консорциумом OpenGIS в Simple Features Specification для SQL.

JTS определяет стандартизированную геометрическую систему для построения пространственных приложений: средства просмотра, обработчики пространственных запросов и инструменты для проверки, очистки и интеграции данных.

Помимо основной библиотеки Topology Suite на Java существуют порты на другие языки, например, GEOSC++ и JSTSJavaScript.[2]

До JTS 1.14 и появления порта GEOS публиковалась под лицензией GNU Lesser General Public License (LGPL). С принятием LocationTech будущие выпуски будут под лицензиями EPL/BSD.

Возможности

JTS предоставляет следующие функциональные возможности:

Модель геометрии

Поддерживаются следующие классы геометрии - points, linestrings, polygons, и collections. Геометрия является линейной, в том смысле, что границы неявно определяются путем линейной интерполяции между вершинами. Геометрия вложена в 3D евклидову плоскость. Вершины геометрии также могут иметь значение Z.

Поддерживаются определяемые пользователем модели точности для геометрических координат. Вычисления выполняются с использованием алгоритмов, которые обеспечивают надежные геометрические вычисления при всех моделях точности.

Геометрические функции

Пространственные структуры и алгоритмы

Возможности ввода / вывода

  • Чтение и запись WKT, WKB и GML форматов

Библиотека GEOS

GEOS - это порт C/C++ подмножества JTS и выбранных функций. GEOS заслуживает внимания как базовый компонент в программной экосистеме собственных скомпилированных исполняемых файлов на платформах Linux, Mac и Windows. Из-за структуры времени исполнения Java и виртуальной машины Java (JVM) библиотеки кода, написанные на Java, в основном не могут использоваться в качестве библиотек из стандартизированной среды перекрестных ссылок (часто построенной из C). Linux, Microsoft Windows и семейство BSD, включая Mac OSX, используют структуру связей, которая позволяет интегрировать (связывать) библиотеки разных языков в собственный исполняемый файл среды выполнения. Java по своей природе не участвует в этой совместимости без дополнительных средств (JNI).

Частичный список проектов с использованием GEOS

GEOS включен в состав популярных приложений, которые будут перечислены ниже. А благодаря поддержке классов геометрий из пакета GDAL, который нашел широкое применение в качестве библиотеки, включенной во многие ГИС-программы, GEOS стал основой в реализации работы с геометрией в ещё большем количестве приложений:

  • GDAL - OGR - объединение растровых и векторных данных.
  • QGIS - Десктопный кроссплатформенная ГИС с открытым исходным кодом.
  • PostGIS - пространственные типы и операции для PostgreSQL.
  • GeoDjango – поддержка ГИС для Django.
  • Google Earth – программа для создания виртуальных глобусов и изображений.
  • GRASS GIS – Библиотека и приложение.
  • MapServer - среда разработки с открытым исходным кодом для создания пространственных интернет-приложений.
  • World Wind Java – виртуальный глобус NASA с открытым исходным кодом и технология визуализации мира.
  • Orfeo toolbox – библиотека обработки спутниковых снимков.
  • R – статистическое программное обеспечение с открытым исходным кодом с расширениями для анализа пространственных данных.
  • SAGA GIS – кроссплатформенное программное обеспечение ГИС с открытым исходным кодом.

История

Финансирование первоначальной работы над JTS было получено осенью 2000 года от GeoConnections и правительства Британской Колумбии на основе предложения, выдвинутого Марком Сондхеймом и Дэвидом Скеа. Работу выполняли Мартин Дэвис (дизайнер программного обеспечения и ведущий разработчик) и Джонатан Акино (разработчик), оба из Vivid Solutions в то время. С тех пор JTS поддерживается независимым программным проектом Мартина Дэвиса.[4]

С конца 2016 года по начало 2017 года JTS была принята компанией LocationTech.

Платформы

JTS разработан под платформу Java JDK 1.4. Это 100% чистая Java. Он будет работать и на всех более поздних версиях JDK.

Подмножество JTS было перенесено на C++, а точки входа объявлены как интерфейсы C, в библиотеке GEOS.

JTS был перенесен в .NET Framework как пакет Net Topology Suite.

Порт JTS на JavaScript инициирован Björn Harrtell и поддерживается получение название JSTS

Частичный список проектов использующих JTS

См. также

Примечания

  1. Davis, Martin Secrets of the JTS Topology Suite (September 26, 2007). Проверено 26 января 2017.
  2. GEOS. Проверено 24 января 2019.
  3. A Formal Definition of Binary Topological Relationships by Max Egenhofer
  4. History of JTS and GEOS - M. Davis. Проверено 27 мая 2013.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии