Лучший способ создать движущуюся карту - PullRequest
6 голосов
/ 20 сентября 2010

Я ищу хороший способ создания приложения с движущейся картой на полувстроенном устройстве, сравнимом с нетбуком. Исходные изображения - это 400-мегабайтные файлы формата TIFF со связанными файлами мира и проекций. Текущий подход, который я выбрал, заключается в создании мозаичного набора данных для желаемых уровней масштабирования в формате карты OSM. Это работает, но занимает слишком много места на диске. Кто-нибудь может указать мне правильное направление здесь? Спасибо.

Ответы [ 3 ]

2 голосов
/ 10 октября 2010

К сожалению, вам необходимо компромисс между производительностью и дисковым пространством.Плиточные карты загружаются намного быстрее и не требуют большого объема ОЗУ, но для нескольких версий (в виде копий кэша) при разных разрешениях требуется много места на диске.

Если ваша программа работает по сети, вы можете настроитькартографический сервер, возможно, с использованием протокола WMS (http://en.wikipedia.org/wiki/Web_Map_Service), поэтому ваш клиент действует как тонкий клиент, но если ваша программа работает в автономном режиме, вы должны усердно работать. Статья, связанная с cottsak , очень хороша

Я предлагаю вам попробовать разные комбинации разрешений тайлов и тестировать их производительность напрямую, пока не найдете хороший компромисс.

1 голос
/ 07 октября 2010

Эта статья содержит множество ссылок на бесплатные / открытые реализации различных компонентов веб-картографирования. Может быть, вы можете найти что-то там, чтобы начать?

0 голосов
/ 11 октября 2010

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

Чтобы сэкономить на диске, вы можете динамически генерировать плитки и кэшировать их.Затем можно проверить кэш и удалить старые плитки заданием cron, если они превышают вашу дисковую квоту.Проверьте код в tile.php из проекта ka-map.Я использовал его несколько лет назад, и он работал хорошо. ка-карта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...