Zdarzenia

swiderskik
Posty: 11
Rejestracja: 01 lut 2015, 22:57

Zdarzenia

Post autor: swiderskik »

Mam pytanie - czy jest gdzieś jakaś ściągawka jak programować zdarzenia?... chciałbym się wgłębić w temat ale jakoś za dużo niewiadomych jak dla mnie :) chodzi mi tutaj jak osiągnąć efekt np. pociąg zmienia prędkość po zadanym czasie lub kierunek,zatrzymanie lub załączenie wybranej funkcji...
Będę wdzięczny za poglądowy schemat postępowania..
Awatar użytkownika
gbbsoft
Admin
Posty: 2178
Rejestracja: 09 lip 2008, 23:19
Miasto: Warszawa
System DCC: Lenz + Roco

Re: Zdarzenia

Post autor: gbbsoft »

Tu była fajna rysunkowa instrukcja jak tworzyć zdarzenia: viewtopic.php?f=31&t=139

Najprościej: musisz stworzyć następujący ciąg bloczków:
- czekaj x czasu
- zmień prędkość

albo:
- czekaj x czasu
- włącz funkcję x
- czekaj x czasu
- wyłącz funkcję x
MarcinM
Posty: 33
Rejestracja: 16 sty 2018, 16:53
System DCC: Digikeijs DR5000

Re: Zdarzenia

Post autor: MarcinM »

Witam.
Aby nie zakładać nowego tematu zapytam tu.
Chciałbym się odwoływać w zdarzeniach do cechy typu "stacja A", "stacja B" itp. Mam 3 bloki które wchodzą w skład stacji A oraz 4 bloki na stacji B oraz parę bloków nie należących do stacji.
W zdarzeniach dla lokomotywy "po zatrzymaniu w bloku" i spełnieniu warunku że ten blok należy do stacji A wykonać dane zdarzenie np otwarcie drzwi wagonów.

Teraz mam tak: "po zatrzymaniu w bloku" dla każdej lokomotywy mam 7 zdarzeń w każdym warunek jeżeli (czy to blok 1,czy to blok 2,czy to blok 3,czy to blok 4,czy to blok 5,czy to blok 6,czy to blok 7) a jak by była w definicji bloku możliwość ustawienia do jakiej stacji należy ten blok wystarczyły by 2 warunki (czy blok należy do stacji A),(czy blok należy do stacji B). Mam nadzieję, że to dobrze wyjaśniłem.
Pozdrawiam
Marcin
Awatar użytkownika
gbbsoft
Admin
Posty: 2178
Rejestracja: 09 lip 2008, 23:19
Miasto: Warszawa
System DCC: Lenz + Roco

Re: Zdarzenia

Post autor: gbbsoft »

Przyszedł mi do głowy taki pomysł. W nazwie bloku pierwsze 8 znaków niech będzie nazwą stacji. Wtedy możesz z nazwy bloku pobrać pierwsze 8 znaków i je porównać do tekstu "Stacja A".

Bloki byś nazywał tak:
"Stacja A Blok 1"
"Stacja A Blok 2"
"Stacja A Blok 3"

potem:
"Stacja B Blok 4"

"Stacja B Blok 7"

a dalej już normalnie:
"Blok 8"
MarcinM
Posty: 33
Rejestracja: 16 sty 2018, 16:53
System DCC: Digikeijs DR5000

Re: Zdarzenia

Post autor: MarcinM »

Tak by mogło być. Czy do tego jest potrzebna nowa wersja programu?
Jak pobrać te 8 znaków z nazwy?

Marcin
Awatar użytkownika
gbbsoft
Admin
Posty: 2178
Rejestracja: 09 lip 2008, 23:19
Miasto: Warszawa
System DCC: Lenz + Roco

Re: Zdarzenia

Post autor: gbbsoft »

Na przykład tak:
ActiveBlock.Name.Substring(0, 8)=="Stacja B"
MarcinM
Posty: 33
Rejestracja: 16 sty 2018, 16:53
System DCC: Digikeijs DR5000

Re: Zdarzenia

Post autor: MarcinM »

Dziś sprawdziłem ten warunek i:
Jeśli nazwy wszystkich bloków są minimum 8 znakowe to jest Ok.
Jeśli choć jeden blok który jest badany w warunku ma mniej niż 8 znaków w nazwie to nie działa bo wyskakuje błąd i pomimo trasy zaznaczonej na zielono lok nie rusza.

Rozwiązaniem jest nazwanie od nowa wszystkich bloków minimum 8 znaków.

Marcin
Załączniki
zdarz1.jpg
Awatar użytkownika
gbbsoft
Admin
Posty: 2178
Rejestracja: 09 lip 2008, 23:19
Miasto: Warszawa
System DCC: Lenz + Roco

Re: Zdarzenia

Post autor: gbbsoft »

W VB jest funkcja MID, która nie ma tego ograniczenia. Niestety, tu jest SUBSTRING, który jest bardzo restrykcyjny i go nie lubię, właśnie z tego powodu...
:-)
reticulan
Posty: 237
Rejestracja: 29 maja 2018, 21:37
Miasto: Częstochowa
System DCC: Roco 10764

Re: Zdarzenia

Post autor: reticulan »

Dlaczego dzieje się tak że jak nieprawidłowo sformułuję regułę, zapisze plik plansza to potem nie mogę jej już otworzyć wyskakuje błąd "Odwołanie obiektu nie zostało ustawione na wystąpienie obiektu"
Dodam że stało się to na wersji 1.74.6620.38184, której używam ostatnio, na tym samym komputerze na tym samym systemie, w zasadzie plik się popsuł w pół godziny.

Mam jeszcze dziwną przypadłość. mam jeden plik plansza który się otwiera, ale jak go zapisze albo zapisze jako to już kolejnej kopi otworzyć nie mogę i muszę wracać do wersji .bak. Oznacza to że mogę używać tej wersji pliku ale jakakolwiek zmiana i zapis albo zapis bez zmian. Uszkadza plik

Jak to naprawić.
Awatar użytkownika
gbbsoft
Admin
Posty: 2178
Rejestracja: 09 lip 2008, 23:19
Miasto: Warszawa
System DCC: Lenz + Roco

Re: Zdarzenia

Post autor: gbbsoft »

Przyszli mi taki 'popsuty' plik, może coś uda mi się zbadać...
ODPOWIEDZ