Создавайте, редактируйте и визуализируйте данные GeoJSON с помощью интерактивной карты. Рисуйте точки, линии и полигоны, редактируйте координаты и экспортируйте географические данные.
Возможности
- Интерактивная карта: Визуализируйте и взаимодействуйте с географическими данными на интерактивной карте на базе Leaflet. Перемещайте, масштабируйте и исследуйте ваши объекты GeoJSON.
- Рисование объектов: Рисуйте точки, линии и полигоны непосредственно на карте. Поддержка Point, LineString, Polygon и их Multi-вариантов.
- Редактирование объектов: Редактируйте существующие объекты, перетаскивая вершины, изменяя координаты и обновляя свойства. Удаляйте ненужные объекты одним кликом.
- Редактор JSON и синхронизация в реальном времени: Редактируйте код GeoJSON напрямую с подсветкой синтаксиса. Изменения на карте, в редакторе JSON или табличном виде автоматически синхронизируются во всех представлениях для бесшовного редактирования.
Сценарии использования
- ГИС-приложения: Создавайте и редактируйте географические данные для ГИС-приложений, картографических сервисов и инструментов пространственного анализа.
- Веб-картография: Генерируйте данные GeoJSON для веб-картографических библиотек, таких как Leaflet, Mapbox и Google Maps API.
- Сервисы геолокации: Определяйте зоны обслуживания, зоны доставки и географические границы для сервисов на основе местоположения.
- Визуализация данных: Создавайте географические наборы данных для визуализации данных, хороплетных карт и интерактивных панелей.
Руководство по использованию
- Рисование объектов: Нажмите кнопки рисования (Точка, Линия, Полигон) и кликните на карте для создания объектов.
- Редактирование объектов: Нажмите "Режим редактирования" и перетащите вершины для изменения формы объектов. Нажмите "Режим удаления" для удаления объектов.
- Редактирование JSON: Переключитесь на вкладку Редактор JSON для прямого редактирования кода GeoJSON. Изменения автоматически синхронизируются с картой.
- Экспорт данных: Нажмите "Сохранить как" для загрузки файла GeoJSON или "Копировать GeoJSON" для копирования в буфер обмена.
Технические детали
Спецификация формата GeoJSON
GeoJSON основан на JSON и следует спецификации RFC 7946. Он использует систему координат WGS84 (CRS:84). Координаты хранятся как массивы [долгота, широта]. Формат поддерживает FeatureCollection (массив объектов), Feature (геометрия + свойства) и объекты Geometry. Каждая геометрия имеет поле 'type' (Point, LineString, Polygon и т.д.) и поле 'coordinates', содержащее массивы координат.
Интеграция Leaflet
Редактор использует Leaflet.js, библиотеку JavaScript с открытым исходным кодом для интерактивных карт. Leaflet предоставляет рендеринг карт, тайловые слои (OpenStreetMap) и элементы управления взаимодействием. Плагин leaflet-draw позволяет рисовать и редактировать объекты на карте. Объекты отображаются как слои Leaflet (Marker, Polyline, Polygon) и синхронизируются со структурой данных GeoJSON.
Синхронизация в реальном времени
Редактор поддерживает двунаправленную синхронизацию между визуализацией карты, кодом JSON и табличным видом. Когда объекты рисуются на карте, GeoJSON обновляется. Когда JSON редактируется, карта перерисовывается. Изменения в табличном виде обновляют и карту, и JSON. Это достигается через прослушиватели событий и управление состоянием с использованием React hooks.
Часто задаваемые вопросы
- Что такое GeoJSON и для чего он используется?
- GeoJSON - это формат на основе JSON для кодирования географических структур данных. Он используется для: 1) Веб-картографических приложений (Leaflet, Mapbox, Google Maps); 2) Обмена данными ГИС-программ; 3) Географических API и сервисов; 4) Визуализации данных и панелей; 5) Сервисов на основе местоположения; 6) Пространственного анализа и геопространственных баз данных. GeoJSON читается человеком, легко анализируется и широко поддерживается на всех платформах.
- Какую систему координат использует GeoJSON?
- GeoJSON использует систему координат WGS84 (Всемирная геодезическая система 1984), также известную как EPSG:4326. Координаты хранятся как массивы [долгота, широта]. Долгота варьируется от -180° (запад) до 180° (восток), широта от -90° (юг) до 90° (север). Это та же система координат, что используется GPS и большинством веб-картографических сервисов.
- Как нарисовать полигон на карте?
- Нажмите кнопку "Нарисовать полигон", затем кликните на карте для размещения вершин. Снова кликните первую точку или дважды кликните, чтобы завершить полигон. Вы можете редактировать полигон, нажав "Режим редактирования" и перетаскивая вершины. Для удаления нажмите "Режим удаления" и кликните на объект.
- Могу ли я импортировать существующие файлы GeoJSON?
- Да, нажмите кнопку "Открыть" и выберите файл GeoJSON с вашего компьютера. Файл будет загружен и отображен на карте. Поддерживаемые форматы: файлы .geojson, .json, содержащие действительные данные GeoJSON. Редактор проверяет формат файла перед импортом.
- Хранятся ли мои данные на сервере?
- Нет, вся обработка происходит локально в вашем браузере. Ваши данные GeoJSON никогда не загружаются на какой-либо сервер, обеспечивая полную конфиденциальность и безопасность данных. Вы можете работать офлайн после первоначальной загрузки страницы.
Связанная документация
- RFC 7946 - Формат GeoJSON - Официальная спецификация GeoJSON
- Документация Leaflet.js - Документация библиотеки интерактивных карт
- GeoJSON.io - Справочник онлайн редактора GeoJSON
- OpenStreetMap - Бесплатные тайлы карт и географические данные