
--
Se non desideri piú essere abbonato a questo gruppo, invia un messaggio a traindir3+...@googlegroups.com
Per ulteriori opzioni, visita il gruppo alla pagina http://groups.google.com/group/traindir3?hl=it
---
You received this message because you are subscribed to the Google Groups "Traindir3" group.
To unsubscribe from this group and stop receiving emails from it, send an email to traindir3+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/traindir3/93df8820-8631-4967-8ee8-50547c92a16dn%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/traindir3/6b0cc4f2-10c0-4910-8295-438738733622n%40googlegroups.com.

To view this discussion on the web visit https://groups.google.com/d/msgid/traindir3/2a215763-b834-428c-b99f-6e62692afc48n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/traindir3/7226d1c3-cd44-40dc-9ba4-c07c38eee467n%40googlegroups.com.

Ciao Fabio,
ho letto il post di Giampiero e scusami per il "punto" che proprio mi è scappato.
Tornando a quanto tu hai scritto, mi sembra di capire che lo scopo di inserire 3 script prima di Ronco sia quello di aprire per tempo l’itinerario IC-2 per quei treni che fermano a Pietrabissara e/o a Isola.
Se l’obiettivo è questo, sarebbe sufficiente:
script 2: if Train.nextStop='Pietra' or Train.nextStop='Isola'
Gli script 1 e 3 a mio giudizio sono ridondanti.
Non è necessario mettere il controllo dell’aspetto del semaforo di protezione di Ronco perché se l’itinerario IC-2 è già attivo rimane attivo. Inoltre non è sufficiente, perché un itinerario si attivi, che il segnale di inizio itinerario sia a via impedita: infatti se un treno è fermo al binario 2 di Ronco il semaforo di protezione è rosso, ma l’itinerario è occupato e non si attiva lasciandoti poi la manovra a mano.
Per i
treni che non fermano né a Pietra né a Isola ma comunque sul
binario 2 di Ronco, potresti aggiungere allo script la verifica della
condizione:
or Train.nextStop='Ronco@2'
mettendo in
orario l'indicazione del binario @2.
Inoltre se quello descritto è un comportamento costante per tutti i treni di tipo 2, come quello che hai pubblicato, potresti sostituire il controllo degli script da Train.nextStop a:
if Train.type=1.
1 e non 2 perché la numerazione di type negli script parte da 0.
Rimane da gestire l’attivazione di IC-2 per i treni che non fermano a Ronco, ma transitano per il binario 2. Potresti sempre inserire nello script 2 alla fine:
or Train.exit=AL or Train.exit=MI
Se i tentativi di attivare IC-2 vanno a vuoto perché Ronco@2 è occupato il treno potrebbe trovare il segnale di protezione di Ronco a via impedita. Due le soluzioni: manuale o automatica.
Quella manuale è semplice: attivi tu l’itinerario quando è possibile.
Per rendere questa manovra automatica dovresti inserire nell’orario di ogni treno che ferma a o transita da Ronco@2:
Script:
OnWaiting:
if
Track(77,17).busy=1
do itinerary IC-2
end
end
EndScript
Questa soluzione ha un difetto e cioè la OnWaiting è testata in continuazione (anche quando il treno si ferma ad un qualsiasi segnale lungo il suo percorso) fintanto che non si presenta la possibilità di attivare l'itinerario con il rischio che, se lo scenario è complesso, la simulazione venga rallentata.
Ti resta poi da decidere come gestire in contemporanea le fermate a Ronco@1.
Spero di non aver fatto errori e che un qualche suggerimento, anche se non richiesto, ti possa essere utile.
Buon lavoro, Guido
Tornando a quanto tu hai scritto, mi sembra di capire che lo scopo di inserire 3 script prima di Ronco sia quello di aprire per tempo l’itinerario IC-2 per quei treni che fermano a Pietrabissara e/o a Isola.
Se l’obiettivo è questo, sarebbe sufficiente:
script 2: if Train.nextStop='Pietra' or Train.nextStop='Isola'
Gli script 1 e 3 a mio giudizio sono ridondanti.

To view this discussion on the web visit https://groups.google.com/d/msgid/traindir3/ac1cb1c6-7c69-4b6d-8bfc-1c8a6f638bc4n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/traindir3/2cd8c885-b17a-4237-9f1f-b7006a10e9bcn%40googlegroups.com.
Ciao Fabio,
verifica bene tutte le condizioni quando il treno è nell'elemento dello script, in particolare la direzione del treno e gli aspetti dei segnali. Le stringhe sono sensibili alle maiuscole, e in alcune situazioni i segnali del pacchetto hanno aspetti speciali che sembrano verde, giallo o rosso ma non sono green, yellow e red.
Paolo R.
PS per Giampiero:
l'ultima volta che ho dovuto spezzarla con gli if uno dentro
l'altro - ma era in uno script di segnale - la lunghezza massima
di una riga era 256 caratteri, ossia circa 3 righe del mio editor;
l'hai alzata recentemente o negli script interni il limite è più
alto?
Paolo
To view this discussion visit https://groups.google.com/d/msgid/traindir3/a2a33151-54be-4dab-88ab-29490caa6765n%40googlegroups.com.