//-- przejazd strzezony z podwójnymi rogatkami drewnianymi (szerokosc drogi= 10m) o napedzie elektrycznym,
// sygnalizacja swietlna i dzwiekowa, linia dwutorowa. 
// p1 - nazwa przejazdu, p2,p3,p4-polozenie,p5-rotacja, p6,p7 - nazwy torow przebiegajacych przez przejazd

event (p1)_warning putvalues 10.0 none (p2) (p3) (p4) Warning_signal 1 2 endevent



origin (p2) (p3) (p4)
rotate 0 (p5) 0

//--- modele sygnalizacji przejazdowej 
node 800 0 (p1)_Syg1 model -13.5 0.0 5.0 90 PKP/SP2ccXX.t3d none Lights 1 0 endmodel
node 800 0 (p1)_Syg2 model 13.5 0.0 -5.0 -90 PKP/SP2ccXX.t3d none Lights 1 0 endmodel
node 800 0 (p1)_rog1 model -12.0 0.0 5.0 0 PKP/szlab_d_45.t3d none endmodel
node 800 0 (p1)_rog4 model 12.0 0.0 5.0 0 PKP/szlab_d_45.t3d none endmodel
node 800 0 (p1)_rog2 model 12.0 0.0 -5.0 180 PKP/szlab_d_45.t3d none endmodel   
node 800 0 (p1)_rog3 model -12.0 0.0 -5.0 180 PKP/szlab_d_45.t3d none endmodel


//elementarne zdarzenia:

//--- migajace lampki
event (p1)_0_sygn1 lights 0.8 (p1)_Syg1 2 2 endevent
event (p1)_0_sygn2 lights 0.8 (p1)_Syg2 2 2 endevent
//--- zgaszone lampki
event (p1)_1_sygn1 lights 0.8 (p1)_Syg1 1 0 endevent
event (p1)_1_sygn2 lights 0.8 (p1)_Syg2 1 0 endevent

//zamkniecie rogatek
event (p1)_rog1on animation 5 (p1)_rog1 rotate Ramie01 90.0 0.0 0.0 15 endevent
event (p1)_rog2on animation 5 (p1)_rog2 rotate Ramie01 90.0 0.0 0.0 15 endevent
event (p1)_rog3on animation 5 (p1)_rog3 rotate Ramie01 90.0 0.0 0.0 15 endevent
event (p1)_rog4on animation 5 (p1)_rog4 rotate Ramie01 90.0 0.0 0.0 15 endevent
//otwarcie rogatek
event (p1)_rog1off animation 1 (p1)_rog1 rotate Ramie01 0.0 0.0 0.0 15 endevent
event (p1)_rog2off animation 1 (p1)_rog2 rotate Ramie01 0.0 0.0 0.0 15 endevent
event (p1)_rog3off animation 1 (p1)_rog3 rotate Ramie01 0.0 0.0 0.0 15 endevent
event (p1)_rog4off animation 1 (p1)_rog4 rotate Ramie01 0.0 0.0 0.0 15 endevent

// globalne procedury sterujace:
//--- zamykanie przejazdu - musi byc podpiete jako event1 do torow (z kazdego kierunku) daleko przed przejazdem 
// oraz do toru na samym przejezdzie (zabezpieczenie na wypadek mijania sie 2 pociagow!)
event (p1)_zamykaj multiple 0.0 none (p1)_0_sygn1 (p1)_0_sygn2 (p1)_rog1on (p1)_rog2on (p1)_rog3on (p1)_rog4on endevent

//---otwieranie przejazdu - zdarzenia musza byc podpiete jako event1 do torow tuz za przejazdem (dla kazdego kierunku)
event (p1)_otwieraj1 multiple 3.0 none (p1)_otwierajgdywolny1 endevent
event (p1)_otwieraj2 multiple 3.0 none (p1)_otwierajgdywolny2 endevent

event (p1)_otwierajgdywolny1 multiple 1.0 (p6) (p1)_1_sygn1 (p1)_1_sygn2 (p1)_rog1off (p1)_rog2off (p1)_rog3off (p1)_rog4off condition trackfree endevent
event (p1)_otwierajgdywolny2 multiple 2.0 (p7) (p1)_1_sygn1 (p1)_1_sygn2 (p1)_rog1off (p1)_rog2off (p1)_rog3off (p1)_rog4off condition trackfree endevent

rotate 0 0 0
endorigin
