CHAPITRE 15. 1

Cabines dans OR.. 1

15.1 Cabines 2D.. 1

15.1.1 ETCS : compteur de vitesse. 1

15.1.2. Coupe-batterie. 23

15.1.3 Clé principale. 45

15.1.4 Maintien des services. 74

15.1.5 Alimentation électrique des trains. 84

15.1.6 Commandes de mise en marche et d'arrêt des moteurs diesel 92

15.1.7 Radio de cabine. 157

15.1.8 Éclairage de la cabine. 169

15.1.9 Touches dédiés aux contrôleurs de frein. 174

15.1.10 Contrôle du freinage de traction signée.  ((  + ou - )Traction ou freinage dynamique ) 181

15.1.11 Commande de freinage total de la traction signée. (+ ou - ) 186

15.1.12 Commandes du compteur kilométrique. 190

15.1.13 Répartition de l'énergie électrique. 205

15.1.14 EOT (End of Tran Device -- dispositif de fin de train) 250

15.1.15 Débitmètre d'air 270

15.1.16 Essuie-glaces 2D animés. 288

15.1.17 Étiquettes de contrôle. 296

15.1.18 Affichage alternatif de plusieurs pages sur un écran. 300

15.1.19 Autres commandes de la cabine dans OR.. 317

15.1.20 Contrôles de cabine pour les éléments génériques. 320

15.1.21 Images cabine d’arrière plan en haute résolution et contrôles. 343

15.1.22 Polices configurables. 391

15.1.23 Rotation des jauges et des commandes numériques. 407

15.1.24 Affichage et animation des commandes de la cabine dans les vues latérales des cabines 2D   423

15.2  Cabines 3D.. 438

15.2.1 Règles de développement 441

15.2.2 Exemple pratique de développement d'un compteur de vitesse numérique. 505

15.2.3 FUEL_GAUGE pour les locomotives à vapeur 528

15.2.4 Affichage de la puissance répartie. 538

15.2.5 Alignement des commandes numériques. 557

 

 

CHAPITRE 15

Cabines dans OR

 

OR supporte à la fois les cabines 2D compatibles avec MSTS et les cabines 3D natives, même sur la même locomotive.

Pour une liste complète des paramètres, voir Développement du contenu de OR - Paramètres et Commandes

 

15.1 Cabines 2D

OR prend en charge, avec un haut degré de compatibilité, toutes les fonctions disponibles dans MSTS pour les cabines 2D, et apporte quelques améliorations significatives décrites dans les paragraphes suivants.

 

15.1.1 ETCS : compteur de vitesse

Vous pouvez ajouter à la vue de la cabine un indicateur de vitesse circulaire conforme au système standard européen de contrôle des trains ETCS.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


La jauge est ajoutée par l'insertion d'un bloc comme le suivant dans le fichier .cvf :

 

Digital (

Type ( SPEEDOMETER DIGITAL )

Style ( NEEDLE )

Position ( 160 255 56 56 )

ScaleRange ( 0 250 )

Units ( KM_PER_HOUR )

)

 

 

Il est également possible d'afficher l'écran ETCS complet en utilisant le bloc suivant :

 

ScreenDisplay (

Type ( ORTS_ETCS SCREEN_DISPLAY )

Position ( 280 272 320 240 )

Units ( KM_PER_HOUR )

Parameters (

Mode FullSize

)

)

 

Vous pouvez ajouter à la vue de la cabine un indicateur de vitesse circulaire conforme aux normes européennes : FullSize (affichage de l'ensemble du DMI), SpeedArea (affichage de la partie gauche avec des informations sur la distance et la vitesse) et PlanningArea (affichage de la zone de planification et des boutons de navigation).

 

Les informations affichées dans le DMI sont contrôlées par le script TCS.

Pour plus de détails, voir le script du moteur C# - Système de contrôle des trains.

 

15.1.2. Coupe-batterie

Le commutateur de batterie contrôle l'alimentation basse tension de la locomotive. Les commandes suivantes sont disponibles pour la vue cabine :

 

  ORTS_BATTERY_SWITCH_COMMAND_SWITCH

peut être utilisé si le coupe-batterie est directement contrôlé depuis la cabine.

  ORTS_BATTERY_SWITCH_COMMAND_BUTTON_CLOSE et ORTS_BATTERY_SWITCH_COMMAND_BUTTON_OPEN

peuvent être utilisées si l'aiguillage est commandé par deux boutons-poussoirs (l'un pour fermer l'aiguillage et l'autre pour l'ouvrir).

• ORTS_BATTERY_SWITCH_ON

peut être utilisé pour commander un voyant sur la cabine indiquant l'état du coupe-batterie.

D'autres commandes peuvent être désactivées si l'alimentation basse tension n'est pas disponible à l'aide du paramètre suivant :

 

TwoState (

Type ( ORTS_CIRCUIT_BREAKER_CLOSED TWO_STATE )

...

DisabledIfLowVoltagePowerSupplyOff ( 1 )

)

 

Par défaut, le contrôle cabview est complètement caché. Vous pouvez également définir une valeur spécifique pour le contrôle lorsqu'il est désactivé

 

TwoState (

Type ( SPEEDOMETER DIAL )

...

DisabledIfLowVoltagePowerSupplyOff ( 1 )

HideIfDisabled ( 0 )

ValueIfDisabled ( 0 )

)

 

 

15.1.3 Clé principale

Le Clé principale contrôle l'alimentation électrique de la cabine.

Les commandes suivantes sont disponibles pour la vue de la cabine :

 

• ORTS_MASTER_KEY

peut être utilisé pour contrôler la clé principale.

• ORTS_CURRENT_CAB_IN_USE

peut être utilisé pour indiquer que la cabine actuelle est active

• ORTS_OTHER_CAB_IN_USE

peut être utilisé pour indiquer qu'une autre cabine du train est active D'autres commandes peuvent être désactivées si l'alimentation électrique de la cabine n'est pas disponible en utilisant le paramètre suivant :

 

D'autres commandes peuvent être désactivées si l'alimentation de la cabine n'est pas disponible à l'aide du paramètre suivant :

 

TwoState (

Type ( ORTS_CIRCUIT_BREAKER_CLOSED TWO_STATE )

...

DisabledIfCabPowerSupplyOff ( 1 )

)

 

Par défaut, le contrôle cabview est complètement caché. Vous pouvez également définir une valeur spécifique pour le contrôle lorsqu'il est désactivé :

 

TwoState (

Type ( SPEEDOMETER DIAL )

...

DisabledIfCabPowerSupplyOff ( 1 )

HideIfDisabled ( 0 )

ValueIfDisabled ( 0 )

)

 

15.1.4 Maintien des services

La maintien du service peut être utilisée pour désactiver une cabine sans couper le courant dans le train. Il ne peut être possible qu’avec un script utilisant cette fonctionnalité.

 

Les contrôles suivants sont disponibles pour la vue de cabine :

 

• ORTS_SERVICE_RETENTION_BUTTON

peut être utilisé pour activer la conservation du service

• ORTS_SERVICE_RETENTION_CANCELLATION_BUTTON

peut être utilisé pour annuler la conservation du service.

 

15.1.5 Alimentation électrique des trains

L'alimentation électrique du train contrôle la ligne électrique qui alimente les voitures de passagers en électricité.

Les commandes suivantes sont disponibles pour la vue cabine :

• ORTS_ELECTRIC_TRAIN_SUPPLY_COMMAND_SWITCH

peut être utilisé pour contrôler l'interrupteur d'alimentation électrique du train.

• ORTS_ELECTRIC_TRAIN_SUPPLY_ON

peut être utilisé pour indiquer que la ligne d'alimentation électrique du train est sous tension.

 

15.1.6 Commandes de mise en marche et d'arrêt des moteurs diesel

Les touches du clavier permettant de démarrer et de stopper les moteurs diesel sont les suivantes :

 

• Ctrl+Y allume et éteint le premier moteur diesel de la locomotive du joueur.

• Shift+Y allume et éteint les autres moteurs diesel de la locomotive du joueur, ainsi que tous les moteurs diesel des autres locomotives du train, s'ils sont MUed, (c'est-à-dire sous le contrôle de la locomotive du joueur), ce qui est le cas par défaut.

 

Les commandes suivantes de la vue de la cabine sont disponibles

ORTS_PLAYER_DIESEL_ENGINE : la première image est affichée lorsque le moteur diesel de la locomotive du joueur est à l'arrêt, tandis que la deuxième image est affichée lorsqu'il est en marche ou démarré. Cette commande peut être utilisée avec la souris et permet de démarrer/arrêter le (premier) moteur diesel de la locomotive du joueur. Elle est utile lorsqu'un seul levier à deux états est utilisé pour démarrer/arrêter le moteur.

Exemple :

 

TwoState (

Type ( ORTS_PLAYER_DIESEL_ENGINE TWO_STATE)

Position ( 150 446 27 26 )

Graphic ( graphic1.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

MouseControl ( 1 )

)

 

ORTS_HELPERS_DIESEL_ENGINES : la première image est affichée lorsque d'autres moteurs diesel de la locomotive du joueur et/ou les moteurs diesel des locomotives d'assistance sont à l'arrêt ou en train de s'arrêter, tandis que la deuxième image est affichée lorsqu'ils sont en marche ou en train de démarrer. La commande peut être utilisée avec la souris et permet de démarrer/arrêter d'autres moteurs diesel de la locomotive du joueur et des moteurs diesel des locomotives d'assistance, et est utile lorsqu'un bouton ou un levier à deux états est utilisé. Notez donc que cette commande peut également être utilisée pour les locomotives joueuses ayant plus d'un moteur.

Exemple de commande :

 

TwoState (

Type ( ORTS_HELPERS_DIESEL_ENGINES TWO_STATE)

Position ( 190 446 27 26 )

Graphic ( graphics2.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

MouseControl ( 1 )

)

 

ORTS_PLAYER_DIESEL_ENGINE_STATE : ce contrôle sélectionne respectivement les frames 0, 1, 2, 3 pour les états Stopped, Starting, Running et Stopping du moteur de la locomotive du joueur. Il s'agit d'une commande d'affichage uniquement.

Exemple de commande :

 

MultiState (

Type ( ORTS_PLAYER_DIESEL_ENGINE_STATE TRI_STATE)

Position ( 270 446 39 40 )

Graphic ( cd_363_zberace.ace )

NumFrames ( 4 4 1 )

Style ( NONE )

MouseControl ( 1 )

Orientation ( 0 )

DirIncrease ( 1 )

)

 

ORTS_PLAYER_DIESEL_ENGINE_STATER : ce contrôle sélectionne respectivement les frames 0, 1, 2, 3 pour les états Stopped, Starting, Running et Stopping du moteur de la locomotive du joueur. Il s'agit d'une commande d'affichage uniquement.

Exemple de commande

 

ORTS_PLAYER_DIESEL_ENGINE_STARTER : il affiche la deuxième image lorsque le moteur diesel du joueur est en état de démarrage, et la première dans tous les autres cas. Il peut être utilisé avec la souris et ne peut que démarrer le moteur, il est donc utile en conjonction avec ORTS_PLAYER_DIESEL_ENGINE_STOPPER lorsque le démarrage et l'arrêt du moteur sont effectués avec des commandes séparées (par exemple, 2 boutons).

Exemple :

 

TwoState (

Type ( ORTS_PLAYER_DIESEL_ENGINE_STARTER TWO_STATE)

Position ( 310 446 27 26 )

Graphic ( graphics3.ace )

NumFrames ( 2 2 1 )

Style ( PRESSED )

MouseControl ( 1 )

)

 

 

ORTS_PLAYER_DIESEL_ENGINE_STOPPER : il affiche la deuxième image lorsque le moteur diesel du joueur est en état d'arrêt, et la deuxième dans tous les autres cas. Il peut être utilisé avec la souris et ne peut qu'arrêter le moteur, il est donc utile lorsque le démarrage et l'arrêt du moteur se font avec des commandes séparées (par exemple 2 boutons).

Exemple de commande :

 

TwoState (

Type ( ORTS_PLAYER_DIESEL_ENGINE_STOPPER TWO_STATE)

Position ( 350 446 27 26 )

Graphic ( Bell.ace )

NumFrames ( 2 2 1 )

Style ( PRESSED )

MouseControl ( 1 )

)

 

15.1.7 Radio de cabine

OR prend en charge la fonctionnalité radio équipant la cabine. Les touches Alt+R permettent d'activer et de désactiver la radio de la cabine. L'activation et la désactivation de la radio cabine active les déclencheurs sonores discrets 162 et 163, comme expliqué ici. Voici un exemple de bloc de commande de radio cabine dans le fichier .cvf

 

TwoState (

Type ( CAB_RADIO TWO_STATE )

Position ( 150 425 30 21 )

Graphic ( Horn.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

MouseControl ( 1 )

)

 

15.1.8 Éclairage de la cabine

OR prend en charge le contrôle de l'éclairage de la cabine (cabview). Une pression sur la touche L permet d'allumer et d'éteindre l'éclairage de la cabine dans les mêmes conditions que celles qui s'appliquent aux MSTS. L'allumage et l'extinction de l'éclairage de la cabine activent le déclencheur sonore discret 161, comme expliqué ici. Voici un exemple de bloc de contrôle de l'éclairage de la cabine dans le fichier .cvf

 

TwoState (

Type ( ORTS_CABLIGHT TWO_STATE )

Position ( 120 425 30 21 )

Graphic ( Horn.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

MouseControl ( 1 )

)

 

15.1.9 Touches dédiés aux contrôleurs de frein

En plus de la commande clavier BailOff </>, une commande cabview nommée ORTS_BAILOFF est disponible. Elle est utilisée pour desserrer les freins de la locomotive tout en maintenant les freins du train serrés. Dans certains contrôleurs de frein, il y a un bouton qui permet un relâchement complet et rapide du frein du train lorsqu'il est pressé. OR prend en charge cette fonction via la commande ORTS_QUICKRELEASE cabview, ou en appuyant sur <Ctrl+/>.

Certains contrôleurs de frein ont un bouton dédié pour surcharger la conduite générale. La commande ORTS_OVERCHARGE du tableau de bord peut être utilisée à cette fin. Il est également possible d'utiliser la commande clavier <Ctrl+Shift+/>.

Voici un exemple de l'une de ces commandes dans le fichier .cvf

 

TwoState (

Type ( ORTS_BAILOFF TWO_STATE )

Position ( 120 425 30 21 )

Graphic ( BailOff.ace )

NumFrames ( 2 2 1 )

Style ( PRESSED )

MouseControl ( 1 )

)

 

15.1.10 Contrôle du freinage de traction signée.  ((  + ou - )Traction ou freinage dynamique )

Cette commande de la vue cabine affiche la valeur signée de la force (+ve ou -ve, c'est-à-dire de traction ou due au freinage dynamique) telle qu'elle est affichée dans de nombreuses cabines de locomotives réelles. La commande est ORTS_SIGNED_TRACTION_BRAKING. À titre de comparaison, la commande de vue de cabine TRACTION_BRAKING, compatible avec les MSTS, affiche la valeur absolue de la force. Voici un exemple de bloc de commande de feu de cabine dans le fichier .cvf :

 

Dial (

Type ( ORTS_SIGNED_TRACTION_BRAKING DIAL )

Position ( 319 223 3 32 )

Graphic ( ../../Common.Cab/CabE464/AgoDin.ace )

Style ( NEEDLE )

ScaleRange ( -761 1600 )

ScalePos ( 190 70 )

Units ( AMPS )

Pivot ( 36 )

DirIncrease ( 0 )

)

 

15.1.11 Commande de freinage total de la traction signée. (+ ou - )

La commande ORTS_SIGNED_TRACTION_TOTAL_BRAKING se comporte et est définie comme la commande

ORTS_SIGNED_TRACTION_BRAKING, à la seule différence que la force de freinage inclut également la force de freinage du train en plus de la force de freinage dynamique.

 

15.1.12 Commandes du compteur kilométrique

Les commandes Cabview suivantes sont disponibles :

• ORTS_ODOMETER : permet d'afficher numériquement la valeur du compteur kilométrique.

  ORTS_ODOMETER_RESET : permet de réinitialiser le compteur kilométrique.

  ORTS_ODOMETER_DIRECTION_CHANGE : permet de changer la direction (haut/bas) de l'odomètre.

Les unités de mesure suivantes sont disponibles pour ORTS_ODOMETER :

  KILOMÈTRES

• METRES

  MILES

  FEET

  YARDS

Le fonctionnement du compteur kilométrique est expliqué au §7.4.11 du manuel.

Voici un exemple d'utilisation des blocs de contrôle de l'odomètre dans un fichier .cvf :

 

TwoState (

Type ( ORTS_ODOMETER_RESET TWO_STATE )

Position ( 320 70 24 22 )

Graphic ( OdoResetButton.ace )

NumFrames ( 2 2 1 )

Style ( WHILE_PRESSED )

MouseControl ( 1 )

)

TwoState (

Type ( ORTS_ODOMETER_DIRECTION TWO_STATE)

Position ( 320 100 13 15 )

Graphic ( OdoDirectionSwitch.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

)

Digital (

Type ( ORTS_ODOMETER DIGITAL)

Position ( 377 100 26 17 )

ScaleRange ( 0 100000 )

Accuracy ( 0 )

AccuracySwitch ( 0 )

LeadingZeros ( 0 )

Justification ( 1 )

PositiveColour ( 1

ControlColour ( 255 255 255 )

)

NegativeColour ( 0 )

DecreaseColour ( 0 )

Units ( FEET )

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15.1.13 Répartition de l'énergie électrique

Les principes de l'alimentation distribuée sont décrits au §8.3.1 du manuel.

Ceci intéresse les trains longs comportant des locomotives insérées dans le milieu de train, en pousse ou les deux.

Les données relatives à l'énergie distribuée peuvent être affichées à l'aide du contrôle ORTS_DISTRIBUTED_POWER. Voici un exemple d'utilisation :

 

ScreenDisplay (

Type ( ORTS_DISTRIBUTED_POWER SCREEN_DISPLAY )

Position ( 164.4 286.5 136 52 )

Parameters (

FullTable True

LoadUnits AMPS

)

Units ( KM_PER_HOUR )

ORTSDisplay ( 1 )

ORTSScreenPage ( "2300-0" )

)

 

Voici un exemple de la sortie du contrôle ci-dessus :

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Lorsque le paramètre FullTable est fixé à False, seules les 6 premières lignes sont affichées. Le paramètre facultatif LoadUnits définit l'unité de mesure utilisée pour le champ Load. La valeur par défaut est AMPS dans un environnement métrique et KILO_LBS dans les autres cas. Les unités de charge sélectionnables sont AMPS, NEWTONS, KILO_NEWTONS, LBS et KILO_KBS. L'affichage de l'écran peut être tourné dans les cabines 2D en ajoutant le paramètre ORTSAngle ( nombre ) dans le bloc ScreenDisplay. L'angle est exprimé en degrés.

Les informations spécifiques aux cabines 3D peuvent être trouvées §15.2.4

Pour chaque commande clavier liée à l'alimentation distribuée, une commande cabview est également disponible. Voici une liste des commandes de la vue cabine

 

- ORTS_DP_MOVE_TO_FRONT

- ORTS_DP_MOVE_TO_BACK

- ORTS_DP_IDLE

- ORTS_DP_TRACTION

- ORTS_DP_BRAKE

- ORTS_DP_MORE

- ORTS_DP_LESS

 

Voici un exemple d'utilisation de l'un des contrôles :

 

TwoState (

Type ( ORTS_DP_MOVE_TO_FRONT TWO_STATE )

Position ( 163.2 378.4 13.75 10 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\softkey1trans.ace" )

NumFrames ( 2 2 1 )

Style ( WHILE_PRESSED )

MouseControl ( 1 )

ORTSDisplay ( 1 )

ORTSScreenPage ( "2300-0" )

)

 

15.1.14 EOT (End of Tran Device -- dispositif de fin de train)

Voir ici pour une description complète des caractéristiques de l'EOT au §8.18 du manuel.

 

Les contrôles suivants sont disponibles pour la gestion de l'EOT :

  ORTS_EOT_BRAKE_PIPE : affiche la valeur de la pression dans la conduite générale au dernier wagon. Affichage

L'affichage est toujours activé (même si l'EOT est désarmée), car cet affichage pourrait être disponible d'une autre manière ; toutefois, il est possible de masquer l'affichage.

Cependant, il est possible de cacher l'affichage en utilisant une texture contrôlée par l'état de l'EOT.

  ORTS_EOT_STATE_DISPLAY : peut avoir des valeurs de 0 à 5, correspondant aux états listés ici.

• ORTS_EOT_ID : l'identifiant EOT est généré sous la forme d'un nombre aléatoire à 5 chiffres et peut être affiché dans la cabine à l'aide de cette commande. La saisie de l'identifiant par le conducteur du train n'est pas possible, car les fichiers .cvf ne prennent actuellement pas en charge la saisie de données numériques.

  ORTS_EOT_COMM_TEST : commande du conducteur lançant le test de communication entre la locomotive et l'EOT. et l'EOT

  ORTS_EOT_ARM_TWO_WAY : commande du conducteur pour faire passer l'EOT de l'armement immédiat à l'armement à deux voies.

  ORTS_EOT_DISARM : fait passer l'EOT à l'état désarmé.

  ORTS_EOT_EMERGENCY_BRAKE (on-off) : permet à l'EOT de purger la conduite générale du dernier wagon.

 

Ces commandes ne sont disponibles qu'à l'aide de la souris ; seule la dernière peut être utilisée avec la combinaison de touches <Ctrl+BackSpace>.

La commande ORTS_EOT_EMERGENCY_BRAKE peut être implémentée dans la cabine par un interrupteur ON-OFF.

Voici un exemple de mise en œuvre des commandes ci-dessus dans un fichier .cvf :

 

TwoState (

Type ( ORTS_EOT_COMM_TEST TWO_STATE )

Position ( 474 385 16.25 10 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\softkey5trans.ace" )

NumFrames ( 2 2 1 )

Style ( WHILE_PRESSED )

MouseControl ( 1 )

ORTSDisplay ( 0 )

ORTSScreenPage ( "2100-0" )

)

TwoState (

Type ( ORTS_EOT_DISARM TWO_STATE )

Position ( 493 385 16.25 10 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\softkey5trans.ace" )

NumFrames ( 2 2 1 )

Style ( WHILE_PRESSED )

MouseControl ( 1)

ORTSDisplay ( 0 )

ORTSScreenPage ( "2100-0" )

)

TwoState (

Type ( ORTS_EOT_ARM_TWO_WAY TWO_STATE )

Position ( 511.7 385.7 16.25 10 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\softkey7trans.ace" )

NumFrames ( 2 2 1 )

Style ( WHILE_PRESSED )

MouseControl ( 1 )

ORTSDisplay ( 0 )

ORTSScreenPage ( "2100-0" )

)

MultiStateDisplay (

Type ( ORTS_EOT_STATE_DISPLAY MULTI_STATE_DISPLAY )

Position ( 516 314.5 17 5.15 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\CommTest.ace" )

States ( 2 2 1

State (

Style ( 0 )

SwitchVal ( 0 )

)

State (

Style ( 0 )

SwitchVal ( 2 )

)

)

ORTSDisplay ( 0 )

ORTSScreenPage ( "2100-0" )

)

Digital (

Type ( ORTS_EOT_ID DIGITAL )

Position ( 421 313 22 8 )

ScaleRange ( 0 999999 )

Accuracy ( 0 )

AccuracySwitch ( 0 )

LeadingZeros ( 0 )

Justification ( 1 )

PositiveColour ( 1

ControlColour ( 255 255 255 )

)

NegativeColour ( 1

ControlColour ( 255 255 0 )

)

DecreaseColour ( 0

ControlColour ( 0 0 0 )

)

Units ( KILO_LBS )

ORTSFont ( 6 0 "Arial" )

ORTSDisplay ( 0 )

ORTSScreenPage ( "2100-0" )

)

MultiStateDisplay (

Type ( ORTS_EOT_STATE_DISPLAY MULTI_STATE_DISPLAY )

Position ( 513.5 328 22.66 5.15 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\EOTStatus2.ace" )

States ( 4 4 1

State (

Style ( 0 )

SwitchVal ( 0 )

)

State (

Style ( 0 )

SwitchVal ( 2 )

)

State (

Style ( 0 )

SwitchVal ( 4 )

)

State (

Style ( 0 )

SwitchVal ( 5 )

)

)

ORTSDisplay ( 0 )

ORTSScreenPage ( "2100-0" )

)

MultiStateDisplay (

Type ( ORTS_EOT_STATE_DISPLAY MULTI_STATE_DISPLAY )

Position ( 431.4 292.1 9 5 )

Graphic ( "..\\..\\Common.Cab\\ES44v3\\MaskEOT.ace" )

States ( 2 2 1

State (

Style ( 0 )

SwitchVal ( 0 )

)

State (

Style ( 0 )

SwitchVal ( 2 )

)

)

)

TwoState (

Type ( ORTS_EOT_EMERGENCY_BRAKE TWO_STATE )

Position ( 53.5 344.2 21.4 42.8 )

Graphic ( ..\\..\\Common.Cab\\ES44v3\\EOTEmergency.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

MouseControl ( 1 )

)

 

15.1.15 Débitmètre d'air

Cette commande de cabine est utilisée sur certaines locomotives, en particulier en Amérique du Nord, pour indiquer le débit volumétrique de l'air qui passe de la conduite principale à la conduite générale pendant le desserrage ou la recharge. Cette indication peut être utilisée pour déterminer quand le remplissage de la conduite générale est terminé, pour mesurer la quantité de fuites dans la conduite générale, etc. La commande ne fonctionnera que sur les locomotives équipées de freins à air.

Voici un exemple d'implémentation de ORTS_AIR_FLOW_METER en tant que cadran analogique (des types d'affichage autres que des cadrans analogiques peuvent être utilisés) :

 

Dial (

Type ( ORTS_AIR_FLOW_METER DIAL )

Position ( 258 271 1 32 )

Graphic ( "white_needle.ace" )

Style ( NEEDLE )

ScaleRange ( 0 150 )

ScalePos ( 295 65 )

Units ( CUBIC_FT_MIN )

Pivot ( 24 )

DirIncrease ( 0 )

)

 

Par ailleurs, un type de contrôle ORTS_TRAIN_AIR_FLOW_METER peut être utilisé pour afficher le débit d'air total de toutes les locomotives, ce qui est utile dans le cas d'une alimentation électrique distribuée où plusieurs locomotives peuvent charger la conduite générale en même temps. Les unités applicables définies par l'utilisateur sont CUBIC_FT_MIN, LITERS_S, LITERS_MIN et CUBIC_M_S. Les mètres cubes par seconde seront utilisés si aucune unité n'est spécifiée.

 

15.1.16 Essuie-glaces 2D animés

Cette commande permet d'animer les essuie-glaces vus d'une cabine en 2D. L'animation est activée/désactivée par la touche V.

Voici un exemple de bloc de commande des essuie-glaces en 2D dans le fichier .cvf

 

ORTSAnimatedDisplay (

Type ( ORTS_2DEXTERNALWIPERS MULTI_STATE_DISPLAY )

Position ( 155 0 331.875 236.25 )

Graphic ( ..//..//Common.Cab//CabE464_DMI//e464Tergicristallo9.ace )

ORTSCycleTime ( 1.35 )

States ( 9 3 3

State (

Style ( 0 )

SwitchVal ( 0 )

)

State (

Style ( 0 )

SwitchVal ( 0.11 )

)

State (

Style ( 0 )

SwitchVal ( 0.22 )

)

State (

Style ( 0 )

SwitchVal ( 0.33 )

)

State (

Style ( 0 )

SwitchVal ( 0.44 )

)

State (

Style ( 0 )

SwitchVal ( 0.55 )

)

State (

Style ( 0 )

SwitchVal ( 0.66 )

)

State (

Style ( 0 )

SwitchVal ( 0.77 )

)

State (

Style ( 0 )

SwitchVal ( 0.88 )

)

)

)

 

 

ORTSCycleTime est exprimé en secondes. Le fichier .ace ne doit contenir que les images relatives au demi-cycle, c'est-à-dire que si, par exemple, l'essuie-glace se déplace de gauche à droite et inversement, seules les images relatives au mouvement de gauche à droite doivent être incluses. Pour le mouvement inverse, les mêmes images sont utilisées de la dernière à la première. SwitchVal peut varier de 0 à 1.

 

15.1.17 Étiquettes de contrôle

La chaîne de caractères apparaissant à l'écran lorsque la souris survole une commande peut être personnalisée à l'aide de la ligne suivante, à ajouter dans le bloc de commande du fichier .cvf :

ORTSLabel ("string" )

 

15.1.18 Affichage alternatif de plusieurs pages sur un écran

Les locomotives modernes disposent d'un ou de plusieurs écrans dans leur cabine, et il est souvent possible de passer d'une page d'écran à l'autre. Les champs et les commandes décrits dans le présent paragraphe permettent de mettre en œuvre des fichiers .cvf dotés d'une telle fonctionnalité, pour les cabines 2D et 3D.

Dans les blocs de contrôle .cvf, les champs suivants peuvent être présents de manière facultative

 

ORTSDisplay ( numérique ), indiquant le numéro d'identification de l'affichage (de 0 à 7) auquel le contrôle est lié ; si ce champ est manquant, le numéro d'identification de l'affichage zéro est supposé ;

 

ORTSScreenPage ( chaîne alphanumérique ) indiquant la chaîne d'identification de l'écran auquel le contrôle est lié ; cela signifie que le contrôle est affiché/peut être utilisé uniquement si son écran est actif à ce moment-là ; une entrée manquante indique que le contrôle est affiché indépendamment de la page d'écran sélectionnée ; au début du jeu, de tels contrôles sont activés, ainsi que ceux avec la ligne ORTSScreenPage ("default" ) ; plusieurs entrées ORTSScreenPage() dans un seul contrôle sont possibles.

 

Un nouveau contrôle on/off, appelé ORTS_SCREEN_SELECT est disponible, qui, en plus des champs habituels et des champs optionnels ORTSDisplay et ORTSScreenPage contient un ou plusieurs des champs suivants :

 

ORTSNewScreenPage ( alphanumeric-string numeric ) : lorsque le contrôle est cliqué, les contrôles dont le champ ORTScreenPage est égal à la chaîne de ce champ et dont le champ ORTSDisplay est égal au numérique seront affichés sur cet écran à la place de ceux affichés jusqu'à ce moment. si le numérique est manquant dans ORTSNewScreenPage, l'écran concerné est celui référencé dans le champ ORTSDisplay de ORTS_SCREEN_SELECT.

 

Un autre contrôle est disponible, nommé ORTS_STATIC_DISPLAY, qui est spécialement dédié au chargement de l'arrière-plan des pages d'écran (leur partie statique). Voici un exemple d'utilisation :

 

MultiStateDisplay (

Type ( ORTS_STATIC_DISPLAY MULTI_STATE_DISPLAY )

Position ( 246 151 105 16 )

Graphic ( semproniostatic.ace )

States ( 1 1 1

State (

Style ( 0 )

SwitchVal ( 0 )

)

)

ORTSScreenPage ( "sempronio" )

)

 

Avec ce bloc, la partie statique de la page d'écran "sempronio" est chargée sur l'écran 0 lorsque cet écran devient actif.

Les fichiers .cvf qui n'utilisent pas les champs et les contrôles énumérés dans ce paragraphe, fonctionnent comme d'habitude, sans qu'aucune modification ne soit nécessaire.

 

15.1.19 Autres commandes de la cabine dans OR

OR prend en charge la commande de la vue de la cabine pour ouvrir/fermer les portes de gauche, les portes de droite et les rétroviseurs. Les blocs de contrôle sont similaires à ceux présentés pour l'éclairage de la cabine. Les chaînes de type sont ORTS_LEFTDOOR, ORTS_RIGHTDOOR et ORTS_MIRRORS.

 

15.1.20 Contrôles de cabine pour les éléments génériques

OR prend en charge les contrôles de la vue cabine pour deux éléments génériques à deux états. Les commandes de la vue cabine sont appelées <ORTS_GENERIC_ITEM1> et <ORTS_GENERIC_ITEM2>. Leur état peut également être modifié en cliquant respectivement sur les touches <Shift+.> et <Shift+,>.

Des événements sonores sont associés, c'est-à-dire :

 

240: GenericItem1On

241: GenericItem1Off

242: GenericItem2On

243: GenericItem2Off

 

Les animations contenues dans le fichier .s de la locomotive, qu'elles soient à l'arrêt/en mouvement ou à deux états, peuvent être associées à l'état de l'élément. Les animations liées d'arrêt/mouvement (type essuie-glace) sont nommées <ORTSITEM1CONTINUOUS> et <ORTSITEM2CONTINUOUS>. Les animations liées à deux états (type portes) sont nommées <ORTSITEM1TWOSTATE> et <ORTSITEM2TWOSTATE>. La vitesse d'animation par défaut pour les animations de type arrêt/mouvement est de 8 FPS. Elle peut être modifiée à l'aide du paramètre suivant dans le fichier .sd :.

 

ESD_CustomAnimationSpeed ( 8 )

 

Les exemples d'utilisation sont la commande des ventilateurs, l'ouverture/la fermeture des protections aérodynamiques des attelages dans les trains à grande vitesse, la commutation des pages de menu.

Des animations dans le fichier .s de la cabine 3D sont également disponibles, comme suit :

 

ORTS_ITEM1CONTINUOUS

ORTS_ITEM2CONTINUOUS

ORTS_ITEM1TWOSTATE

ORTS_ITEM2TWOSTAT

 

par analogie avec les quatre animations du fichier .s de la locomotive.

 

15.1.21 Images cabine d’arrière plan en haute résolution et contrôles

Dans MSTS, la résolution de l'image d'arrière-plan de la cabine est limitée à 1024x1024 ; cette limitation ne s'applique pas dans OR, qui gère mieux les grandes textures. Les arrière-plans de cabine en 2D peuvent atteindre au moins 3072x3072 ; toutefois, des résultats très fins peuvent être obtenus avec une résolution de 2560x1600. L'image ne doit pas nécessairement être carrée. Les animations de cabine en 2D ont également été grandement améliorées ; nous vous rappelons ici qu'il existe deux types de jauges rotatives animées, à savoir les jauges normales et les animations générales utilisant plusieurs images. Dans ce second cas, dans MSTS, toutes les images devaient être présentes dans une seule texture avec une résolution maximale de 640x480. Dans OR, ces images peuvent être aussi grandes que souhaité et OR les mettra à l'échelle à la bonne taille. En général, il n'est pas nécessaire d'utiliser une résolution supérieure à 200x200 pour chaque image.

La syntaxe à utiliser dans le fichier .cvf est la syntaxe standard définie par MSTS.

Pour clarifier ce point, les paramètres de position d'un exemple de bloc d'aiguille sont décrits ici.

Dans la déclaration de position, les deux premiers nombres correspondent à la position du côté supérieur gauche de la texture de l'aiguille en unités cabview, l'aiguille étant en position verticale. Dans le type de cadran, les deux derniers chiffres correspondent à la taille de la texture de l'aiguille. Le dernier chiffre (50 dans l'exemple) contrôle l'échelle de la texture de l'aiguille, c'est-à-dire qu'en le modifiant, on modifie la taille de l'aiguille affichée par l'OR.

 

Dial (

Type ( SPEEDOMETER DIAL )

Position ( 549 156 10 50 )

Graphic ( Speed_recorder_needle_2.01.ace )

Style ( NEEDLE )

ScaleRange ( 0 140 )

ScalePos ( 243 115 )

Units ( KM_PER_HOUR )

Pivot ( 38 )

DirIncrease ( 0 )

)

 

Voici un exemple d'animation de contrôle, une simple animation de 3 images. Les exemples montrés dans les images suivantes sont les deux commutateurs rotatifs situés à droite des deux indicateurs de freinage inférieurs, tous deux à 3 positions. (Le commutateur le plus à gauche est pour les phares). Pour ces animations, le graphique a été réalisé à 1600x1600 ; lorsque chaque image a été terminée, elle a été réduite à 200x200 et placée dans la texture de l'animation. Notez l'extrême netteté de ces commandes dans l'image en médaillon.

 

L'ajout d'un léger flou de 2x2 pixels permet à l'animation de mieux se fondre dans l'arrière-plan (cela a été fait pour les aiguilles de jauge).

 

Vous trouverez ci-dessous la partie correspondante du CVF. La mise à l'échelle est contrôlée par les deux derniers chiffres de la déclaration de position

 

TriState (

Type ( DIRECTION TRI_STATE )

(continues on next page)

15.1. 2D Cabs 339

Open Rails T1.5.1-922-g0a17d985e Manual, Release 1.5.1.922

(continued from previous page)

Position ( 445 397 35 35 )

Graphic ( Switch_nob_3.0_Transmission.ace )

NumFrames ( 3 3 1 )

Style ( NONE )

MouseControl ( 1 )

Orientation ( 0 )

DirIncrease ( 0 )

)

 

Notez que le voyant "Airbrake On" (sur le panneau en haut à gauche) a également été animé. Il s'agit d'une simple animation

simple.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Ci-dessus, deux images d'une vue de cabine 2D haute résolution, l'une montrant la totalité de la cabine et l'autre le détail de certaines commandes. Dans cet exemple, l'image d'arrière-plan de la cabine a été réduite à 2560x1600. La texture de l'aiguille de l'enregistreur de vitesse est de 183x39 et celle de l'aiguille de l'indicateur de freinage de 181x29. Ceci est nécessaire car OR (et MSTS) supposent que l'aiguille est au centre de l'image. Les images de l'animation de l'inverseur de marche et de l'interrupteur des phares sont de 116x116.

Il n'y a pas encore d'outils spécifiques pour créer ces cabviews ; un programme de manipulation d'image standard pour faire toutes les textures est nécessaire, et pour créer de nouveaux éléments, par exemple les faces des jauges, un programme de dessin standard peut être utilisé. Pour configurer la vue de cabine et positionner les animations, le fichier .cvf est modifié à l'aide d'un éditeur de texte standard, et OR est utilisé comme visualisateur, en utilisant une section droite de voie sur un itinéraire à chargement rapide. Par itérations successives, on arrive assez rapidement à un résultat satisfaisant

 

15.1.22 Polices configurables

OR prend en charge une famille de polices configurable, avec sélection de la taille de la police et choix du style normal ou gras. Il est possible d'utiliser plusieurs polices ou tailles dans la même vue de cabine. Cela n'affecte pas l'affichage dans MSTS.

Une ligne facultative de la forme ORTSfont ( fontsize fontstyle "fontfamily" ) doit être insérée dans le bloc .cvf de la commande numérique ou de l'horloge numérique, où fontsize est un nombre flottant (valeur par défaut 10), fontstyle un nombre entier ayant la valeur 0 (par défaut) pour regular et 1 pour bold, et fontfamily est une chaîne avec le nom de la famille de polices (par exemple, "Times New Roman"). La valeur par défaut est "Courier New". Une police pratique, si elle est disponible, est "Quartz MS" ou "Quartz", qui modélise un affichage à 7 segments.

Voici un exemple d'affichage de l'horloge numérique avec une police en gras de 12 points utilisant la famille de polices Sans Serif.

 

DigitalClock (

Type ( CLOCK DIGITAL_CLOCK )

Position ( 40 350 56 11 )

Style ( 12HOUR )

Accuracy ( 1 )

ControlColour ( 255 255 255 )

ORTSFont ( 12 1 "Sans Serif" )

)

 

Il est acceptable que seul le premier paramètre de ORTSFont soit présent, ou seulement les deux premiers, ou les trois. Notez que vous ne pouvez pas utiliser l'éditeur MS Cabview sur le fichier .cvf après avoir inséré ces lignes optionnelles, car l'éditeur supprimera ces lignes ajoutées lorsque le fichier sera sauvegardé.

 

15.1.23 Rotation des jauges et des commandes numériques

L'un des inconvénients du rendu d'une vue de cabine en 2D est que certaines parties ne sont pas représentées avec une vue frontale, précisément verticale ou horizontale. L'affichage d'une jauge verticale ou d'une commande numérique horizontale génère un effet irréaliste. C'est la raison d'être de l'entrée suivante, à ajouter dans un bloc de contrôle Gauge ou Digital cabview dans le fichier .cvf :

 

ORTSAngle ( 5 )

 

Le chiffre entre parenthèses est l'angle en degrés par rapport à l'horizontale (ou à la verticale pour les jauges verticales). Les valeurs positives indiquent une rotation dans le sens inverse des aiguilles d'une montre.

À gauche de l'image, un exemple de jauge verticale blanche ayant subi une rotation de 12 degrés.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Voici un exemple d'une indication de vitesse maximale rouge qui a été tournée de 5 degrés.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Les jauges peuvent avoir le style POINTER ou SOLID.

La rotation peut être appliquée, avec la même syntaxe, aux commandes de la cabine DigitalClock.

 

15.1.24 Affichage et animation des commandes de la cabine dans les vues latérales des cabines 2D

Ceci est possible en ajoutant après le bloc composé CabViewControls ( ) un bloc composé ORTSCabviewControls ( ), qui a le même format que le bloc CabViewControls ( ). La sélection du point de vue de la cabine où le contrôle est affiché/animé est effectuée par une ligne :

 

ORTSCabviewPoint ( n )

 

where n is the ordinal position of the cabview point in the header of the .cvf file.

Here an example:

 

 

Tr_CabViewFile (

 

CabViewType ( 1 )

 

CabViewFile ( CV_Front.ace )

CabViewWindow ( 0 0 1024 768 )

CabViewWindowFile ( "" )

Position ( -0.517699 2.78 8.63 )

Direction ( 0 0 0 )

 

CabViewFile ( CV_Left.ace )

CabViewWindow ( 0 0 1024 768 )

CabViewWindowFile ( "" )

Position ( -0.517699 2.78 8.63 )

Direction ( 0 -48 0 )

 

CabViewFile ( CV_Right.ace )

CabViewWindow ( 0 0 1024 768 )

CabViewWindowFile ( "" )

Position ( -0.517699 2.78 8.63 )

Direction ( 0 71.5 0 )

 

EngineData ( BStE-ET_169a_Jm )

 

CabViewControls ( 10

Dial (

Type ( MAIN_RES DIAL )

Position ( 163 32 8 30 )

Graphic ( CV_Pointer.ace )

Style ( POINTER )

ScaleRange ( 0 10 )

ScalePos ( 227 152 )

Units ( BAR )

Pivot ( 20 )

DirIncrease ( 0 )

)

...

)

ORTSCabviewControls ( 12

TwoState ( Comment( Wiperswitch in right cabviewpoint )

Type ( WIPERS TWO_STATE )

Position ( 500 165 13 24 )

Graphic ( CV_WIPERSSwitch.ace )

NumFrames ( 2 2 1 )

Style ( ONOFF )

MouseControl ( 1 )

ORTSCabviewPoint ( 2 )

)

...

)

 

 

Dans cet exemple, ORTSCabviewPoint fait référence au troisième point de vue (0 fait référence au point de vue central principal) défini dans l'en-tête .cvf, c'est-à-dire le point de vue latéral droit.

Notez que dans Open Rails, vous pouvez avoir plus de trois points de vue définis pour les cabines 2D.

 

15.2  Cabines 3D

Si la locomotive possède une cabine 3D, celle-ci sera sélectionnée par défaut par le simulateur. Vous pouvez appuyer sur la touche <1> pour entrer dans la cabine. Si la locomotive est équipée d'une cabine 2D et d'une cabine 3D, la touche <Alt+1> permet de passer de l'une à l'autre.

 

15.2.1 Règles de développement

 

  La cabine 3D est décrite par un fichier .s, les fichiers .ace ou .dds associés et un fichier .cvf portant le même nom que le fichier .s. La cabine 3D est décrite par un fichier .ace ou .dds associé.

nom que le fichier .s. Tous ces fichiers se trouvent dans un dossier nommé CABVIEW3D créé dans le dossier principal de la locomotive.

de la locomotive.

  Si le fichier .cvf ne se trouve pas dans le dossier CABVIEW3D, la cabine 3D est associée au fichier .cvf de la cabine 2D.

de la cabine 2D.

  Les instruments sont nommés selon les mêmes conventions que les cabines 2D, c'est-à-dire FRONT_HLIGHT, SPEEDOMETER, etc.

  Une cabine peut avoir plusieurs instances des mêmes instruments, par exemple plusieurs horloges ou compteurs de vitesse.

compteurs de vitesse.

• Les instruments sont triés en fonction de leur ordre d'apparition dans le fichier .cvf, par exemple

SPEEDOMETER:0 correspond au premier compteur de vitesse du fichier .cvf, SPEEDOMETER:1 correspond au deuxième.

au deuxième.

  Un instrument peut avoir plusieurs sous-groupes pour rendre l'animation réaliste, par exemple,

TRAIN_BRAKE:0:0 et TRAIN_BRAKE:0:1 appartiennent à l'instrument TRAIN_BRAKE:0. Cependant, si l'instrument

l'instrument est un appareil numérique, le deuxième chiffre sera utilisé pour indiquer la taille de la police utilisée, par exemple

par exemple SPEEDOMETER:1:14 signifie que le deuxième compteur de vitesse (qui est numérique comme défini dans le fichier .cvf) sera rendu avec une police de 14 points.

sera rendu avec une police de 14 points. Ceci pourra être modifié dans les prochaines versions de l'OR. L'information importante

pour un dispositif numérique est son emplacement, il peut donc être défini comme un objet avec une petite face unique dans le modèle 3D.

modèle 3D.

  Les plages d'animation doivent être en accord avec le fichier .cvf

  Dans la section Wagon du fichier .eng, un bloc comme le suivant doit être généré :

 

ORTS3DCab(

ORTS3DCabFile ( Cab.s )

ORTS3DCabHeadPos ( -0.9 2.4 5.2 )

RotationLimit ( 40 60 0 )

StartDirection ( 12 0 0 )

)

 

  Si une cabine arrière est également présente, une deuxième ORTS3DCab doit être ajoutée, comme suit :

 

ORTS3DCab(

ORTS3DCabFile ( Cab.s )

ORTS3DCabHeadPos ( 0.9 2.4 5.2 )

RotationLimit ( 40 60 0 )

StartDirection ( 12 180 0 )

)

 

   Des points de vue 3D alternatifs peuvent être ajoutés, comme dans l'exemple ci-dessous :

 

ORTSAlternate3DcabViewPoints (

ORTSAlternate3DCabViewPoint(

ORTS3DCabFile ( Cab.s )

ORTS3DCabHeadPos ( 0.9 2.4 5.2 )

RotationLimit ( 40 60 0 )

StartDirection ( 12 0 0 )

)

ORTSAlternate3DCabViewPoint(

ORTS3DCabFile ( Cab.s )

ORTS3DCabHeadPos ( -0.8 2.4 5.2 )

RotationLimit ( 40 60 0 )

StartDirection ( 12 30 0 )

)

)

 

 

  Pour passer d'un point de vue cabine à l'autre, il faut appuyer sur Ctrl-Maj-1. Si aucun point de vue alternatif n'est défini, et s'il n'y a pas de cabine arrière, la touche Ctrl-Maj-1 permet de basculer entre le point de vue de base et un point de vue symétrique sur l'axe longitudinal.

 

  Il est également possible d'animer les essuie-glaces, en insérant dans le fichier .s une animation nommée EXTERNALWIPERS:0:0

 

  Les jauges de type solide doivent être nommées AMMETER:1:10:100 ; où les trois chiffres indiquent qu'il s'agit du deuxième

ampèremètre, qu'il a une largeur de 10 mm et une longueur maximale de 100 mm. La couleur et la direction/orientation suivent celles définies dans les fichiers .cvf.

 

  Les chiffres pour les cabines 3D peuvent désormais utiliser des fichiers ACE personnalisés ; par exemple, nommez la pièce CLOCK:1:15:CLOCKS. Cela dessinera la deuxième horloge avec une taille de police de 15 mm, le fichier CLOCKS.ACE dans CABVIEW3D contenant la police. Si aucun ace n'est spécifié, la valeur par défaut sera utilisée.

 

  Les rétroviseurs et les portes peuvent être commandés depuis les cabines 3D. Les noms utilisés sont LEFTDOOR, RIGHTDOOR et MIRRORS.

 

  L'animation des fenêtres des cabines 3D est décrite au §9.9 du manuel.

 

  Comme les cabines 2D, les cabines 3D peuvent également avoir une version nocturne. Les textures nocturnes, nommées comme les textures diurnes correspondantes, doivent être placées dans un sous-dossier NIGHT du dossier CABVIEW3D. Pour activer les cabines de nuit, un fichier .sd portant le même nom que le fichier de forme de la cabine 3D doit être présent dans le dossier CABVIEW3D. Ce fichier .sd a un format standard et doit contenir la ligne suivante :

 

ESD_Alternative_Texture ( 256 )

 

   La manière de contrôler la vue dans une cabine 3D est décrite ici.

Une rame de démonstration avec une cabine 3D, qui peut être utile aux développeurs, peut être téléchargée à l'adresse suivante : http://www.tsimserver.com/Download/Df11G3DCab.zip.

 

15.2.2 Exemple pratique de développement d'un compteur de vitesse numérique

Supposons que vous souhaitiez créer un compteur de vitesse numérique utilisant une police de taille 14. Pour l'expliquer en langage gmax, vous devez avoir un objet appelé SPEEDOMETER dans la vue cabine et il doit être composé d'au moins une face.

 

Comme l'exemple de cabine ne comporte qu'un seul compteur de vitesse numérique, il peut être nommé SPEEDOMETER_0_14.

 

Le chiffre 0 indique qu'il s'agit du premier indicateur de vitesse de la cabine et le chiffre 14 indique la taille de la police à afficher. Notez qu'un trait de soulignement est utilisé pour séparer les nombres, car l'outil d'exportation LOD ne prend pas en charge l'utilisation de deux points dans les noms d'objets lors de l'exportation. Nous y reviendrons plus tard.

 

La vitesse n'est pas affichée à l'endroit où se trouve la face de l'objet SPEEDOMETER, mais à l'endroit où se trouve le point de pivot de l'objet SPEEDOMETER. Normalement, vous devriez placer l'objet SPEEDOMETER quelque part dans la cabine où il ne sera pas vu.

 

L'objet SPEEDOMETER_0_14 étant sélectionné dans gmax, accédez à l'onglet Hiérarchie, sélectionnez Affecter le pivot uniquement et cliquez sur Aligner sur le monde pour réinitialiser l'orientation aux coordonnées du monde. Utilisez ensuite l'outil Sélectionner et déplacer pour déplacer le pivot à l'endroit de la cabine où vous souhaitez que les chiffres apparaissent.

 

Comme vous avez aligné le point pivot sur les coordonnées mondiales, les chiffres s'afficheront verticalement. Comme la plupart des écrans primaires des locomotives sont normalement inclinés, vous devrez peut-être faire pivoter le point pivot pour qu'il s'aligne sur l'angle de l'écran d'affichage.

 

Exportez le fichier .S pour la cabine comme suit :

 

Vous devrez ensuite décompresser le fichier .s de la cabine à l'aide du gestionnaire de fichiers Shape ou de l'outil de décompression de fichiers .S de votre choix.

Ouvrez ensuite le fichier .S avec un éditeur de texte et recherchez les lettres "speed" jusqu'à ce que vous trouviez la première occurrence de SPEEDOMETER_0_14 et modifiez-la en SPEEDOMETER:0:14.

 

Cherchez à nouveau la deuxième occurrence de SPEEDOMETER_0_14 et remplacez-la également par SPEEDOMETER:0:14. Enregistrez le fichier .S dans l'éditeur de texte.

Il ne reste plus qu'une chose à faire. Téléchargez la rame de démonstration DF11G3DCab. Dans le dossier CABVIEW3D de ce téléchargement, vous trouverez un fichier ace appelé SPEED.ACE. Copiez ce fichier et collez-le dans le dossier CABVIEW3D de votre modèle.

 

Maintenant, ouvrez OR et testez votre indicateur de vitesse.

 

15.2.3 FUEL_GAUGE pour les locomotives à vapeur

Le cadran FUEL_GAUGE est également disponible pour les locomotives à vapeur. Il peut être utilisé à la fois pour afficher un niveau de carburant pour les locomotives à vapeur fonctionnant au fuel lourd (également dans les cabines 2D), et pour animer le niveau de charbon dans une locomotive à réservoir. L'unité de mesure par défaut est le Kg ; l'unité de mesure alternative peut être le LBS. Voici un exemple d'entrée pour une cabine 3D :

 

Dial (

Type ( FUEL_GAUGE DIAL )

Style ( POINTER )

ScaleRange ( 0 5000 )

Units ( LBS )

)

 

15.2.4 Affichage de la puissance répartie

Les informations suivantes s'appliquent à la création d'un affichage de puissance distribuée dans les cabines 3D, en plus de ce qui est décrit au §15.1.13 pour les cabines 2D.

Dans le fichier 3Dcab .s, un objet ORTS_DISTRIBUTED_POWER doit être défini, avec les mêmes règles syntaxiques que pour les numériques, par exemple ORTS_DISTRIBUTED_POWER:0:8:DPI , où 8 est la taille de la police de caractères sélectionnée et DPI est la texture DPI.ace associée.

Dans le dossier où se trouvent les fichiers cab 3D (généralement CABVIEW3D), ce fichier DPI.ace doit être présent.

Un fichier d'exemple se trouve dans DocumentationSampleFiles\Manual\DPI.zip .

 

Il est possible de personnaliser ce fichier en suivant les règles suivantes :

 

1.      Le rapport horizontal/vertical doit être conservé.

 

2. Les caractères des quatre premières lignes doivent être centrés dans leur rectangle.

 

3. À partir de la cinquième ligne, les caractères peuvent également être espacés de manière plus épaisse (comme pour la chaîne de caractères "Idle" dans l'image ci-dessus).

 

4. À partir de la 5e ligne, les chaînes de caractères peuvent être remplacées par des chaînes dans d'autres langues nationales, à condition que les nouvelles chaînes ne soient pas plus larges que les originales.

 

5. Il devrait être possible d'avoir un arrière-plan transparent si l'on préfère.

A l'exception de la première colonne, les champs de l'affichage de la puissance distribuée en 3D sont toujours alignés au centre.

 

15.2.5 Alignement des commandes numériques

Pour des raisons de compatibilité ascendante, les justifications ( 1 ), ( 2 ) et ( 3 ) conduisent toutes à un alignement à gauche du numérique dans 3Dcabs.

 

La justification ( 5 ) doit être utilisée pour un alignement au centre et la justification ( 6 ) doit être utilisée pour un alignement à droite. La justification ( 4 ) conduit à un alignement à gauche.

 

 

 

24/03/2024

Traduction du manuel OR Chapitre 15 Las cabines 2D et 3D

JPG