Wersja/19.7.145

Z Rainsted
Skocz do: nawigacji, wyszukiwania

Wersja 19.7.145.14803 została opublikowana w dniu 2019-08-01.

Zobacz też zmiany w poprzedniej wersji 144.

Zmiany w edytorze RSF

Wyłączenie automatycznego wyliczania przechyłek

W parametrach łuku można wyłączyć automatyczne wpisywanie przechyłek do torów objętych przez obiekt parametrów łuku. Dzięki temu możliwe jest ręczne wpisywanie dowolnych przechyłek w odcinki łuku. Przy okazji została naprawiona ręczna edycja przechyłek w odcinkach — kopiowanie przechyłki w punkcie 2 do sąsiedniego odcinka działało nieprawidłowo.

Usunięte błędne powiązanie niwelet

Po dodaniu odcinka niwelety, gdy zaznaczony jest odcinek toru z już przypisaną niweletą, kopiowała się ona jako nadrzędna odcinka niwelety, co prowadziło do problemów z sortowaniem poprzeczek. Obecnie takowe powiązanie jest usuwane przy dodawaniu, jak również wszelkie tego typu powiązania zostaną usunięte przy sortowaniu poprzeczek.

Poprawione dodawanie nowego odcinka niwelety

Nowy odcinek niwelety, np. powstający przez podział na dwa, będzie miał usuniętą blokadę Id. Blokadę Id powinien mieć tylko ten odcinek, który jest przyklejony do poprzeczki z blokadą XY. Dotychczas było możliwe nieumyślne stworzenie niwelety, której wszystkie odcinki miały niepotrzebną blokadę Id, przez co nie działało prawidłowo naliczanie kilometrażu wzdłuż niej, a przyczyna była trudna do zlokalizowania.

Poprawione przygotowanie trójkątów terenu

Podczas wczytywania pliku RSF dla trójkątów powinna być obliczana maksymalna odległość wierzchołka od środka (do pola Id, co nie jest najlepszym rozwiązaniem). Jest ona używana do określenia, czy dany trójkąt jest istotny przy wyznaczeniu wysokości w jakimś punkcie. Mechanizm ten nie działał prawidłowo, przez co w niektórych przypadkach mogły być problemy z ustaleniem wysokości terenu, np. dla wyliczania przekrojów poprzecznych. Zostało to naprawione. Wykonywanie tej operacji podczas wczytywania nie jest zbyt optymalnym miejscem i w przyszłości zostanie przeniesione.

Poprawione łączenie plików

Sklejanie plików ze sobą wymagało, aby miały tę samą definicję obszaru (w użyciu są obecnie dwa: PUWG1992 dla polskich scenerii realistycznych albo EU07-424 dla scenerii fikcyjnych). Przeliczenie drugiego pliku do lokalnego środka układu ustawionego w pierwszym wymaga, aby nazwa obszaru była w obu taka sama. Obecnie doklejenie pliku o innej definicji obszaru skoryguje powiązania pomiędzy obiektami, jednak nie przesunie obiektów o wektor.

Poprawiony eksport znaków drogowych

Znaki drogowe w scenerii Tarniowo2 były wstawione jako modele, gdyż nie było wtedy INC. Po zmianach w eksporcie semaforów nie było to testowane. Obecne pliki INC znaków drogowych mają w większości obraz znaku jako teksturę, podawaną w parametrze (p6). W związku z tym znaki drogowe są obsługiwane jako wyjątek (dotyczy warstwy sygnałów o kodzie obiektu 0x95). Pliki INC znaków, użyte w Tarniowo2 mają teksturę jako (p1), co nie jest obsługiwane. Testowo zostały wstawione znaki poprzez INC w okolicy jednego z przejazdów na linii 61.

Lepsza obsługa szerokości drogi

Jeśli odcinek drogi zmienia jej szerokość, to dodawanie nowych odcinków będzie zachowywało szerokość od wybranej strony. Dotychczas szerokości były bezpośrednio kopiowane do nowych odcinków, przez co wymagane było potem ich poprawianie. Również w przypadku podziału odcinka na dwa szerokość w miejscu łączenia zostanie wyliczona jako średnia z szerokości na końcach. W mniejszym stopniu dotyczy to także torów (praktycznie nie używa się poszerzenia torów) i rzek (koncepcja tworzenia rzek jest mocno niedopracowana).

Poprawki dotyczące samo-kierunkowych

Próba nadania odcinkowi samo-kierunkowemu innej odległości od linii kierunkowej, którą sam tworzył, kończyła się przepełnieniem stosu i zakończeniem działania Rainsted. Obecnie zostały wprowadzone blokady, które mają zapobiegać takiemu błędowi. Rozważane jest ograniczenie użycia odcinków samo-kierunkowych — do linii kierunkowej, tworzonej przez odcinek samo-kierunkowy, będzie można przypisać jedynie sąsiadujące z nim i jedynie w odległości 0, a próba wyjścia poza te ograniczenia będzie sugerowała dodanie linii kierunkowej (z opcją automatycznego wstawienia).

Wczytywanie punktów fundamentów z CityGML

Do menu NMT została dodana operacja wczytująca punkty fundamentów z pliku CityGML. Plik jest wybierany w sposób analogiczny do edytora SCN, jedynie punkty są bezpośrednio wstawiane do RSF, a nie zapisywane w osobnym pliku. Punkty fundamentów można wykorzystać do zagęszczenia siatki terenu. Z uwagi na dosyć uciążliwe wstawianie trójkątów przy wielu wierzchołkach, możliwe jest wstawianie fundamentów od razu z trójkątami jako opcja zalecana (domyślnie włączone). W najbliższym czasie będzie testowane współdziałanie punktów NMT-100 z punktami CityGML. Próbnie ustawiony jest import CityGML do warstw 0x11 i 0x31 (NMT-100 wykorzystuje warstwy 0x10 i 0x30). Planowane jest używanie różnych warstw do punktów różnego pochodzenia, ale nie ma jeszcze sprecyzowanej koncepcji. Powtórzenie wczytywania CityGML może doprowadzić do zdublowania trójkątów w fundamentach (obecność punktów jest sprawdzana).

Import z UMP do wszystkich komórek

W związku z zastojem w zakresie podziału sieci kolejowej Polski na komórki wprowadzone zostało domyślne importowanie do wszystkich komórek. W razie potrzeby można to wyłączyć i importować tylko do wskazanej. Na ogół importowanie torów z UMP robi się głównie w celu automatycznego pobrania map podkładowych (tory w UMP nadal mają niską jakość — lepiej wyglądają w OSM).

Domyślne parametry szyny i toru

Przy tworzeniu nowego pliku RSF dodawane były podstawowe tekstury szyny i podsypki, jednak w wersji sprzed przeniesienia parametrów z toru do tekstury. W efekcie eksport scenerii do MaSzyny generował błędne dane, jeśli się nie poprawiło ręcznie parametrów. Obecnie w teksturze szyny uzupełniany jest współczynnik tarcia oraz wysokość szyny. Przy okazji poprawione jest tworzenie kopii opisu pliku — do kopii przenoszone są wszystkie parametry. Z kolei przy dodawaniu nowego toru nie były ustawiane domyślne tekstury ani prędkość — obecnie przeszukiwany jest plik RSF i ustawiane są pierwsze znalezione. Tekstury są wyszukiwane w dwóch etapach: w pierwszym są sprawdzane tekstury powiązane z daną warstwą (np. tekstura szyny z kodem 0x2040) i jeśli żadne nie zostaną znalezione, to dopiero w drugim etapie sprawdzane są tekstury wspólne dla warstw (np. tekstura szyny z kodem 0x2004). Dla przypomnienia: tory, drogi oraz rzeki mają po 16 warstw — każda warstwa może mieć swoje odrębne tekstury oraz mogą być tekstury wspólne dla wszystkich 16 warstw. W przyszłości do każdej warstwy trajektorii będzie też można ustawić odrębne warstwy sygnalizacji i słupów, obecnie jedynie są odrębne warstwy sygnalizacji dla torów (0x90) i dróg (0x95).

Ulepszone przestawianie kierunkowej

Jeśli do kierunkowej nie są przyklejone żadne tory, to nie pojawi się pytanie, czy przemieszczać je razem z kierunkową. Dzięki temu dodawanie nowych kierunkowych będzie mniej uciążliwe. Ponadto z zakładki Linie można zmienić nazwę również linii kierunkowej, dotychczas zmiana nazwy działała tylko dla trajektorii.

Ograniczone wyrzuty łuku

W przypadku ustawiania promienia dla łuku (wpisanego w kąt), którego przyległe odcinki proste kończyły się przed wierzchołkiem kąta, źle była liczona odległość punktów styczności od wierzchołka kąta, skutkując wyrzuceniem łuku daleko od wierzchołka. Obecnie w takiej sytuacji odcinki nie zostaną zmodyfikowane, jedynie wyświetlą się trzy punkty RGB, obrazujące punkty styczności (R i B) oraz wierzchołek (G). Prowadzone będą dalsze testy w celu określenia, czy takie rozwiązanie jest wystarczające, czy powinno działać inaczej. W takim przypadku nie ma dobrego rozwiązania — automatyczne przemieszczenie prostych mogłoby nie być zgodne z zamierzeniami użytkownika.

Przyklejanie kozła na końcu odcinka

Do menu Punktowy została dodana opcja przyklejenia wskazanego obiektu do końca toru. W praktyce używa się to do wstawiania kozłów (ewentualnie trzeba by przetestować z mostami). Poprawione również zostało kopiowanie takiego obiektu na inny tor przez [Dodaj nowy] z zakładki Inne.

Wyszukiwarka błędów: sprawdzanie plików dla sygnałów

Podczas edycji może się zdarzyć tak, że dodany zostaje sygnał, a nie ma przypisanego pliku (INC/T3D), albo zmieniany jest typ sygnału bez zmiany pliku. Obecnie do wyszukiwarki błędów dodane jest sprawdzenie, czy sygnał ma przypisany plik i czy typ pliku jest zgodny z typem sygnału. Podstawowy podział sygnałów na typy obejmuje sygnały "ozdobne" (nie wpływające na pojazdy), wykonujące akcję (sygnał dźwiękowy, rezonator SHP), tarcze ostrzegawcze, sygnalizatory zatrzymujące (semafory i tarcze manewrowe) oraz sygnalizatory SBL. Pozostałe typy nie są określone precyzyjnie i ich znaczenie może się zmienić w przyszłości. W zależności od typu uzyskuje się różne powiązania pomiędzy sygnałami (np. tarczę ostrzegawczą można powiązać z semaforem), osobne są też zestawy plików INC oraz tekstur dla każdego typu.

Wyszukiwarka błędów: kolizja słupków z torami

Dla poprzeczek (przekrojów poprzecznych) posiadających słupki hektometrowe sprawdzane jest, czy słupek nie znajduje się zbyt blisko toru (co najmniej 1.55m od osi). Jest to wstępna wersja i będzie jeszcze ulepszana. Planowane jest ujednolicenie w zakresie określenia wysokości słupka i wtedy sprawdzanie będzie mogło być rozszerzone o dopuszczenie słupków w dolnej skrajni (czyli wysoki słupek co najmniej 2.5m od toru, a niski będzie mógł być bliżej).

Zmiany w starterze do MaSzyny

Przeliczanie trójkątów do profilu pionowego

Po wybraniu opcji z menu Trójkąty edytora SCN możliwe jest przeliczenie wierzchołków wybranego trójkąta na wysokość wyliczoną z profilu pionowego, obsługiwanego przez edytor SCN. Modyfikowane są również trójkąty sąsiednie, dzięki czemu taka edycja nie pozostawia dziur. Funkcjonalność przetestowana na terenie pod stacją w Herby Stare. Obecnie profil jest wpisany na stałe (dla linii 61 od Stradomia do Herbów Starych) i póki co nie ma możliwości wczytania innego profilu — w razie potrzeby możliwa jest rozbudowa edytora o wczytanie profilu z pliku bądź przesłanie go z edytora RSF. Na stałe jest również wpisane obniżenie względem główki szyny. Obsługa profilu w SCN nie uwzględnia prawidłowego pochylenia na łuku — tory pomiędzy załomami leżą na płaszczyźnie wyznaczonej przez punkty załomu.

Obliczenie kąta dla pionowego trójkąta

Podobnie jak dla odcinków trajektorii, możliwe teraz jest również obliczenie kąta ściany (pionowego trójkąta). Kąt jest w przedziale <-90,90), licząc od osi OX- w stronę OZ+ (jest to matematyczny kąt skierowany, a nie azymut). Kąt jest liczony z wektora normalnego trójkąta (wektor normalny jest liczony, nie jest używany ten podany jawnie), tak więc dla trójkątów pochyłych zostanie wyznaczony kąt maksymalnego spadku. Obliczanie kąta ma na celu obrót brył CityGML, aby uzyskać ścianę równoległą do osi OX albo OZ, co pozwoli łatwiej użyć bryłę w innym miejscu.

Naprawione wyświetlanie skrzyżowań

Dotychczas ze skrzyżowania była wyświetlana tylko pierwsza linia. Obecnie wyświetlana jest też druga.

Blokada prostoliniowości odcinków

Przy przestawianiu końca odcinka prostego (ma wyzerowane wektory kontrolne), jeśli jest on połączony z innym prostym, punkt połączenia zostanie przeliczony w planie na linię utworzoną przez przeciwległe punkty odcinków. Ma to pomóc przy edycji końców dróg w celu dostosowania do trójkątów terenu. Nie są przeliczane wysokości. Blokadę można wyłączyć z menu Linie, wtedy punkt połączenia odcinków będzie można umieścić w dowolnym miejscu. Po edycji dróg zalecane jest przeliczenie wysokości np. korektorem Mariusza, edycję torów lepiej wykonać w edytorze RSF, z użyciem profilu pionowego, ustawionego niweletą. Na przyszłość planowane jest obliczanie wysokości terenu.

Zmiana w zakresie rysowania łuków na niebiesko

Rysowanie łuków kolorem niebieskim ma teraz wyższy priorytet niż zmiana kolorów do wyświetlania na tle map. Dotychczas włączenie podglądu mapy nie dawało informacji, które odcinki są proste, a które łukami (tzn. mają niezerowe wektory kontrolne). Ponadto na niebiesko wyświetlane są też łuki dróg.

Automat do odcinków izolowanych przy rozjazdach

Analogicznie do edytora RSF została dodana do menu Operacje opcja izolowania odcinków torów przy rozjazdach. Wymóg nazewnictwa rozjazdów jest taki sam, jak w edytorze RSF: dwu albo trzyliterowy skrót posterunku, pisany z wielkiej litery, a po znaku podkreślenia numer rozjazdu. Dodatkowo wszystkie odcinki zaizolowane grupowo będą dostawać nazwę izolacji rozjazdu z sąsiedniego odcinka. Wykonana automatycznie izolacja może wymagać ręcznych korekt, w szczególności jeśli rozjazdy są połączone jednym odcinkiem toru, albo gdy długi styka się bezpośrednio z rozjazdem. Również mogą powstać dziury w izolacji, jeśli pomiędzy rozjazdami jest kilka odcinków toru, a nie było to wcześniej zaizolowane grupowo.

Automatyczne naprawianie zwrotu wektora kontrolnego

Zwrot pierwszego wektora kontrolnego powinien być taki sam, jak zwrot wektora łączącego punkty, a drugiego wektora — przeciwny. Badany jest iloczyn skalarny i w razie potrzeby są zmieniane znaki współrzędnych wektora na przeciwne. W pewnych przypadkach naprawia to skutecznie odcinki, w innych nie. Z praktyki można powiedzieć, że odcinki z wektorami kontrolnymi na zewnątrz mają praktycznie zerowe zastosowanie do symulacji — można sobie wyobrazić pętlę tramwajową ze zwrotnicy i jednego odcinka, ale raczej będzie to kuriozum. Odcinki z wektorami kontrolnymi na zewnątrz będą traktowane jako błędne (np. odcinek łuku o kącie większym niż 180° będzie musiał być podzielony na dwa, aby kąt nie przekroczył 180°).

Skok do współrzędnych WGS84

Z edytora RSF zostały przeniesione algorytmy wyświetlania i rozpoznawania współrzędnych geograficznych WGS84. Obecnie wyświetlane są w osobnym polu (były zamiast współrzędnej pionowej). Można też wkleić czy wpisać współrzędne, a środek ekranu edycyjnego zostanie przemieszczony.

Zmiany w instalatorze dodatków

Wyświetlanie plików do usunięcia

Po sprawdzeniu stanu instalacji wypełniana jest również lista plików do usunięcia, wg danych w skrypcie instalacyjnym. Jeśli są pliki do usunięcia, to zakończenie instalacji przełącza na zakładkę z listą plików do usunięcia. Obecnie pliki nie są usuwane automatycznie — warunkiem koniecznym automatycznego usuwania w przyszłości będzie zgodność długości i CRC32 pliku z danymi podanymi w skrypcie.

Dla przypomnienia: lista plików do usunięcia jest podobna do listy plików do sprawdzenia, jedynie jest poprzedzona nagłówkiem sekcji [DELETE] zamiast [VERIFY], a zamiast nazwy paczki z plikiem należy podać powód usunięcia:

  • renamed — zawartość pliku jest używana pod inną nazwą, plik z poprzednią nazwą niepotrzebny,
  • garbage — plik niepotrzebnie zaplątany do paczki, np. jakaś kopia robocza,
  • abandoned — plik używany przez wcześniejsze wersje dodatku, np. zawartość dołączona do innego pliku,
  • moved: — plik przemieszczony do innego podkatalogu bez zmiany nazwy i zawartości, po dwukropku podać położenie.

Pokazywanie paczki dla wybranego pliku

W przypadku instalacji, której skrypt składa stan docelowy z wielu paczek, po kliknięciu na listę niezgodnych i brakujących plików zostanie pokazane po prawej stronie, z której paczki powinien być wypakowany plik. Funkcjonalność powstała jako przydatna do weryfikowania poprawności skryptów instalacyjnych.

Przywracanie plikom daty podanej w skrypcie

Jeśli dla weryfikowanego pliku zgadza się długość oraz CRC32, to plikowi zostanie ustawiona data podana w skrypcie. Ze względu na zmiany czasu na zimowy i letni oraz niedopracowania obsługi czasu w Windows oraz archiwizerach, czas ostatniej modyfikacji pliku może się różnić o godzinę, co przy przepakowywaniu pliku w różnych porach roku może się zwielokrotnić do kilku godzin. Różnice 1h oraz 2h są traktowane jako zgodność czasu, podobnie niedokładność w zakresie ±2s. Prawdopodobieństwo zgodności CRC32 plików o tej samej długości jest 307 razy mniejsze od szansy trafienia 6 liczb na 6 z 49 w Lotto. Dla plików tekstowych mnoży się dodatkowo przez prawdopodobieństwo zachowania tej samej długości (tekstury często zachowują tę samą długość przy modyfikacji, pliki scenerii rzadko).

Inne

Zapamiętanie wybranej ortofotomapy

Zarówno w edytorze RSF, jak i SCN wybranie warstwy ortofotomapy 4px spowoduje jej zapisanie do RAINSTED.INI, dzięki czemu wybrana ortofotomapa będzie domyślną przy kolejnym uruchomieniu. Dotychczas zawsze była wybierana domyślnie warstwa pl4000px.

Generator wpisów area

Do generatora skryptów sterujących dodany został moduł generujący wpisy area na podstawie listy izolacji. Obecnie zalecane jest izolowanie pojedynczych rozjazdów i grupowanie ich w skrypcie sterującym.

Skrypty instalacyjne a nazwy z przecinkami

Użycie przecinków w nazwach tekstur nie było dobrym rozwiązaniem wobec przyjęcia formatu CSV do analizowania zawartości paczek. W związku z nowszymi wariantami plików z przecinkami zaszła potrzeba poprawienia generatora skryptów instalacyjnych. Obecnie sprawdzane dodatkowo jest, czy pomiędzy pierwszym a drugim znalezionym przecinkiem nie znajduje się kropka (powinna tam być długość pliku, więc jedynie cyfry). W razie wykrycia kropki pomiędzy przecinkami, drugi z nich jest zamieniany na znak =, potrzebny w skryptach instalacyjnych.

Docelowo rozważane jest generowanie plików CSV zawierających ciąg ",=," (znak równości pomiędzy przecinkami), dzięki czemu będzie jednoznacznie wiadomo, gdzie kończy się nazwa, z zachowaniem formatu CSV. Alternatywnym rozwiązaniem mogłoby być użycie cudzysłowów dla nazw plików, co z kolei wymaga dodatkowych funkcji rozpoznających i usuwających cudzysłowy. Wobec niewielkiego zainteresowania i zastoju w dodatkach prace nad instalatorem nie mają obecnie dużego priorytetu.


Rok Rainsted - wersje
2019 141142 (MaSzyna 19.04)143144145146147148 • ...
2018 132133134135136137138139140
2017 124125126127128129130131
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