Wersja/15.11.111

Z Rainsted
Skocz do: nawigacji, wyszukiwania

Wersja 15.11.111.10909 została udostępniona w dniu 2015-11-04. Głównym celem zmian w ostatnich kilku miesiącach była optymalizacja pracy nad połączeniem scenerii Linia 61 (od Stradomia do Lublińca) ze scenerią Linia 61 + Linia 144 (od Lublińca do Ozimka).

Zmiany w edytorze RSF

Poprawione szablony rozjazdów

Wbudowane szablony rozjazdów zostały przeliczone przy pomocy arkusza kalkulacyjnego tak, aby zminimalizować błąd pomiędzy krzywą Béziera a teoretyczną osią toru. Tor odchylony za odcinkiem przediglicowym dostał małe odchylenie (rzędu 1:700), które znacznie zmniejsza błąd (maksimum to 4.5mm, wcześniej błąd był rzędu 10cm). Jednocześnie współrzędne toru odchylonego zostały teraz zaokrąglone tak, aby uzyskać dokładną proporcję 1:9. Przy okazji zostały zmodyfikowane kody wbudowanych szablonów w plikach RSF: teraz są ujemną długością szablonu. Do górnego menu została też dodana funkcja, naprawiająca globalnie wszystkie rozjazdy w pliku RSF do stanu zgodnego z nowymi szablonami (naprawia też krzyżowe).

Promień łuku pionowego

W poprzecznym, który ma zablokowaną wysokość, można teraz wpisać promień łuku pionowego zamiast kąta względem niwelety. Da to w przyszłości możliwość automatycznego przeliczania odcinków łuków pionowych na załomach profilu pionowego.

Wysokość wstawienia obiektów przytorowych

Dotychczas wszystkie obiekty były wstawiane na wysokości niwelety (czyli takiej, jak główka szyny). Aby znalazły się na poziomie terenu, wymagane było wpisanie odpowiedniego obniżenia w definicjach plików INC (np. -0.78). Jednak to obniżenie było stałe i nie sprawdzało się, jeśli sceneria miała w różnych miejscach różne wysokości podsypki (np. 0.2, 0.35, 0.6). Obecnie można zrezygnować ze wspólnego obniżenia i ustawiać obniżenie bezpośrednio w obiekcie. Do wyboru jest zarówno wysokość podsypki (wraz z wysokością szyny, pobieraną z parametrów tekstury szyny), jak i obniżenie podtorza wpisane do odcinka niwelety. Standardowo obie te wartości powinny być równe (dół podsypki powinien dotykać trójkątów podtorza), jednak w specyficznych sytuacjach mogą być one różne. Wysokość podsypki jest też różna w zależności od odległości od osi toru (obiekt może znajdować się pomiędzy szynami albo na pochyłej części podsypki). Nadal jest też możliwość odpięcia obiektu od wysokości toru i ustawienie go na wysokości trójkątów terenu (jeśli są one dołączone do pliku RSF).

Poprawione generowanie rowów

Jeśli wysokość podtorza różni się od otaczającego terenu o mniej niż 0.5m, to nie będzie generowana dodatkowa część pozioma ani "skarpa", a jedynie jeden z brzegów rowu zostanie powiększony.

Zmiana konstrukcji krzyżowych

Rozjazdy krzyżowe są teraz konstruowane w taki sposób, że zwrotnica "a" znajduje się po lewej stronie zwrotnicy "b" (patrząc od strony mniejszego kilometrażu). Jednocześnie zwrotnice "b" oraz "d" mają jako pierwszy tor odcinek wyłukowany (drugi jest prosty), dzięki czemu domyślne ustawienie jest "ac", a rozjazd wygląda jak w rzeczywistości (wcześniej wyglądał symetrycznie). Tak skonstruowany rozjazd jest gotowy do animacji równoległej, tzn. zwrotnica "a" przestawia się jednocześnie z "b" (a "c" jednocześnie z "d"). Wcześniej rozjazdy krzyżowe działały jako X="ac i bd" oraz )(="ad i bc", co było w jakimś sensie wygodne, ale zupełnie nie odpowiadało rzeczywistym rozjazdom. W pliku RSF zwrotnice "b" i "d" mają jako pierwszy odcinek prosty, tory są zamieniane dopiero na etapie eksportu do SCN. Dodana została też funkcja globalna, naprawiająca rozjazdy krzyżowe do stanu zgodnego z obecnymi wytycznymi (wcześniej można było nadać nazwę "a" dowolnej zwrotnicy krzyżowego, a pozostałe ustawiały się odpowiednio).

Tekstury tabliczek dla sygnalizatorów

Pierwotne założenie było takie, że dla sygnalizatorów mamy listę tekstur tabliczek, a w nazwie np. semafora podajemy tylko jego literę (np. "Lbc_J3"). Z czasem okazało się, że wygodniej jest podawać informację o tabliczce w nazwie zamiast wybierać osobny plik (np. "Lbc_J3-2m"). Taka wydłużona nazwa się eksportowała jako nazwa sygnalizatora i eventu wiążącego z torem, co z kolei powodowało inne problemy. Obecnie zostało to przerobione tak, że zawartość po znaku "-" jest obcinana przy eksportowaniu nazwy semafora i eventu wiążącego, a jako tabliczka jest wstawiana zawartość po ostatnim znaku "_", ale tylko wtedy, jeśli nie zostanie wybrany plik tekstury we Własnościach sygnalizatora.

Rejestrowanie czasu pracy nad plikiem RSF

Podczas zapisywania pliku RSF jest w nim umieszczana informacja, ile orientacyjnie trwała praca nad plikiem. Czas jest naliczany przez 10s od ostatniego odświeżenia ekranu, więc jeśli odejdziemy od komputera na dłużej, to ten czas nie zostanie doliczony. Czas pracy wyświetlany jest na górnym pasku po otwarciu pliku RSF.

Wstępne przygotowanie do rozjazdów łukowych

Jednym z błędnych założeń w początkach powstawania edytora (2009 rok — nie istniały wtedy scenerie z rozjazdami łukowymi) było to, że zwrotnice mają jeden tor prosty. W specjalny sposób została dodany rozjazd symetryczny, jednak dla rozjazdów łukowych muszą być teraz zrobione specjalne reguły, np. pozycjonowania takiego rozjazdu na łuku. Obecnie istnieje możliwość doklejenia do pliku RSF pliku ADD, zawierającego szablon rozjazdu łukowego, a następnie wybrania tego szablonu dla rozjazdu. Rozjazd taki można umieścić pierwszym torem na łuku, jednak dalej są problemy z podłączeniem drugiego toru. Dodatkową trudnością jest to, że rozjazdy łukowe stosuje się głównie na łukach z przechyłkami, czego nie obsługuje aktualna wersja EU07.EXE (zwrotnice mogą być tylko bez przechyłki). Oczywiście nie istnieją przy tym modele podsypek dla rozjazdów łukowych ani ewentualne generatory takowych.

Automatyczne podziały odcinków

Jeśli odcinkowi toru przy rozjeździe zostanie ustawiony promień, to w razie potrzeby wstawiony będzie nowy odcinek, aby od strony rozjazdu był prosty łączący z łukiem. W szczególnym przypadku, jeśli odcinek łączy dwa rozjazdy pod różnymi kątami, to po ustawieniu mu promienia zostaną dodane dwa odcinki proste (po obu stronach łuku). Funkcjonalność ta nie wymaga przypisania rozjazdów do linii kierunkowych. Wyjątkiem jest sytuacja, jeśli ustawia się promień w odcinku za torem odchylonym rozjazdu, a rozjazd jest przyklejony do kierunkowej — w takim przypadku rozjazd zostanie przesunięty tak, aby tor odchylony przechodził w łuk.

Unikalne nazwy odcinków

Obecnie można wybrać, czy odcinkom bez nazwy mają być nadawane unikalne nazwy. Po wprowadzeniu odcinków izolowanych unikalne nazwy torów mogą nie być już potrzebne. Osobno można uruchomić nadawanie unikalnych nazw odcinkom dróg, również z opcją pozostawienia bez zmiany odcinków niemających nazw.

Usuwanie mikroprzechyłek

Rozjazdy w sceneriach MaSzyny mają ustawione przechyłki 0.1 oraz -0.1 (odpowiada to różnicy wysokości szyn ok. 2.5mm). Nie bardzo wiadomo, jaki to dokładnie daje efekt. Po wyeksportowaniu scenerii do RSF można usunąć te mikroprzechyłki funkcją z menu.

Wstawianie rozjazdu podwójnego

Do menu została dodana opcja wstawiania rozjazdu podwójnego dwustronnego, podobnie jak wcześniej krzyżowego. Wcześniej można było taki rozjazd zbudować z pojedynczych elementów, ale wymagało to znajomości jego szczególnej topologii. Aby zmienić strony zwrotnic, należy przestawić ich punkt 4 na przeciwne strony.

Słupy kotwiące drut

Eksperymentalnie została dodana obsługa słupów kotwiących, w których koniec przęsła znajduje się pod kątem takim, jaki jest jego początek. Rezultat można obejrzeć na przerobionej Linii 61, w Lisowie i Kochanowicach. Wymaga to jeszcze dalszych prac w celu uproszczenia procedury kotwienia drutu. A ogólnie do opracowania jest koncepcja uniezależnienia położenia drutu od miejsca wstawienia słupa, wtedy dopiero będzie można sensownie wieszać sieć w Rainsted.

Zmiany w starterze do MaSzyny

Zmiany dotyczą głównie edytora plików scenerii (SCN/SCM), który przez 6 lat nie był rozwijany po rozpoczęciu prac nad edytorem RSF (a przez to zdegradowany do "Podglądu terenu"). Jednak prace nad scenerią "Linia 61" wymusiły naprawienie i przywrócenie funkcji edycyjnych.

Kilometraż zamiast długości

Ponieważ EU07.EXE nie używa "długości" podanej we wpisie toru, a oblicza długość odcinków we własnym zakresie, można tę wartość wykorzystać lepiej, wpisując tam kilometraż linii kolejowej, podobnie jak to jest robione w RSF. Ze względu na stosowanie umownych układów współrzędnych (np. PUWG 1992) do nieregularnej powierzchni Ziemi oraz inne uproszczenia w układaniu torów, czy stosowanie fałszywego kilometrażu na krótszym torze linii dwutorowej — długości geometryczne odcinków mogą się różnić od naliczonego na gruncie kilometrażu. Obecnie Rainsted nie modyfikuje tej wartości we wpisie toru, w szczególności usunięte zostało wpisywanie tam wyliczonej długości odcinka oraz sprawdzanie zgodności z obliczoną długością (oraz oznaczanie wpisu jako zmodyfikowany). Jeśli kilometraż rośnie od punktu 1 w kierunku punktu 2 odcinka, to liczba jest dodatnia, w przeciwnym przypadku ujemna.

Przyszłe wersje EU07.EXE powinny weryfikować podany kilometraż po połączeniu torów. Jeśli kilometraż danego odcinka po dodaniu jego długości (geometrycznej) jest zbliżony do kilometrażu kolejnego odcinka, to można uznać kilometraż za wiarygodny i ewentualnie obliczyć współczynnik korekcyjny. W pierwszym etapie weryfikacji kilometrażu można też założyć, że wartości mniejsze od 1000 nie są kilometrażem nadającym się do weryfikacji. Możliwe są również sytuacje, że odcinki o podanym kilometrażu będą rozdzielone wieloma odcinkami z liczbami niebędącymi kilometrażem, ale uwzględniając ich długość możliwe będzie naliczenie im prawidłowego kilometrażu. Dzięki temu możliwe będzie wykonanie takich zadań, jak wyjazd pociągu do konkretnego punktu na szlaku, określonego kilometrażem.

Zerowanie wektorów kontrolnych

W pliku z torami wektory kontrolne odcinka zostaną wyzerowane, jeśli punkty kontrolne będą znajdować się w odległości mniejszej niż 1cm od punktów wyliczonych dla odcinka prostego (1/3 i 2/3 długości). Odcinek taki zostanie automatycznie oznaczony jako zmieniony i zapisany wg wzorca, przez co mogą zostać usunięte komentarze znajdujące się wewnątrz wpisu (wpisy niezmodyfikowane zapisywane są jako tekst w postaci identycznej, jak zostały wczytane).

Modyfikacja wysokości torów

Na Podglądzie terenu (edytorze SCN) zostało naprawione przeliczanie wysokości we wpisach torów. Wcześniej zmiana wysokości nie była możliwa.

Podział odcinka na dwa

Został naprawiony podział odcinka na dwa. Wcześniej do nowego odcinka były kopiowane wszystkie dane starego, łącznie ze wskaźnikami, co skutkowało zawieszeniem programu albo generowania nieskończonego pliku przy zapisie. Do nazwy nowego odcinka dodawana jest litera "a", co jest wystarczające jedynie w prostych przypadkach, a przy wielokrotnych podziałach będzie prowadzić do powstawania odcinków o identycznych nazwach.

Ulepszone dowiązanie urządzeń do torów

Oprócz semaforów dowiązywane są także rezonatory SHP, wskaźniki W4 i W5 oraz ograniczenia prędkości (jednokierunkwe). Jeśli urządzenie jest widziane od strony punktu 1 odcinka toru, a nazwa toru jest "none", to zostanie ona zmieniona na nazwę urządzenia. Wiąże się to również z wprowadzeniem koncepcji, że nazwa toru z semaforem jest identyczna jak nazwa semafora, dzięki czemu upraszcza się kwestia wstawienia taboru przed konkretnym semaforem.

Obracanie wektorów normalnych

Przy obracaniu trójkątów terenu konieczne jest również obrócenie ich wektorów normalnych. Przy okazji wektory te są normalizowane (zdarzały się przypadki zbyt długich wektorów normalnych).

Zapamiętywanie komentarzy na końcu wpisu

Dotychczas komentarz umieszczony na końcu wpisu, ale w tej samej linii, był traktowany jako osobny obiekt, a przez to zapisywany następnie w osobnej linii. Obecnie jest on traktowany jako część wpisu i zapisywany w tej samej linii, w której kończy się wpis. Dzięki temu wpis może mieć dwa komentarze: jeden znajdujący się w linii bezpośrednio przed nim, a drugi na jego końcu. Komentarze rozdzielone pustymi liniami są osobnymi obiektami (w przypadku sortowania obiektów w pliku mogą stracić sens swojego położenia).

Usuwanie rozszerzeń tekstur

Po wprowadzeniu dynamicznego ustalania rozszerzenia pliku tekstury w EU07.EXE, jawne podawanie rozszerzenia w plikach scenerii stało się zbędne, a wręcz prowadziło do błędów typu brak tekstury z określonym rozszerzeniem. Wcześniej (kiedy było to niezbędne) Rainsted automatycznie uzupełniał rozszerzenia wg stanu plików, jaki znalazł na dysku podczas wczytywania scenerii. W efekcie plik edytowany na paczce TGA generował błędy na paczce DDS (i odwrotnie). Obecnie rozszerzenia plików tekstur są usuwane.

Usunięta rekurencja przy wczytywaniu include

Pliki zawierające wpisy include były wczytywane przy użyciu rekurencji. W efekcie wczytanie scenerii z dużą liczbą include w jednym pliku prowadziło do przepełnienia stosu i zamknięcia programu. Obecnie ta rekurencja została usunięta.

Poprawione rozpoznawanie komentarzy

Dotychczas parser scenerii wymagał, aby komentarz zaczynający się od // był poprzedzony separatorem (np. spacją albo nową linią). Wpisy kończące się np. na end// były nieprawidłowo rozpoznawane i powodowały zatrzymanie wczytywania scenerii. Obecnie zostały dodane wyjątki na rozpoznawanie takich komentarzy (oczywiście kosztem prędkości wczytywania).

Poprawione rozpoznawanie typu include

Rozbudowane zostało rozpoznawanie typu include po nazwie pliku. W zależności od typu zostało też zróżnicowane wyświetlanie oraz opis tekstowy. Np. dla słupków hektometrowych podawany jest kilometraż, dla sygnalizatorów, rezonatorów, W4 i W5 podawana jest nazwa. Dla tree*.inc rysowany jest okrąg o promieniu podanym jako (p7), a opis nie jest wyświetlany.

Przeliczanie wysokości scenerii

Dodany został algorytm przeliczenia wysokości scenerii zgodnie z podanym profilem w postaci parametrów linii załomu. Funkcjonalność ta ma ograniczone zastosowanie, ponieważ linie załomu zostały wpisane na sztywno na podstawie niwelety profilu pionowego pomiędzy Liswartą a Lublińcem. Niemniej w przyszłości można będzie tym samym algorytmem ustawić profil pionowy na innych sceneriach.

Wybór przęsła sieci do edycji

Po wybraniu zakładki Druty możliwe jest zaznaczenie jednego przęsła sieci trakcyjnej, które podświetla się kolorem żółtym, a na górnym pasku okna pojawia się nazwa pliku oraz numer linii, w których znajduje się wpis. Dzięki temu można łatwiej odnaleźć potrzebne przęsło w pliku tekstowym. Przęsło można także usunąć, jednak aby dało się następnie zapisać plik, musi on być otwarty jako główny (obecnie zapisywany jest tylko główny plik, zmiany w plikach dołączonych jako include są tracone).

Poprawione wyświetlanie kodów komórek

Ze względu na nieparzystość funkcji modulo (dla ujemnych liczb daje ujemny wynik) kody komórek przeskakiwały o jedną kratkę w zależności o tego, czy początek OXZ scenerii przecinał lewą oraz górną krawędź ekranu. Zostało to naprawione i zsynchronizowane z wyświetlaniem w edytorze RSF, gdzie podobne zjawisko zostało naprawione dużo wcześniej.

Naprawione zaznaczanie obiektów

Z jakiegoś wcześniejszego etapu prac pozostały zaokrąglania współrzędnych wskaźnika myszy, które utrudniały trafienie w bardzo małe obiekty (krótkie tory, małe trójkąty) — trzeba było szukać miejsca kliknięcia obok, aby taki obiekt podświetlił się. Zaokrąglenia te zostały usunięte.

Skracanie toru o połowę

Dotychczas można było przestawić koniec odcinka toru w dowolne miejsce, jednak taka operacja mogła zaburzyć współliniowość odcinków. Wady tej nie ma skracanie odcinka o połowę. Można wybrać, czy odcinek ma być skrócony o połowę od strony punktu 1, czy od strony punktu 2. Sąsiedni odcinek zostanie odpowiednio wydłużony. Można również użyć tej funkcji do naprawy współliniowości odcinków poprzez maksymalne skrócenie jednego, a następnie pojedyncze skrócenie odcinka sąsiedniego. Działa to dobrze tylko dla odcinków prostych, dla łuków rezultat może nie być zgodny z oczekiwaniami.

Funkcjonalność ta została wykorzystana do uporządkowania torów po skróceniu stacji Lubliniec o 300m. Ponieważ tory z wycinanego fragmentu nie zostały wyrzucone (ze względu na działanie misji i w odróżnieniu od przęseł sieci trakcyjnej) — po tym skróceniu wiele odcinków zachodząc na siebie tworzyło nieczytelny gąszcz.

Odwracanie torów z przypisanym sygnalizatorem

Ponieważ wprowadzana jest koncepcja, zgodnie z którą tor obok sygnalizatora ma mieć taką nazwę jak sygnalizator, aby możliwe było wstawianie taboru przed nim, wszystkie odczyty sygnalizatorów muszą być realizowane przez event2. Ponieważ w sceneriach bywa różnie, została dodana funkcja odwracająca tory z przypisanym sygnalizatorem. Funkcja uwzględnia zamianę numeracji eventów oraz zmianę znaku przechyłki. Należy jednak bardzo uważać na eventy przypisane do toru poprzez jego nazwę. Konieczność dokonania ręcznych poprawek wystąpi w sytuacji, gdy odcinek toru jest używany jako przejściowy pomiędzy różnymi profilami podsypki oraz jeśli ma przypisany sygnalizator dla obu kierunków (nie ma automatycznego dzielenia na dwa).

Edycja parametrów hamulca

Edytor składów został rozbudowany o ustawienia parametrów hamulców. Parametry te są wczytywane z pliku scenerii, jak również zapisywane do pliku tymczasowego.

Rozpakowanie archiwum wrzuconego w okno

Jeśli w okno Rainsted zostanie przeciągnięty plik o rozszerzeniu RAR, ZIP albo 7Z, to takie archiwum zostanie wypakowane do katalogu, z którego uruchomiono Rainsted.

Zmiany w serwerze ruchu

Serwer ruchu jest tymczasowo unieruchomiony i wymaga dalszych poprawek i testów. Prace zostały skoncentrowane na doprowadzeniu scenerii "Linia 61" (od Stradomia do Ozimka) do stanu optymalnego do współpracy z serwerem ruchu, w szczególności w zakresie nazewnictwa sygnalizatorów, rozjazdów, odcinków torów i odcinków izolowanych, a także poprawionej budowy rozjazdów krzyżowych. Wcześniej panowała ogromna dowolność w zakresie tego, co ma się jak nazywać. Prace nad serwerem ruchu zostaną wznowione po dopracowaniu koncepcyjnym scenerii.

Inne

Pobieranie 7-Zip

Jeśli nie zostanie wykryty archwizer 7-Zip, pojawia się pytanie o jego pobranie z Internetu. Zaktualizowany został link do pobrania 7-Zip.


Rok Rainsted - wersje
2017 124125 • ...
2016 114115116117118119120121122123
2015 108 (MaSzyna 15.02)109 (MaSzyna 15.04)110111112113
2014 107
2013 102 (MaSzyna 01.13)103104105 (MaSzyna 08.13)106
2012 100 (PC2011)101
2011 98 (PC2010)99
2010 929394959697
2009 74 • ... • 91
2008 37 • ... • 73
2007 ... • 36