Tracer2: Ekstrahowanie rzutów budynków w JOSM

Obie są na licencji GPL więc chyba nie ma się co zastanawiać tylko zgłosić poprawkę. Wszystkie wtyczki są trzymane tu i w razie konieczności są aktualizowane wg potrzeb do zmian zachodzących w Josm

To jest tylko kopia w Gicie, oryginalny kod (i kontakt do autora) jest tu:

https://svn.openstreetmap.org/applications/editors/josm/plugins/tracer2/README

Zmiany zgłosiłem tu jako poprawkę: https://josm.openstreetmap.de/ticket/11402

Testować jak to działa można przy pomocy tego pliku, trzeba go wkleić do folderu z wtyczkami.

Pomyśl jeszcze aby Tracer2 nie kasował wejść i adresów a także POI. jeśli są na nodzie na obrysie. Nie może takowych też przesuwać a tylko odklejać.

Jeśli chodzi węzły z tagami to są nie zmienione, np wejście zostaje w tym samym miejscu w którym było na starym obrysie i trzeba to ewentualnie przesunąć.

Fajnie. Jutro protestuję. Natomiast ciekawi mnie jak obiekt nowo wyrysowany ma inną ilość punktów niż oryginał to jak wówczas zachowuje się plugin? Gdy punktów ma być więcej jak decyduje w jakiej kolejności dodać punkty istniejące a gdzie dodać nowe? Analogicznie gdy ma być ich mniej to który punkt usuwa z historii a które pozostają? MA jakieś LIFO, FIFO czy inną heurystykę decyzyjną w tym względzie czy to raczej kwestia przypadku?

Tu jest opis jak to wygląda od strony kodu:
Linia
138: początek funkcji odpowiedzialnej za łączenie/dodawanie drogi nowej
166: tempWay - nasza stara droga
170: nodePool - węzły które możemy wykorzystać
174: geometryPool - tymczasowe węzły z geometrią nowej drogi w odpowiedniej kolejności
181: stara droga traci wszystkie węzły ale dalej jest starą drogą
186: nodeAssoc - tablica w której mamy pary węzłów z geometryPool i najbliższe im odpowiadające z nodePool (jeśli takie istnieją - linia 190), oryginalnie w “zastąp geometrię” były tu dwie funkcje ala ta druga była mniej wydajna i korzystała z dodatkowych bibliotek
198: geometryNodes - geometria ze starymi węzłami, jeśli węzłów jest więcej niż wcześniej to są brane z geometryPool
204: przesuwamy stare węzły na nowe pozycje (w sumie to tylko dodajemy komendę która z tego co zauważyłem wykonuje się później)
209: tempWay - nasza stara droga ma węzły z geometryNodes
212: Jeśli stara droga miała więcej węzłów niż nowa oznaczamy węzły jako skasowane
219: s_oWay to nasza poprawiona stara droga
222: łaczymy węzły razem jeśli są w niewielkiej odległości
226: domknięcie drogi jeśli nie jest domknięta - ostatni i pierwszy węzeł musi być taki sam
252: łączy drogę z pobliskimi węzłami - dlatego jeśli np wejście jest wzglednie blisko nowej geometri zostanie do niej doklejone bez przesuwania
255: węzły które wcześniej onzaczyliśmy jako skaskowane oznaczamy jako nie skasowane i je usuwamy - z tym było najwięcej problemów

dalej już nic nie zmieniałem i zostało po staremu

W takim przypadku na tym etapie nodePool ma jeszcze węzły które już nie są potrzebne i są one kasowane.

Dla każdego punktu nowej drogi sprawdzamy czy istnieje w nodePool taki punkt który leży w odległości euklidesowej mniejszej niż 1 jeśli jest ich więcej wybieramy najbliższy. Odpowiada za to funkcja findNearestNode.

Jest problem z bardzo ciemnym kolorem brązowym.
Przy opcji wyszukiwania za pomocą koloru wypełniającego, właśnie ten kolor nie jest rozpoznawalny i Tracer2 go nie widzi, przeskakując na inny obrys.

Mam pytanie odnośnie adresów url do Tracer2

Jako podkładu do rysowania budynków w JOSM używam WMS polska.e-mapa.net (dostępny z menu JOSM-a)

http://wms.epodgik.pl/cgi-bin/KrajowaIntegracjaEwidencjiGruntow?FORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=budynki&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}

Jako url do Tracer2 (znaleziony na forum OSM) używam

[http://mapy.geoportal.gov.pl/wss/service/pub/guest/kompozycjaG2_TBD_WMS/MapServer/WMSServer?FORMAT=image/gif&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Bud_A&STYLES=&TRANSPARENT=TRUE&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0](http://mapy.geoportal.gov.pl/wss/service/pub/guest/kompozycjaG2_TBD_WMS/MapServer/WMSServer?FORMAT=image/gif&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Bud_A&STYLES=&TRANSPARENT=TRUE&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0) (JOSM)}

Drugi WMS, którego używam do Tracer2 jest nieaktualny, nie zawiera wszystkich budynków. Pierwszy WMS jest aktualny i zawiera nawet niektóre budynki, które są dopiero w budowie.
Pytanie: Jak zrobić, żeby używać pierwszego WMS-a (wms.epodgik.pl) w Tracer2, próbowałem i dałem sobie rady.

Hej!
Dajesz Podkłady=> Ustawienia podkładów=> i kopiujesz sobie adres z „url warstwy obrazów”.

Następnie przechodzisz do ustawień tracer2 i wklejasz adres do pola URL (albo przy użyciu Dodaj nowy albo Edycja).
Wtedy tracer powinien importować obrysy z podkładu który aktualnie wyświetlasz.

Problem jednak jaki napotkałem z podkładem polska.e-mapa.net: Buildings jest taki że nie jestem go w stanie zmusić do współpracy z Tracerem.
Próbowałem różnych ustawień parametrów, ale nie i już :frowning:
Zaimportowałem sobie zatem adres z Krajowej Integracji Ewidencji Gruntow z polska.e-mapa.net czyli http://wms.epodgik.pl/cgi-bin/KrajowaIntegracjaEwidencjiGruntow i było już lepiej, tj. chodził względnie na ustawieniach jak poniżej:

choć nie rysował tak dobrze jak na podkładzie z lokalnego powiatu (testowałem na powiecie poznańskim). Podobnie zresztą jak podkład polska.e-mapa.net: Buildings miał on tendencję do „zygzakowania” linii (co przekłada się na kształt importowanych budynków), które np. na podkładzie z powiatu poznańskiego wyświetlają się prosto.
Poza tym nie wiedzieć czemu część budynków rysuje mi dokładnie obok a część poprawnie.
Na koniec próbowałem zaimportować jeszcze adres z „Twojego” powiatu pilskiego http://wms.powiat.pila.pl/cgi-bin/pila ale tutaj niestety nawet podkład nie chciał się wyświetlić (nie udało się pobrać obrazu z serwera kafelków) nie mówiąc już o współpracy z tracer2 :frowning:
Zatem wygląda na to że rysujesz albo dalej „ręcznie” albo tracer-ujesz budynki które potem przesuwasz do podkładu. Nie wiem tylko co wychodzi szybciej :confused:
Może za jakiś czas podkład z pow. pilskiego zacznie chodzić więc wtedy można spróbować raz jeszcze…

Czy da się używać tego WMS w Tracer2?

http://wms.epodgik.pl/cgi-bin/KrajowaIntegracjaEwidencjiGruntow?

Nie potrafię skonfigurować, a ten WMS jest dokładny i aktualny, łącznie z budynkami, które dopiero są w budowie.

https://www.epodgik.pl/index.php?action=portal/news&id=411

W tracer2 używam WMS z parametrami:

http://mapy.geoportal.gov.pl/wss/service/pub/guest/kompozycjaG2_TBD_WMS/MapServer/WMSServer?FORMAT=image/gif&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Bud_A&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0(JOSM)}

i

http://mapy.geoportal.gov.pl/wss/service/pub/guest/kompozycjaG2_TBD_WMS/MapServer/WMSServer?FORMAT=image/gif&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Bud_A&STYLES=&TRANSPARENT=TRUE&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0 (JOSM)}

ale WMS 2 i 3 są już mało aktualne. Czy jest możliwość aby używać WMS z pierwszego linku? Jakie trzeba dobrać parametry? Jak ustawić Tracer2?

A właśnie, goście z GeoSystem mieli podrzucić link do WMS z ogólnopolskiej (OK, tam gdzie używają ich systemu, czyli większośc gmin) mapy takiej, jak jest w powiatach/gminach - mówili o tym na SoTM-pl. Z tego powinno sie odrysowywać że hej…

Mi się ostatnio nie wyświetlają w josm podkłady wms działek:

wms:http://mapy.geoportal.gov.pl/wss/service/pub/guest/G2_GO_WMS/MapServer/WMSServer?FORMAT=image/png&transparent=true&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Dzialki&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0 (JOSM)}

nie wiem co mam popsute

Ten także:

wms_endpoint:http://geoportal.szczecin.pl:9090/isdp/gs/wms?LAYERS=EG_dzialki&FORMAT=image/png&VERSION=1.1.1&LABEL=true&TRANSPARENT=TRUE&STYLES=&PROFILE=552&SERVICE=WMS&REQUEST=GetMap&SRS={proj}&BBOX={bbox}&WIDTH={width}&HEIGHT={height}

d3mol3k, spróbuj ten:

http://wms.epodgik.pl/cgi-bin/KrajowaIntegracjaEwidencjiGruntow?FORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=dzialki&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}

Właśnie tak robiłem, kombinowałem też z parametrami i z ustawieniami Tracera, ale nie poradziłem sobie. Widać się nie da, trudno.

Ręcznie odrysować się da, ale jak zmusić żeby WMS współpracował z Tracerem?

http://wms.epodgik.pl/cgi-bin/KrajowaIntegracjaEwidencjiGruntow?

Dzięki dodałem. Ogólnie przez weekend miałem kłopoty z geoprtalowymi podkładami nie wyświetlały się. Przy niektórych muszę wybrać image/png bo ustawione image/jpg nie działają. Coś się wczoraj poprawiło więc poobserwuję co i jak.

Czy Wy też tak macie, że różne budynki publiczne (szkoły, kościoły, sklepy, remizy…) na podkładzie widać na ciemnobrązowo, ale wtyczka tracer2 ich nie widzi?

Jaki podkład?

wms:http://mapy.geoportal.gov.pl/wss/service/pub/guest/kompozycjaG2_TBD_WMS/MapServer/WMSServer?FORMAT=image/gif&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Bud_A&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0(JOSM)}

…i to mi pokazuje te publiczne budynki na brązowo.

I w ustawieniach wtyczki tracer2 mam to samo:

http://mapy.geoportal.gov.pl/wss/service/pub/guest/kompozycjaG2_TBD_WMS/MapServer/WMSServer?FORMAT=image/gif&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=Bud_A&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}{header(User-Agent,Mozilla/5.0(JOSM)}

i nie łapie tych publicznych budynków.

Tu jest przykładowy budynek.