Table of Contents
Testo
Impostazioni
Attributo | Descrizione | Note |
---|---|---|
ID | ID univoco usato da Rocrail per individuare l'elemento. Solitamente viene assegnato da Rocrail. | |
Text | Questo attributo memorizza la stringa, che dovrebbe essere mostrata nel progetto. | |
Image | Seleziona il percorso dell'immagine da visualizzare al posto del testo | |
Tip | Tooltip per l'elemento. | |
Point size | Attributo per modificare la dimensione del testo. | 0 (predefinito) significa valore standard assegnato dal sistema operativo. |
Color | Colore carattere. | |
Background | Colore sfondo. | Visibile solo se l'attributo transparent non é selezionato. |
Orientation | Valore predefinito orizzontale. | |
Reset | Reset the saved text content at startup. | Useful for dynamic text. |
Input | Al click del tasto sinistro del mouse mostra una finestra per modificate il testo. | I valori del testo possono essere usati come condizione nelle azioni. |
Formato testo
Dalla versione 3431+.
Carattere | Regola |
---|---|
| | Nuova linea |
Se il testo dinamico inizia con il carattere new line esso sarà aggiunto in coda al testo esistente.
Esempio
Posizione & Dimensione
La scheda 'Posizione' é descritta nella sezione Elementi del tracciato. L'attributo cx é abbastanza importante per la gestione del testo. Se una stringa non completamente visualizzata nel progetto, dovrá essere aumentato il valore fino a che l'intero testo non verrá mostrato correttamente.
Mostrare una immagine
Se il testo termina con .png l'oggetto testo proverà a trovare l'immagine nella cartella immagini definita nel file rocgui.ini.
L'immagine sarà ridimensionata in scala per adattarsi alle dimensioni del testo definite nel Position Tab. (7374+)
Azioni
Un azione puó essere usata per lasciare che il testo sia pronunciato da un programma sul server come espeak.
Per avere campi testo aggiornati da un blocco per poi essere pronunciati su un client, leggere Speak command.
Questa azione sará eseguita solo quando l'oggetto testo é aggiornato tramite una azione Testo. (Vedere Testo dinamico).
L'esempio di una azione per pronunciare il testo aggiornato potrebbe essere come questo. | Nelle 'proprietá' dell'elemento testo questa azione ha bisogno di essere associata a questo oggetto testo usando la finestra azioni in questo modo. |
Testo dinamico
Il testo dinamico é il testo che viene aggiornato o modificato tramite una azione.
Un oggetto testo ha bisogno di essere creato nel progetto del tracciato per contenere il testo dinamico. Non é importante quale sia il testo scritto nel campo, siccome questo sará modificato tramite l'azione che controlla l'oggetto testo e perció puó essere lasciato in bianco.
È importante che la larghezza (Cx nella scheda Posizione) dell'oggetto testo sia abbastanza larga per contenere tutto il testo che verrá scritto dall'azione. Inoltre, bisogna annotare l'ID dell'oggetto perché lo si dovrá utilizzare durante la definizione della azione che interagisce con l'oggetto testo.
Definire l'azione
Dal menu Tabelle, scegliere la Azioni e creare una nuova azione cliccando su Nuovo.
Nel campo Tipo scegliere Text, nel campo ID scegliere l'ID dell'oggetto testo creato precedentemente e nel campo Comando scegliere Update (unica opzione disponibile).
Il campo Parametro conterrá il testo che apparirá nell'oggetto testo associato. P.e. Il treno in %bkid% é il %lcid%. Il testo tra % sono le variabili (vedi tabella seguente) che saranno aggiornate ogni volta che verrá eseguita l'azione.
Variabili
Incorporate
Loco | |
---|---|
%lcid% | Loco ID |
%lcident% | Loco identifier (RFID, Railcom, Lissy, Barcode…) |
%lcimg% | Immagine Loco |
%lcdest% | Destinazione Loco |
%lcdesc% | Descrizione Loco |
%lcnr% | Numero Loco |
%lcdir% | Direzione Loco: "fwd"/"rev" |
%lcplacing% | Verso Loco: "norm"/"swap" |
Pianificazione | |
%lcscid% | ID pianificazione |
%lcscbk% | ID blocco pianificazione |
%lcscbkloc% | Localitá blocco pianificazione |
%lcschour% | Ora partenza pianificazione |
%lcscmin% | Minuto partenza pianificazione |
%lcscnextbk% | ID prossimo blocco pianificazione |
%lcscnextbkloc% | Localitá prossimo blocco pianificazione |
%lcscprevbk% | ID precedente blocco pianficazione |
%lcscprevbkloc% | Localitá precedente blocco pianificazione |
Blocco | |
%bkid% | ID Blocco |
%bkloc% | Nome localitá Blocco |
%bkdesc% | Descrizione Blocco |
%frombkid% | Blocco di provenienza |
%frombkloc% | Nome localitá blocco di provenienza |
%frombkdesc% | Descrizione del blocco di provenienza |
%bkmvspeed% | Velocitá misurata nel blocco (usare con lo stato 'free'¹) |
Booster | |
%load% | Potenza in mA |
%volt% | Tensione in mV |
%temp% | Temperatura in °C |
MVTrack | |
%mvspeed% | Measured speed in KM/H |
Variable | |
%#varname% or with Sub-ID %#varname#lcid% | The integer value |
¹) Indicazione: %bkmvspeed% sará aggiornata all'evento IN. Il successivo evento che puó essere usato per attivare l'aggiornamento del testo e il cambio di stato a 'free'. Se si attiva l'aggiornamento su un altro stato, si avrá l'ultima velocitá misurata (che potrebbe differire da quella attuale.)
Ambiente
Possono essere anche usate tutte le variabili ambiente programmate:
"Good morning %USER%."
(in ambiente Windows: %USERNAME%)
sará considerata come:
"Good morning rob."
Associare l'azione
Il prossimo passo prevede di scegliere l'oggetto da associare all'azione.
Nell'esempio precedente é rappresentato dal blocco per cui il testo dinamico viene aggiornato con l'ID loco. Perció se il blocco che viene associato all'azione é il blocco LP1 e il prossimo treno in ingresso é il 3MT, l'oggetto testo leggerá "Il treno in LP1 e il 3MT".
Seguendo l'esempio, le proprietá del blocco LP1 sono state selezionate. Nel submenu delle Azioni, l'azione che modifica il testo dinamico viene selezionata dall'elenco del campo ID. Il campo Stato é "enter" in modo che l'azione viene attivata quando un treno entra nel blocco.
Parlami (Speak to me)
espeak
espeaking il testo aggiornato
Ci sono due opzioni per avere la lettura del testo aggiornato, p.e. tramite espeak:
- Usare lo speakcommand –> questa sará eseguita sul client.
- Configurare una azione aggiuntiva come mostrato QUI –> questa sará eseguita sul server.
Esempi con file sonori e espeak
Uno script Linux con il codice:
mplayer jingle.wav; espeak -vde+f2 " $* ";
eseguirá un jingle prima che sia pronunciato il testo dinamico.
Un batch Windows potrebbe assomigliare a questo:
c:\playwav ns.wav c:\espeak -vnl+m3 %1% exit
Inserire il codice in un file .bat, come sound.bat. Richiamare il file .bat da una azione collegata ad un oggetto testo di Rocrail.
Il %1% sará sostituito dal testo dinamico che proviene da Rocrail
oppure:
sndrec32 /play /close /embedding c:\sound\gong.wav C:\Programme\eSpeak\command_line\espeak.exe -v de+f2 %*
Nota:
Gli esempi dei comandi negli script o nei file batch con suoni e "espeak" possono essere anche usati individualmente.
Se deve essere eseguito solo un singolo comando, questo puó essere inserito direttamente nel campo command dell'Azione.
Balabolka
La piattaforma Microsoft Speech offre una migliore qualitá di voci in varie lingue incluso l'inglese, il tedesco, l'olandese e l'italiano.
Per l'installazione sul proprio computer seguire queste istruzioni:
1. Scaricare e installare la Speech Platform Runtime http://www.microsoft.com/download/en/details.aspx?id=27225 (il file 'x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi').
2. Scaricare e installare il Runtime Languages da usare con la Speech Platform http://www.microsoft.com/download/en/details.aspx?id=27224 (i file che iniziano con 'MSSpeech_TTS_').
Tuttavia, questi linguaggi non possono essere eseguiti dalla console (linea di comando) espeak. Balabolka é un programma gratuito che puó essere usato per eseguire Microsoft Speech Platform in modo predefinito. Puó essere scaricato da http://www.cross-plus-a.com/balabolka.htm
Scegliere la scheda Microsoft Speech Platform e selezionare la lingua da scaricare. Chiudere il programma per impostare questa voce come predefinita. Balabolka puó essere eseguito anche in modalitá console (linea di comando).
playwav ns.wav c:\Balabolka\balabolka.exe -rmnq %1% exit
Con i parametri precedenti Balabolka legge il testo dinamico in una forma minimizzata e si chiude dopo la lettura. É importante che per questo lavoro, l'azione che invoca il file batch provenga dalla cella che contiene il testo dinamico.
Altre voci come quelle prodotte da AT&T possono essere comprate se si desidera avere migliori risultati.
Balabolka puó anche salvare il testo letto nel programma in formato .WAV o .MP3. Questi possono essere usati per creare file batch che possono essere richiamati da Rocrail in base a specifici eventi come spiegato nelle note viste sopra con espeak. P.e. uno specifico annuncio di stazione viene eseguito solo quando una specifica loco entra in un determinato blocco http://youtu.be/t1Zffyg4FOQ.
Mac OS X: Usa il comando "say".
Interfaccia
Alcuni sistemi possono elaborare i messaggi di testo sui display come il CBUS: CAN-GC8.
Per usare questa funzionalitá l'indirizzo deve essere piú grande di zero.
cmdr0A40 OText 0281 send text [Good morning rob] cmdr0A40 OCBUS 1638 translate: tx cmdr0A40 OCBUS 2028 set display 5600:1 to "Good morning rob" cbwriter OCBUS 0170 OPC_ACDAT(0xF6) address=5600 display=1 line=0 nr=0 text=[Good] cbwriter OCBUS 0170 OPC_ACDAT(0xF6) address=5600 display=1 line=0 nr=1 text=[ mor] cbwriter OCBUS 0170 OPC_ACDAT(0xF6) address=5600 display=1 line=0 nr=2 text=[ning] cbwriter OCBUS 0170 OPC_ACDAT(0xF6) address=5600 display=1 line=0 nr=3 text=[ rob]
ID Interfaccia
Se si ha piú di una Centrale Digitale, usare questo campo per associare questa uscita alla CD a cui é realmente collegato. Lasciare vuoto in caso si utilizzi una sola CD o quando é collegata alla CD predefinita (Primo digint nel rocrail.ini).
Indirizzo
Indirizzo del modulo display.
Visualizza
Il numero mostrato sul modulo display. Da 1 a 8.
Download
Argomenti correlati
- Lascia parlare Rocview (per una scelta dei blocchi.)