- DiCoS69 a écrit:
- Méfies-toi des conditions à tiroirs surtout basées sur des mouvements aléatoires....tu finiras par y perdre tes petits...
Essaye-donc d'envisager d'autres solutions à base d'éléments fixes...
C'est vrai que ça se complexifie vite au fur et à mesure que l'on ajoute des trajets qui rajoutent de la combinatoire.
Avant tout codage dans TC, je fais :
- schémas synthétiques sur papier des trajets impliqués dans les situations de contrainte
- rédaction en français des conditions
Quand quelque chose fonctionne mal, je reprends d'abord les schémas et pour finir je vérifie la traduction dans le langage TC.
Il faut aussi mettre au crédit de TC toutes les aides à la mise au point : simulation, contrôle de trafic, Dr Railroad, messages persos, info-bulles, .... Même s'il y a des cas plus délicat à tracer (l'état des conditions par ex). Mais rares sont les logiciels qui offrent autant d'aides. Il n'y a qu'à voir ce qu'il y a dans nos PC.
Pour en revenir au fond Freiwald m'a répondu :
- la présence d'un trajet n'est testable que lorsqu'il est réellement actif (et uniquement cet état), c'est à dire que le prédécesseur est terminé. Dans mon cas B est d'abord dans un statut de pré-réservé quand A est encore actif, avant de devenir actif quand A se termine. C'est finalement logique puisqu'un train ne peut être que sur un seul trajet à la fois.
- la solution consiste à ajouter une condition au lancement de C : NOT COMBI de (A actif ET dernier canton de A occupé). Ca répond à mon problème.
J'ai eu 2 réponses dans l'après midi. Il a été très réactif et explicatif.
A+
Alain