Offsetpolyline
Z UMP
Offsetpolyline - skrypt
Narzędzie skryptowe do rysowania linii przesuniętej wobec innej linii o zdefiniowaną odległość (offset, przesunięcie) w wybranym kierunku. Do czego można użyć skryptu? Do rysowania szlaków. Są dwie szkoły rysowania, ale podobno została tylko jedna - wariant szlak obok drogi offset -5, -10, -15 lub +5, +10, +15.
Skrypt znajduje się domyślnie w katalogu .\narzedzia\lua\ jako offsetpolyline.lua. Najlepiej chyba przygotować skrypt dla "swojego" obszaru i umieścić go w katalogu poza drzewem katalogów w ramach UMP, np. w obrębie katalogów MapEdit. Skrypt warto trzymać w wariantach: 0, -5, +5, -10, +10 oraz -15 i +15.
Skrypt działa bardzo sprawnie. Trzeba tylko na początku i na końcu dociąć zgodnie z potrzebami oraz wyedytować właściwości - typ szlaku oraz plik źródłowy. Można też skorzystać z POI oznaczających początek/koniec szlaku pieszego lub rowerowego (0x670x - SZLAK_x lub ROWER_x - na stronie Co-czym).
Parametry skryptu
Parametry są w samym pliku i są to:
- offsetMeter - przesunięcie wobec drogi zaznaczonej w metrach
- typszlaku - definicja linii jaka używana jest do rysowania - jest opisana w tablicy w pliku - wystarczy skopiować
- plikObiektu - nazwa pliku w jakim domyślnie ma się znaleźć nowy obiekt - mając własny skrypt definiujemy statycznie plik, który będzie domyślnym celem.
Problemy
Rysując szlaki lub cokolwiek innego równoległego wobec innej linii (można sobie wyobrazić narysowanie drugiej nitki jezdni w ten sposób) należy pamiętać o:
- jeżeli szlak ma biec wzdłuż wielu dróg - zaznaczmy wiele dróg z Ctrl - kolejno, tak jak będzie szlak biegł i na tak zaznaczonej grupie obiektów uruchamiamy skrypt - pozostaje docięcie końców zgodnie z potrzebami
-
czasami na łączeniach dróg (na wysokości łączenia) skrypt stawia dwa węzły obok siebie - do usunięcia od razu lub po sprawdzeniu błędów- problem powstaje tylko wtedy, gdy łączymy dwa odcinki narysowane skryptem i końce są minimalnie przesunięte - nic dziwnego, że w wyniku merge powstanie zdublowany punkt - jeżeli szlak biegnie pętlami, a drogi biegną dalej - skrypt może fragmentu nie narysować - wtedy pozostaje zaznaczenie tylko tej drogi, użycie na niej skryptu, później docięcie i wykonanie Merge (patrz na poprzednią uwagę)
- wszystkie zaznaczone linie muszą być ze sobą połączone, tzn. mieć wspólne węzły - brak wspólnych węzłów będzie skutkował komunikatem o błędzie
- z lewej lub z prawej zależy od zwrotu danej jezdni (kierunku), dlatego warto mieć pod ręką skrypt +n i -n by w razie potrzeby narysować szlak z drugiej strony i zbędny usunąć - jeżeli przypadkowo narysowało się po niewłaściwej stronie drogi to bez zmiany zaznaczenia wykonaj skrypt dla przeciwnej wartości przesunięcia
Autorem skryptu jest aligeza.