- Symulator MaSzyna -
Symulator EU07 (i nie tylko) => Symulator => Wątek zaczęty przez: Ra w 02 Kwietnia 2008, 01:32:17
-
Końce torów (tzw. null track) bywają niebezpieczne. Wystarczy, że coś tam wiedzie, a Symulator przestaje działać poprawnie. Kiedyś wpadłem na pomysł, że do końców torów można by doklejać niewidoczne odcinki w celu bezpiecznego zatrzymania pojazdu.
Mój program (od wersji 1.0.48) potrafi wygenerować listę końcówek torów (dróg, rzek), w postaci wpisów include w dodatkowym pliku. Plikiem tym można sobie doczepić dowolne rzeczy na końcach torów. W przykładowej wersji załączonej w archiwum z programem jest to duża czerwona tablica. Wersja 1.0.49 umożliwia dołączenie różnych plików w zależności od typu toru. W wersji 1.0.53 plik dla torów kolejowych zawiera dodatkowo niewidoczny tor wykolejający.
Uruchamia się to w następujący sposób:- Na zakładce Wczytanie wybierz scenerię.
- Na zakładce Struktura przyciśnij Wczytaj wszystkie include bez parametrów.
- Na zakładce Debugger przyciśnij Generuj połączenia torów.
- Następnie przyciśnij Generuj plik nullstop, gdy się uaktywni.
Powyższa procedura tworzy katalog scenery\nullstop, a w nim plik odpowiadający nazwie scenerii. Przykładowo plik może mieć następujące wpisy:include;nullstop/track.inc;none;14.767;0.2;-767.177;-6;0;0;end
include;nullstop/road.inc;none;464.044;-8;-78.665;179;0;0;end
include;nullstop/road.inc;none;464.044;-8;-153.665;179;0;0;end
include;nullstop/road.inc;none;-8.499;0.35;82.614;89;0;0;end
include;nullstop/road.inc;none;25.151;0.35;-131.386;0;0;0;end
include;nullstop/track.inc;none;10.581;0.3;154.622;179;0;0;end
include;nullstop/track.inc;none;108.649;0.3;31.446;-134;0;0;end
include;nullstop/track.inc;none;108.649;0.3;113.446;-134;0;0;end
include;nullstop/track.inc;none;108.649;0.3;72.446;-134;0;0;end
include;nullstop/track.inc;none;-382.212;0.3;69.037;89;0;0;end
include;nullstop/track.inc;none;-382.357;0.3;65.188;89;0;0;end
include;nullstop/track.inc;none;310.581;0.2;-1047.38;-80;0;0;end
Jak widać dołączany jest plik scenery\nullstop\track.inc albo scenery\nullstop\road.inc. Kolejny parametr (p1) chwilowo nie jest używany. Trzy dalsze liczby (p2)(p3)(p4) to współrzędne końca toru (dla origin). Kolejna liczba to kąt obrótu względem osi pionowej (p5). Liczby (p6) i (p7) są generowane jako zerowe i nie są wykorzystane.
Tak utworzony plik będzie automatycznie dołączany do tymczasowego pliku scenerii (scenery/$.scn). Należy pamiętać o skasowaniu go, gdy przestanie być potrzebny.
Narzędzie to może być również przydatne dla twórców tras, w celu sprawdzenia czy trasa nie ma dziur albo podwójnych torów - takie miejsca zostaną wtedy wyraźnie oznaczone. Aktualnie dopuszczalna odległość (niedopasowanie) między torami jest ustawione na 1.5mm. Jeśli więc tablica pojawi się na środku toru, oznacza to, że przerwa między odcinkami torów jest zbyt duża. Jeśli ktoś chce zabezpieczyć swoją trasę w ten sposób, proszę przenieść wygenerowany plik do innego katalogu niż scenery\nullstop i odpowiednio zmodyfikować dołączany fragment - zamienić ścieżkę pliku nullstop/track.inc na ścieżkę do własnego z odpowiednią zawartością (np. niewidoczny tor wykolejający). Usunąć również trzeba wpisy generujące się na końcach peronu wstawionego jako road.
2008-04-03 (1.0.49) Zmiana opisu w związku z podziałem dołączanych plików według typu.
2008-04-27 (1.0.53) Zmiana w kątach: (p5) kątem obrotu w osi pionowej, (p6) i (p7) zerowe i nie używane.
-
Witam
Dało by radę na koniec torów wstawić kozła oporowego ? zamiast tej tabliczki ?
-
Owszem. Generowany plik może dołączyć dowolną konstrukcję, może to być tablica, jak w załączonym pliku, może to być sygnalizator z S1, może to być niewidoczny tor albo kozioł oporowy.
Musisz zdefiniować kozioł oporowy w jakimś pliku .inc, poza katalogiem scenery\nullstop i następnie odpowiednio zmienić wygenerowany plik, również przenieść go do innego katalogu. W ten sposób możesz sobie wygenerować kozły oporowe na scenerii. Ewentualnie trzeba by zmodyfikować parametry, pozostawiając tylko współrzędne oraz kąt obrotu.
Jednak kozioł oporowy raczej nie zatrzyma pojazdu, który na niego wjedzie (EU07 rozpędzona do prędkości 160km/h wjechała po pionowym torze na wysokość 100m). Sam mechanizm tworzenia pliku jako taki (bez edycji wygenerowanego pliku) nie nadaje się na generator kozłów oporowych, ponieważ kozły te by się pojawiały na końcach peronów oraz w długości toru, jeśli błąd pasowania między odcinkami byłby większy niż 1.5mm (zdarza się). Również pojawiłyby się na końcach istniejących już kozłów oporowych.
-
A można i kozioł i tor niewidzialny by uzyskac coś takiego jak na Quarku??
-
A można i kozioł i tor niewidzialny by uzyskac coś takiego jak na Quarku??
No przeciez jest napisane ze moze to byc cokolwiek, co wpiszedz do pliku .inc. Moze to byc nie wiem, krowa, grzyb, semafor, drzewo, grzybiarz i siodemka za krzakiem schowana. Co chesz.
-
Próbowałem dodać do scenerii tory wykolejające w opisany wyżej sposób. Okazało się, że tory nie podlegają poleceniu rotate - nie da ich się w ten sposób obrócić. Niemniej jednak nawet jeśli są ułożone w jednym kierunku, potrafią zatrzymać pociąg. (Nie badałem jak duży.)
Do wersji 1.0.53 dołączyłem plik scenery\nullstop\track.inc zawierający niewidzialny tor o długości 400m. Zawiera też czerwoną tablicę. Proszę nie edytować plików:
scenery\nullstop\track.inc,
scenery\nullstop\road.inc,
scenery\nullstop\river.inc,
ponieważ w kolejnych wersjach mogą one być nadpisane przez nowsze pliki podczas instalacji.
Zastanawiam się nad tym, czy zrobić generator toru, skoro nie da się go obrócić o kąt. Taki wygenerowany tor miałby odpowiednio wyliczone współrzędne. Ale komplikuje się to, gdyż należałoby z góry założyć jakieś parametry, albo umożliwić ich podanie.
Również w wersji 1.0.53 jest możliwość ustawienia tolerancji przy łączeniu torów. Tolerancja jest podawana w [0.1mm], czyli domyślna wartość 15 oznacza 1.5mm. Im większa jest tolerancja, tym mniej dziur w długości torów zostanie wskazanych. Przy zbyt dużej tolerancji bardzo krótkie odcinki torów mogą zostać połączone odwrotnie. Dlatego zalecane jest wykonanie łączenia torów najpierw dla wartości 15, a potem powtórzenie dla większych wartości (np. 500 = 5cm). Wartość tolerancja powinna zależeć od celu łączenia torów. Dla wyszukiwania dziur w długości torów podczas tworzenia scenerii, powinna być niewielka (10-15). Natomiast powinna być duża (>500) dla wygenerowania np. kozłów oporowych tylko na końcach torów.
-
Może nie wniose nic nowego do tematu, ale jest to swietne i dobrze dzialajace narzedzie :D