Autor Wątek:  Generator rozkładów jazdy  (Przeczytany 982 razy)

0 użytkowników i 2 Gości przegląda ten wątek.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Generator rozkładów jazdy
« dnia: 12 Października 2021, 20:10:54 »
Generator ten powstał w celu ułatwienia procedury tworzenia/edycji rozkładów jazdy. Wypełniamy niezbędne informacje, a sam program zajmuje się resztą i nic nie musimy ręcznie majstrować w plikach .txt dbając jednocześnie o to, aby szablon się nie rozjechał. Generator napisany został stricte pod windowsa, na innych systemach może nie działać lub działać błędnie (na pewno tak jest).

Co robi program?
- Sam dostosowuje wszelkie rozmiary i spacje, pilnując przy tym aby szablon zachował swój rozmiar
- Sam oblicza czas przejazdu między stacjami na podstawie ostatniego czasu odjazdu i aktualnego czasu przyjazdu
- Dba o dobre wprowadzenie danych - Co to znaczy?; Jeśli użytkownik wpisując np. "Wymagany % ciężaru hamującego" zapomni dopisać znaczek procenta "%" to program zrobi to za niego. Tak samo zamienia np. rodzaj i numer pociągu na wielkie litery,
- Sam pobiera relację pociągu na podstawie pierwszej i ostatniej stacji
- Sam rozpoznaje, że VMAX bądź kanał radiowy się nie zmienia i pozostaje taki sam, co za tym idzie nie musimy wpisywać ciągle tej samej prędkości czy kanału radiowego, możemy pozostawić puste.
- Robi sporą robotę za nas.

Sam program nie jest jakiś ładny, nie ma pięknego UI na miarę 2021 roku, aczkolwiek nie ma wyglądać tylko działać. Program ten nie jest w wersji finalnej - W przyszłej aktualizacji dojdzie możliwość wczytywania rozkładów jazdy w formacie .txt i ich edycji, na chwilę obecną możemy jedynie tworzyć nowe rozkłady. Edytować wiersze możemy poprzez dwuklik na interesującym nas wierszu.

Sam program wygląda następująco

Dla przykładu przedstawiam zestawienie 2 rozkładów jazdy, jeden oryginalny a drugi wygenerowany z powyższego screena. Można zauważyć drobne różnice m.in w odstępach, ale to myślę jedynie drobnostki stylistyczne. Sam program był przeze mnie testowany generując raptem 2 proste rozkłady, stąd też liczę na Wasze testy.

Download: https://eu07.pl/userfiles/22809/rjgen.exe
Skan: https://www.virustotal.com/gui/file/edb26d9cee0d806f27b495e168bdab7471b22eea4fcb5b7b1ee27be112a3b856?nocache=1

Update v 1.04

Changelog:
- Dodano wsparcie dla nietypowych rozdzielczości typu 1024x768. Niższe rozdzielczości jak 800x600, 640x480 są nie obsługiwane

Jeśli zauważyłeś/aś błąd to proszę zgłoś go w tym temacie
« Ostatnia zmiana: 17 Października 2021, 14:30:01 wysłana przez tor424 »
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering

Offline Kogut

  • Betatester
  • Wiadomości: 125
    • Zobacz profil
  • Otrzymane polubienia: 85
Odp: Generator rozkładów jazdy
« Odpowiedź #1 dnia: 12 Października 2021, 20:25:22 »
W ramach dodatkowej idiotoodporności proponuję automatyczną zamianę znaku ":" rozdzielającego godziny i minuty przyjazdu i odjazdu na znak ".", bowiem dwukropek nie jest obsługiwany przez symulator, a może być wykorzystywany przez osoby niedoświadczone jako separator poszczególnych części godziny.
Pozdrawiam!
Arkusz z prowadzonymi pracami, by nie dublować roboty: https://docs.google.com/spreadsheets/d/1Un0v7Ua6weVfif-VoZpKfw_eIP26TPGkmZMm8KYT6QE/edit?usp=sharing

Offline JAN21

  • Deweloper
  • Wiadomości: 269
  • Spec od budowy scenerii
    • Zobacz profil
  • Otrzymane polubienia: 589
Odp: Generator rozkładów jazdy
« Odpowiedź #2 dnia: 12 Października 2021, 20:33:20 »
Cytuj
- Sam pobiera relację pociągu na podstawie pierwszej i ostatniej stacji
Proponował bym dodać możliwość wprowadzania ręcznie relacji pociągu. W większości pociągów dalekobieżnych i niektórych towarowych relacja jest o wiele dłuższa niż to co mamy w rozkładzie Maszynowym.
A sam programik wygląda spoko. Przyda się na pewno przy pisaniu scenariuszy na L61.
Na codzień grzebie przy Alfach i reszcie Włoszczyzny, po godzinach buduję scenerie.

Aktualne projekty:  Linia 61 Cz. Stradom - Koniecpol: 80%, Koniecpol - Małogoszcz: 70%, Małogoszcz- Kielce: 20% + Linia 1 Cz. Os - Zawiercie: 30%.

Offline matek123

  • Moderator
  • Wiadomości: 4717
    • Zobacz profil
  • Otrzymane polubienia: 1290
Odp: Generator rozkładów jazdy
« Odpowiedź #3 dnia: 12 Października 2021, 20:34:36 »
Ewentualnie proponowałbym rozbić na dwa pola. Jedno na godziny, a drugie na minuty. Czy dałoby radę (np w pliku txt) zrobić bazę wiedzy dla programu? Np: Nazwa scenerii, nazwa stacji, kilometraż stacji, parametry stacji, prędkość drogowa. Po wybraniu scenerii z rozwijanej listy można by było wklepać posterunek. Dodatkowo przydałoby się pole vmax. Jeżeli Vmax < Vd wtedy program wprowadzałby Vmax.
Poszukuję zdjęć na tekstury pociągów sieciowych. Szczególnie platform z pomostami.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Odp: Generator rozkładów jazdy
« Odpowiedź #4 dnia: 12 Października 2021, 21:07:46 »
W ramach dodatkowej idiotoodporności proponuję automatyczną zamianę znaku ":" rozdzielającego godziny i minuty przyjazdu i odjazdu na znak ".", bowiem dwukropek nie jest obsługiwany przez symulator, a może być wykorzystywany przez osoby niedoświadczone jako separator poszczególnych części godziny.

Przyznam szczerze, że sam nie zauważyłem iż tam jest "." zamiast ":" - Poprawione, od teraz generator wstawia kropkę zamiast dwukropka. W programie widoczny jest dwukropek ze względu na sposób obliczania czasu przejazdu (nie działa z ".") - Natomiast wynik wyjściowy jest z "." :)

Cytuj
- Sam pobiera relację pociągu na podstawie pierwszej i ostatniej stacji
Proponował bym dodać możliwość wprowadzania ręcznie relacji pociągu. W większości pociągów dalekobieżnych i niektórych towarowych relacja jest o wiele dłuższa niż to co mamy w rozkładzie Maszynowym.
A sam programik wygląda spoko. Przyda się na pewno przy pisaniu scenariuszy na L61.

Prawdę mówiąc, nie spotkałem się z takim rozkładem w MaSzynie, aby była dłuższa relacja niż w MaSzynowym rozkładzie. No ale skoro tak jest, to dodałem taką możliwość.

Ewentualnie proponowałbym rozbić na dwa pola. Jedno na godziny, a drugie na minuty. Czy dałoby radę (np w pliku txt) zrobić bazę wiedzy dla programu? Np: Nazwa scenerii, nazwa stacji, kilometraż stacji, parametry stacji, prędkość drogowa. Po wybraniu scenerii z rozwijanej listy można by było wklepać posterunek. Dodatkowo przydałoby się pole vmax. Jeżeli Vmax < Vd wtedy program wprowadzałby Vmax.

Nie bardzo rozumiem co masz na myśli - Do czego mogłaby służyć taka baza? Nie bardzo rozumiem ten zamysł z listą, bazą i "vmax < vd" - Opisz to jaśniej jakbyś mógł :)

Changelog:
- Poprawka: Zamiast ":" generator teraz wstawia "." specjalnie pod potrzeby symulatora (W programie widoczny jest ":")
- Dodana możliwość wprowadzenia relacji pociągu samodzielnie;  W tym celu zaznaczamy "Własna relacja pociągu" i wprowadzamy w polu pod spodem relację w formacie Skąd-Dokąd np. Dębica-Sandomierz
- Drobne poprawki kosemtyczne
« Ostatnia zmiana: 14 Października 2021, 21:34:57 wysłana przez tor424 »
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering

Offline matek123

  • Moderator
  • Wiadomości: 4717
    • Zobacz profil
  • Otrzymane polubienia: 1290
Odp: Generator rozkładów jazdy
« Odpowiedź #5 dnia: 12 Października 2021, 22:41:19 »
Ogólnie chodzi o to, że człowiek jest leniwy/myli się. Pomyślałem nad tym, że jest baza punktów np
Quark Wielki_Kac 19.5 R1,OT,SS,H 100
Quark Dejawy_Kopalnia 30.0 R1,OT,SS,H 100
Bałtyk BAŁTYK_GŁÓWNY 0.0 R1,H,L,RT,SS 100
Jeżeli zdefiniowana prędkość maksymalna pociągu będzie niższa niż prędkość drogowa, to wtedy program by wstawił do rozkładu prędkość maksymalną, zamiast pobranej z bazy drogowej.
Poszukuję zdjęć na tekstury pociągów sieciowych. Szczególnie platform z pomostami.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Odp: Generator rozkładów jazdy
« Odpowiedź #6 dnia: 12 Października 2021, 22:57:50 »
Ogólnie chodzi o to, że człowiek jest leniwy/myli się. Pomyślałem nad tym, że jest baza punktów np
Quark Wielki_Kac 19.5 R1,OT,SS,H 100
Quark Dejawy_Kopalnia 30.0 R1,OT,SS,H 100
Bałtyk BAŁTYK_GŁÓWNY 0.0 R1,H,L,RT,SS 100
Jeżeli zdefiniowana prędkość maksymalna pociągu będzie niższa niż prędkość drogowa, to wtedy program by wstawił do rozkładu prędkość maksymalną, zamiast pobranej z bazy drogowej.

Zabij mnie, ale... niestety, absolutnie w dalszym ciągu nie mam zielonego pojęcia o co chodzi - Czym jest więc prędkość drogowa, skąd ją wziąć? W rozkładzie definiujemy tylko prędkość maksymalną na danym odcinku z tego co zauważyłem (i wprowadza ją sam user tworzący rozkład). Nadal też nie rozumiem czym miała by być taka baza i jakie byłoby jej zadanie. Rozumiem, że jest spis stacji przypisany do scenerii, ale nie rozumiem o co w tym wszystkim chodzi. Da się to jakoś jeszcze prościej wytłumaczyć? Najlepiej możliwie jak najprościej się da :/
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering

Offline youBy

  • Deweloper
  • Wiadomości: 6010
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 580
Odp:  Generator rozkładów jazdy
« Odpowiedź #7 dnia: 12 Października 2021, 23:42:26 »
Matek123 chyba chce, żebyś zaczął budować maszynowego SKRJ do generowania rozkładów :) Dla każdej scenerii musiałaby istnieć baza/lista/wykaz, gdzie byłyby zapisane:
- wszystkie stacje, przystanki itp.
- dozwolone prędkości drogowe (oznaczone wskaźnikami W27 na scenerii) - od kilometra do kilometra dla obu torów
Na tej podstawie można by te prędkości maksymalne, które są teraz wpisywane ręcznie, zaczytywać z automatu. Przykład - na L053 wpisuję dla pociągu Vmax 120, wtedy: od Sandomierza do Skwarek mam 120, od Skwarek do Żernik mam 70, od Żernik do Rudawy włącznie mam 120 (mimo że kawałkiem można tam jechać 140). Gdybym wziął skład z EP09 (Vmax 160), to od Żernik by mi się już pojawiło rzeczone 140.

A gdyby do tej bazy dopisać jeszcze:
- przebieg linii kolejowej w planie (łuki) i profilu (pochylenia) od kilometra do kilometra
- wszelakie ograniczenia prędkości (od kilometra do kilometra)
to można by było zacząć rozkłady generować półautomatycznie poprzez przeliczenie czasu jazdy...
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.

Offline MaciejM

  • Wiadomości: 3951
  • ( ͡° ͜ʖ ͡°)
    • Zobacz profil
  • Otrzymane polubienia: 879
Odp: Generator rozkładów jazdy
« Odpowiedź #8 dnia: 13 Października 2021, 18:24:28 »
Świetna appka, ale oczywiście mam swoje propozycje:
- osobne pola do wpisania godziny i minuty, a przy minutach możliwość wpisania decyminut (10.15.6) - wymaga to poszerzenia kolumny godzin
- w sytuacji wpisania "0" lub pominięcia pola godziny przyjazdu / odjazdu (przejazd przez stację bez postoju lub stacja końcowa / początkowa) aplikacja wstawi z automatu "  |  "

Skróty posterunku składać się powinny z trzech elementów w tej właśnie kolejności:
1 - pole kanału radiołączności (ale z możliwością wpisania kilku kanałów) - i kanał radiołączności jest jako pierwsza informacja w opisie posterunku
2 - pole skrótów posterunku (RT,H,SS itd.)
3 - pole postoju (ph,pt,pm) lub puste jeśli nie mamy postoju
... i aby te elementy były ustawione w kolejności, tzn.: R2,RT,H,SS ,ph
Więc prośba o rozdzielenie pól na 3 segmenty.

- brakuje informacji o torowości szlaku (1 lub wielotorowy): 1 lub 2 pomiędzy kolumną stacji i godziny
- brakuje pola do wpisania kategorii handlowej pociągu oraz jego nazwy zgodnie z poniższym wzorem:
______________________________________________________________
[ Rodzaj i numer pociagu                         | EIE8310     ]
[ Kategoria                                      | IC          ]
[ Nazwa pociągu                                  | Matejko     ]
[________________________________________________|_____________]
[                                                | Wolica      ]
[ Relacja pociagu                                | Turów       ]
[________________________________________________|_____________]
[ Wymagany % ciężaru hamującego                  | 127%        ]
[________________________________________________|_____________]
[ Seria i obciążenie lokomotywy                  | EP07 345    ]
[________________________________________________|_____________]
- relację pociągu najlepiej by było aby program każdorazowo brał z osobnego pola a nie z RJ, ponadto fajnie by było rozdzielić pole stacji początkowej i końcowej, i tak wrzucamy to w osobne linie

Zapowiada się świetne narzędzie. Natomiast u mnie jakakolwiek próba wygenerowania prostego RJ kończy się błędem.

Z MaSzyną od PC2009 (eu07-160110). | 11 lat z MaSzyną! | Skrypty 3dsMax
PKP Intercity BZW
Pozdrawiam, Maciej.

Sprawy pilne - pisać na PW na Forum, na chat zaglądam rzadko.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Odp: Generator rozkładów jazdy
« Odpowiedź #9 dnia: 14 Października 2021, 21:34:38 »
...

Zastosowałem się do Twoich uwag i oto sugerowane zmiany:

Update v 1.02

Changelog:
- Zmiany wizualne interfejsu
- Od teraz po wpisaniu 0 w pole godziny oraz minuty odjazdu/przyjazdu zostaje wstawiony znak "|"
- Pola kanału radiowego, opisu posterunku oraz opisu postoju zostały rozdzielone i uporządkowane w odpowiedniej kolejności
- Dodano wybór kategorii pociągu oraz jego nazwy
- Relacja pociągu od teraz domyślnie jest do podania przez usera (istnieje także możliwość, aby generator wybrał sam relację na podstawie rozkładu)
- Poprawienie licznych błędów oraz dodanie wyjątków - Od teraz program nie powinien się wysypywać z błędem tylko mówić nam co mu nie pasuje.
- Dodana opcja wpisywania decyminut (poszerzona kolumna czasu)
- Opis postoju, kanał radiowy oraz opis posterunku nie są wymagane - Możemy pozostawić puste
- Optymalizacja
- Dodano opcję wyboru torowości stacji (jednotorowy szlak lub wielotorowy szlak)

Download zaktualizowany w 1-wszym poście.

Cytuj
- brakuje informacji o torowości szlaku (1 lub wielotorowy): 1 lub 2 pomiędzy kolumną stacji i godziny
Wprowadziłem wybór tej opcji, ale niestety jeszcze ona nie działa - Pytałem na czacie, ale nikt niestety nie odpowiedział więc ponowię pytanie tutaj:

"Czy te informacja o torowości muszą być koniecznie w takiej formie, że 1 lub 2 pomiędzy kolumną stacji a godziny zamiast znaku "|"? Czy może powstać osobna kolumna do tego?"


Oczywiście proszę o dalsze testy :)
« Ostatnia zmiana: 14 Października 2021, 22:38:04 wysłana przez MaciejM »
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering

Offline youBy

  • Deweloper
  • Wiadomości: 6010
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 580
Odp:  Generator rozkładów jazdy
« Odpowiedź #10 dnia: 14 Października 2021, 21:36:27 »
Odpisałem na czacie, że musi zostać, ponieważ taki jest wymóg parsera rozkładowego w MaSzynie.
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Odp:  Generator rozkładów jazdy
« Odpowiedź #11 dnia: 14 Października 2021, 21:58:59 »
...
Nie zauważyłem, przepraszam. W takim razie dodałem to i zaktualizowałem pierwszy post z linkiem ;)
« Ostatnia zmiana: 14 Października 2021, 22:37:54 wysłana przez MaciejM »
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering

Offline MaciejM

  • Wiadomości: 3951
  • ( ͡° ͜ʖ ͡°)
    • Zobacz profil
  • Otrzymane polubienia: 879
Odp: Generator rozkładów jazdy
« Odpowiedź #12 dnia: 16 Października 2021, 12:10:57 »
[________________________________________________|___________________]
[ 311.4 | 120 | Wolica                           2 14.59   |         ]
[       |     |                   R1,H,RT,OT,ph  2 15.00   |         ]
[       |     |----------------------------------2---------|---------]
[ 309.8 |     | Wolica_WoB                       2 |       |         ]
[       |     |                      R1,H,RT,OT  2 15.02   |         ]
[       |     |----------------------------------2---------|---------]
[ 308.5 |_____| Wolica_Piastowska_podg           2 |       |         ]
[       | 125 |          R1,H,pzs,podg,ZS-Wo,PP  2 15.03   |         ]
[       |     |----------------------------------2---------|---------]
[ 308.5 |     | Wolica_Miasto                    2 15.04   | 1       ]
[       |     |                          ,po,ph  2 15.05   |         ]
[_______|_____|__________________________________2_________|_________]
- w przypadku braku godziny przyjazdu do stacji nie oblicza nam czasu przejazdu
- przy dodaniu do RJ przystanku osobowego (przykład: Wolica Miasto) generuje niepotrzebny przecinek przed 'po' (bo przystanki osobowe nie mają kanału radiołączności)
Z MaSzyną od PC2009 (eu07-160110). | 11 lat z MaSzyną! | Skrypty 3dsMax
PKP Intercity BZW
Pozdrawiam, Maciej.

Sprawy pilne - pisać na PW na Forum, na chat zaglądam rzadko.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Odp: Generator rozkładów jazdy
« Odpowiedź #13 dnia: 16 Października 2021, 23:25:25 »
Update v 1.03

Changelog:
- Poprawione w/w błędy. Poprawiony zabłąkany przecinek oraz liczenie godziny jeśli nie została podana godzina przyjazdu.

Zaktualizowany link w pierwszym poście.
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering

Offline Marconi

  • Zasłużony dla Symulatora
  • Wiadomości: 345
    • Zobacz profil
  • Otrzymane polubienia: 27
Odp: Generator rozkładów jazdy
« Odpowiedź #14 dnia: 17 Października 2021, 10:58:17 »
Sugerowałbym dostosowanie programu do innych rozdzielczości ekranu. W moim przypadku przy rozdzielczości ekranu 1024x768 obcina mi okienko około 25%.
Pozdrawiam.

Offline tor424

  • Wiadomości: 91
  • Spokojny człowiek
    • Zobacz profil
    • Wielkopolska galeria kolejowa.
  • Otrzymane polubienia: 21
Odp: Generator rozkładów jazdy
« Odpowiedź #15 dnia: 17 Października 2021, 14:30:24 »
Update v 1.04

Changelog:
- Dodano wsparcie dla nietypowych rozdzielczości typu 1024x768. Niższe rozdzielczości jak 800x600, 640x480 są nie obsługiwane

Link zaktualizowany w pierwszym poście.
Pasjonat elektroniki, informatyki i programowania - C++,C#,Lua i reverse engineering