2010-09-20 16 views
6

Poszukuję dobrego sposobu na stworzenie aplikacji do przenoszenia map na urządzeniu pół-osadzonym, porównywalnym z netbookiem. Obrazy źródłowe są plikami tiff 400MB z powiązanymi plikami światowymi i projekcyjnymi. Obecne podejście, jakie podjąłem, polega na utworzeniu kafelkowego zestawu danych dla pożądanych poziomów powiększenia w formacie mapy OSM. Działa, ale zużywa zbyt dużo miejsca na dysku. Czy ktoś może wskazać mi właściwy kierunek tutaj? Dzięki.Najlepszy sposób tworzenia ruchomej mapy

+0

Jakie są twoje opcje kompresji? Czy potrzebujesz kompresji bezstratnej, gdy dzielisz obraz na płytki? – Kendrick

+0

Możesz także spróbować http://gis.stackexchange.com. Naprawdę naprawdę fajny problem! – mtrw

+0

Tiffs używają LZW. Moje podejście polegało na załadowaniu ich do Globalnego Mappera i wyeksportowaniu do płytek Bing przy użyciu 4 poziomów zoomu. –

Odpowiedz

1

This article zawiera wiele linków do darmowych/open-source implementacji różnych komponentów mapowania internetowego. Może znajdziesz tam coś, żeby zacząć?

2

Niestety, musisz musi kompromis między wydajności i miejsca na dysku. Kafelkowe mapy są znacznie szybsze do załadowania i nie wymagają dużo pamięci RAM, ale wiele wersji (forma kopii w pamięci podręcznej) w wielu rozdzielczościach wymaga dużo miejsca na dysku.

Jeśli twój program działa przez sieć, możesz skonfigurować serwer map, być może za pomocą protokołu WMS (http://en.wikipedia.org/wiki/Web_Map_Service), aby Twój klient działał jako cienki klient, ale jeśli program działa w trybie offline, musisz ciężko pracować. Artykuł związany z cottsak jest bardzo dobry

Proponuję wypróbować różne kombinacje rozdzielczości płytek i przetestować ich wydajność bezpośrednio, aż znajdziesz dobry kompromis.

0

Możesz używać bibliotek OpenLayers do wyświetlania twoich kafelkowych map.

Aby zaoszczędzić miejsce na dysku, możesz generować kafelki dynamicznie i buforować je. Pamięć podręczna może być następnie sprawdzona, a stare kafelki usunięte przez zadanie cron, jeśli przekroczą limit dysku. Sprawdź kod w pliku tile.php z projektu ka-map. Użyłem go kilka lat temu i działało dobrze. ka-map

Powiązane problemy