Przygotowuję aplikację, w której muszę utworzyć wektorową siatkę, która będzie używana do przechowywania i wyświetlania mapy cieplnej. Ma następujące wymagania:
- Może objąć całą planetę.
- Zdecydowana większość kwadratów siatki nie będzie miała wartości.
- Nie chcę przechowywać samej siatki; Chciałbym to przeliczyć na bieżąco.
- Skala danych używanych z siatką może się znacznie różnić.
- Spodziewam się, że chcę kwadratów siatki od 1 km do 100 km szerokości. (Wiem, ile to będzie (~ 510 milionów na 1 km, ~ 51 000 na 100 km)).
- Wartości będą gromadzone / agregowane dla każdego kwadratu siatki.
- Idealnie byłoby w stanie łatwo użyć mniejszych komórek siatki do obliczenia wartości dla większych, zamiast przechowywać większe wartości komórek siatki.
- Będę używał OpenLayers do układania go na OpenStreetMap.
- Będę przechowywać go w SpatiaLite lub SQLite, więc najlepiej obsługiwane przez te natywnie (tj. Dla SpatiaLite = obsługiwany CRS; lub dla SQLite = system oparty na liczbach czystych).
Więc moje pytanie brzmi: jakiej projekcji powinienem użyć dla tej siatki?
Ponadto - czy istnieje dobry sposób na zaprojektowanie tego? Czy ktoś wie o dobrym potencjalnym rozwiązaniu tego problemu lub wcześniej rozwiązał podobny problem? Lub może wskazać mi przydatny kierunek.
Edytuj przypadek użycia - w zasadzie agreguję ramki graniczne o różnych kształtach i rozmiarach. Mogą mieć wielkość od kilku hektarów do tysięcy kilometrów kwadratowych. Mogą być również w różnych projekcjach.
Poniżej znajduje się niestandardowa wersja tego, co chcę osiągnąć automatycznie na większą skalę.
Wielkie dzięki.