Po lekturze linku poddaję się. Faktycznie, to bardzo prosty algorytm. :shock:
Wyobrażasz sobie serwer, który wytrzyma badanie nim milionów punktów przewalanych przez poi.mobilne.net dziennie?
Chyba nie czytasz moich postów do końca ;)
Może nie co godzinę, ale raz na dobę można zapuścić w tle coś, co wydzieli zbiory punktów leżących w określonych obszarach. Czyli bierze wszystkie punkty z poi.mobilne.net i umieszcza w zależności od położenia w zbiorach 'wroclaw','warszawa','wielkopolska'...
A później wystarczy tylko wyświetlać punkty z danego zbioru, jeśli sobie tego zażyczy użytkownik. Nawet szybciej powinno to wszystko wtedy działać.
Takie grono.net codziennie wyznacza najkrótsze ścieżki między zarejestrowanymi użytkownikami. Też całkiem interesujący algorytm o sporej złożoności, a użytkowników mają blisko milion. I wyraźnie się da :)
Zaraz, ale kto wskazuje wreszcie ten obszar? Jeśli ja wskazuję obszar wykraczający poza granicę planu szczegółowego, to jakim prawem algorytm ma mi cokolwiek odrzucać?
Ty wskazujesz. W naszym idealnym przypadku masz możliwość skorzystania z już określonych obszarów (dla ułatwienia) lub wyznaczenia własnego przez wprowadzenie pewnej liczby współrzędnych będących wierzchołkami wielokąta ograniczającego interesujący Cię obszar.
Bo co jeśli chcę zrobić download POI dla Warszawy i okolicy, powiedzmy 10 km od granic planu, i nie przyszywać ich do planu, tylko mieć w pliku np. RejonWarszawy.uam? Algorytm ściągnie mi Warszawę, a resztę odrzuci sądząc, że się pomyliłem wyznaczając obszar?
A to już pierwsze mądre rozszerzenie tej funkcjonalności :)
Opcja mogłaby się nazywać "wyświetl punkty odległe o X km od granicy obszaru Y". Cała filozofia sprowadziłaby się tylko do przesunięcia punktów granicznych obszaru o odpowiednio obliczony wektor (w zależności od kąta który tworzą odcinki odchodzące od danego punktu-wierzchołka).
Ogólnie cała ta koncepcja jest ciekawym zajęciem dla matematyka lubiącego wektory :)
Ufff... Czyli jednak jest lista wyboru... Przynajmniej dla planów miast.
Tylko czemu dalej są wyłącznie województwa? A gdzie powiaty? A gdzie regiony turystyczne? A gdzie krainy geograficzne? A gdzie pasma górskie? A gdzie rejon zaopatrzenia firmy X? Itd., itp.
Każdy jest zainteresowany być może innym rodzajem obszaru.
Bo to tylko przykłady. Kolejnym rozwinięciem tej idei byłby katalog obszarów, gdzie każdy by mógł umieścić zdefiniowane przez siebie obszary. I miałbyś wtedy powiaty, regiony turystyczne, krainy, itd.
Mógłbyś wtedy sobie robić "ulubione obszary" i dla każdego z nich mieć osobny zestaw punktów. Ech, marzenia ;)
A jakich, przepraszam, kategorii? Chyba, że zaczniemy generować garnitur ulubionych POI dla każdego z kilkunastu tysięcy użytkowników?
Kategorie nie mają nic do rzeczy :)
Kategorie i obszary to dwa różne zbiory, do których mogą być przypisane punkty. Tyle tylko, że kategorie są rozłączne (w sensie jeden punkt może należeć tylko do jednej kategorii, za to może leżeć w wielu nakładających się obszarach.
Mając zaś wytyczone przypisania punktów do obszarów (co nam załatwił proces liczący wszystko raz na dobę) możemy w prosty sposób operować na tych zbiorach punktów. Każdy z nich będzie podzbiorem całego poi.mobilne.net, przez co operacje powinny nawet się wykonywać szybciej (sposób reprezentacji list punktów w bazie jest sprawą drugorzędną, choć gdyby to sprytnie rozwiązać, to taki podział powinien dać nawet spore zyski).
A nie wspomnieliśmy jeszcze nawet słowem o synchronizowaniu przez AMPOISync wielu plików UAM, poprzyszywanych do różnych planów, zawierających POI tylko z określonych obszarów, które trzeba byłoby "w locie" badać znanym(?) nam algorytmem.
Wystarczyłaby możliwość zapisywania zbiorów ulubionych punktów z danego obszaru pod własną nazwą i dalej już tak samo jak zawsze (synchronizacja, przywiązanie do mapy, etc.).
Uff, to nam twórczy pościk wyszedł :)