2013-08-30 13 views
2

Я пишу географическую игру на Java, и я хотел бы получить некоторые данные о местонахождениях границ стран, но все, что я могу найти, это шейп-файлы, и я не могу получить широту/долготы из них, иначе я могу найти только одну координату для каждой страны.Данные по координатам приграничной границы

Где я могу найти

  • образом, чтобы извлечь долгота/широта данных в используемых данных в Java или в текстовом файле?
  • веб-сайт со свободными данными о границах страны, которые могут быть использованы в программе Java?

Edit:

Это не должно быть точным; для почти чего угодно, кроме России, Китая и США, 10 координат, вероятно, достаточно. Острова не имеют особого значения. Я просто хочу знать, что можно точно рассчитать кратчайшее расстояние между двумя странами.

ответ

5

Загрузить основные границы страны отсюда: http://www.baruch.cuny.edu/geoportal/data/esri/esri_intl.htm. Они, вероятно, более детализированы, чем вы хотите (Канада имеет большинство вершин на 3316), но это единственный бесплатный набор данных о грубой границе, который я могу найти в Интернете.

Чтобы получить координаты из шейпа как текст, перейдите MyGeodata Converter

  1. Run Вектор конвертер
  2. Загрузить почтовый файл, который вы только что загрузили.
  3. Проверить доступные операции
  4. Экспорт в GeoJSON
  5. Скачать Zip файл формы MyGeodata конвертер
  6. разархивировать файл.

Теперь у вас есть границы в GeoJSON format и вы можете использовать парсер GeoJSON или более простой текстовый синтаксический анализатор для получения данных координат.

Если это слишком много, вы можете также проанализировать шейп-файлы с одной из различных фреймворков шейп-файла Java. См. Does anyone know of a library in Java that can parse ESRI Shapefiles? для некоторых вариантов.

+0

+1 Спасибо за ссылку на конвертер MyGeodata. Я рассмотрю его позже и соглашусь, если это сработает. –

+0

Можете ли вы обновить ссылку, она больше не указывает на ресурс. – CMCDragonkai

0

Загрузите файл osm и импортируйте его в postgresql + postgis (с помощью инструмента osm2pgsql). Если требуется другая база данных миграции PostgreSQL до нужной базы данных

http://planet.openstreetmap.org/

+0

Это 59-Гбайт XML-файл. Инструкции по извлечению границ страны из этого будут полезны. – fishinear

0

Преобразователь MyGeodata только бросает ошибку 500 на данный момент, так что мне пришлось смотреть дальше, и, наконец, наткнулся на KML файлы, которые грубо описывают контур каждой страны. Я разместил ссылку на this related question, поэтому кто-то может захотеть посмотреть там.