Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Pierre59

Pages: [1] 2 3 ... 23
1
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 23, 2025, 11:19:52 am »
Juste une petite remarque, dans les fichiers Json les nombres (entiers ou réels) s'écrivent sans double quote ; 22 3.14

Pierre

2
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 22, 2025, 03:13:45 pm »

Dans ta bretelle double il y a trop de zones et de signaux.

C11 et C13 ne servent pas à grand chose.

Deux zones suffisent pour toute la bretelle (Z61 et Z65), la coupure des zones se fait au milieu du croisement.


Par ailleurs si tu veux réaliser ta gare, ce genre de bretelle est insuffisant, il faut pouvoir remplacer chaque aiguille par une TJD,TJS,Croisement, …

Pierre

3
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 22, 2025, 11:19:30 am »
Bonjour Pierre,

Finalement, je propose de renommer les "super-appareils" en "claviers", avec des boutons, car c'est vraiment à ça que ça correspond.

Pour un aiguillage simple, un clavier à 2 boutons (on ne gagne rien)

Pour une TJD, un clavier à 4 boutons (on ne gagne rien)

Pour une TJS, un clavier à 3 boutons (on gagne déjà un bouton)

Pour une bretelle double, on a un clavier à 3 boutons (on gagne 7 boutons).
Il y a, en effet, 5 appareils (4 aiguillages et une traversée) qui sont, chacun, à 2 boutons, soit 10 boutons.
Et, en combinaison de boutons, on a 2^5 = 32 combinaisons dont seulement 3 sont utiles !
Et j'insiste bien : dans la bretelle double, il y a bien les 7 zones (une par appareil + une section en haut et une section en bas).

Pour l'ancien "SU19", appelé maintenant "CLV19", pour "Clavier 19", on a 4 boutons.
Comme il y a 3 appareils à 2 boutons, on gagne 2 boutons, mais on passe de 2^3 = 8 possibilités à 4 seulement.

Je ne vois pas bien ce que vient faire ici ce mégotage de boutons, de toute façon on va par la suite commander les aiguilles par les itinéraires.

On est dans un gestionnaire, et on va avoir besoin des voisins des zones, c'est de cela dont il faut s'occuper maintenant.

Ton idée d' "appareil" de voie était séduisante. Je vois plusieurs "appareils" possibles : l'aiguille simple, deux aiguilles en bretelle, le croisement, la TJD, la TJS, l'aiguille triple, la bretelle double. Comment pourrait on coder tout cela.

Je ne vois pas du tout l'utilité du SU19 (quelque soit son nom), on a une bretelle (a15 et a16) et une aiguille (a13).

Pierre

4
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 22, 2025, 10:56:54 am »

Faut laisser tomber, pour l'instant, les clés "itineraires", "auts", "trains", ...

Pierre

5
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 22, 2025, 10:23:37 am »
Je vais maintenant expliquer, dans le détail, ce que j'ai compris de ton programme.

Tu utilises HashMap, ce qui permet de gérer des valeurs nulles.
==> une hashtable c'est un ensemble de clé/valeur, les clés ne peuvent pas êtres nulle, les valeurs oui mais cela n'a pas grand intérêt. Ici on s'en sert pour associer un nom (string) a une instance, par exemple associer au nom d'une zone à son instance.
Citer
On démarre dans le simple avec des zones qui ne gèrent que des signaux, pairs et impairs.

On lit l'objet "json", globalement.

On définit l'objet "zones", l'une des clés. Puis les autres objets (signaux, …).
Si j'ai bien compris, on devra citer tous les objets dans le JSON car HashMap n'accepte qu'une clé nulle. Mais leur valeur pourra être nulle.
Dit autrement, je devrai avoir une clé "itinéraire", même si je ne les définis pas. Cela explique peut-être pourquoi ça plantait.
==> je ne comprends pas bien ce que tu veux dire, les hashmap utilisent des clés et des valeurs non nulles.
Citer
Puis tu définis la HashMap "tableZones".

Si j'ai bien compris, la clé est une variable de type String, et la valeur est un objet "zone".
==> tout à fait
Citer
Puis tu fais une boucle forall. Après, la syntaxe est plus floue…
Tu balaie toutes les clés des zones en mettant en String le nom des zones ?
==> on balaye le Json pour obtenir tous les noms des zones (string).
Citer
Le reste de la boucle est clair :
On crée une nouvelle zone.
On ajoute à TableZones un couple (z, zone), z étant une String, celle du balayage, et une zone vide en valeur.
Pareil pour TableSignaux avec un couple (z, signal).

Démarre la phase 2.

On rebalaie toutes les zones.
Là, j'ai encore un problème de syntaxe avec getString("signI", null). Je ne vois pas d'où sort le null.
==> null c'est la valeur par défaut si on ne trouve pas la clé "signI" dans le Json de la zone concernée.
Citer
Après, c'est clair : tu définis la zone, fonction de z, et tu remplis signalI et signalP

C'est une bonne idée d'avoir démarré par une zone et les signaux, car il n'y a que des objets. Quand on arrivera aux ArrayList, ça va être plus coton.
==> c'est vrai que ce sera plus difficile, mais le choix était volontaire.

Pierre

PS de Dominique : pour une meilleure lisibilité j'ai juste inséré "[/quote]" devant les "==>" et le même sans "/"  après  :D

6
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 21, 2025, 05:09:44 pm »
Je suppose que SU19 c'est Z2 (mêmes éléments de voie).

Mais Z2 ne peut être une zone elle peut être parcourue par deux trains en même temps (en 0 et en 1).

Pierre

7
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 21, 2025, 04:45:57 pm »
Dans les postes électromécaniques , les deux deux aiguilles d'une bretelle sont couplées mécaniquement, et il n'y a qu'un seul levier qui manoeuvre les deux aiguille par le biais d'une seule tringle.

Pierre

8
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 21, 2025, 04:40:51 pm »

SU19 ce n'est pas possible, a16 et appairée à a15 ou à a13, mais pas aux deux (il faut choisir).

Pierre

9
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 21, 2025, 01:16:06 pm »
Concernant les appareils, une aiguille ne peut appartenir qu'a une seule bretelle !

Pierre

10
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 21, 2025, 01:14:43 pm »

Voila un début de l'instanciation des zones avec les signaux.

Pierre


11
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 21, 2025, 10:50:06 am »
Dans les exemples donnés, les zones ont les bons numéros, les bons paramètres, mais j'ai pris "au pif" des numéros de Su. C'est un exemple.
Tes su c'est des appareils de voie, on pourrait les appeler appareils ?

Ce qui me manque le plus c'est des exemples concrets avec les dessins de voie correspondant.

A part ça, je suis désolé : je ne sais pas instancier des zones en les remplissant à partir du JSON.

Oui ce n'est pas évident, cela se fait en deux phases :
- PHASE1 pour tous les éléments (zones, appareils, signaux, ...) on crée une instance vide (constructeur sans paramètre new Zone() ) et on met ces instances dans une hashtable (exemple pour zones) déclarée ainsi HashMap<String,Zone> tableZones=new HashMap<String,Zone>();

- PHASE2 pour tous les éléments (zones, appareils, signaux, ...) on cherche l'instance dans la hashtable et on la remplit avec les informations issues du fichier Json.

Pierre

12
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 20, 2025, 05:02:21 pm »
Faut que je regarde plus sérieusement pour les su, les numéros ne me disent rien.

Sinon il faut que l'on commence à écrire le gestionnaire, pour l'instant on a quasiment rien. On pourrait commencer à instancer les zones, sans vouloir tout de suite mettre dedans tous les paramètres.

Pierre

13
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 18, 2025, 06:07:45 pm »
Pour l'instant dans le fichier json je vois des "super appareils" et des "bretelles". Il faudra certainement quelque chose pour les bretelles mais pas forcement comme cela, pour les super appareils je ne vois pas ce que c'est.

Pierre

14
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 18, 2025, 05:51:44 pm »
Je me suis mal exprimé :
 
il faut qu'on ait dans le gestionnaire tous les objets qui sont dans le JSON.
Soit : params, zones, appareils, bretelles, super_appareils, signaux, balises

NON, il faut qu'il y ait dans le gestionnaire uniquement les élémentst nécessaires au fonctionnement du gestionnaire. ET seuls ces éléments doivent se trouver dans le Json !

Pierre

15
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 18, 2025, 04:44:21 pm »
Puisqu'on fait les enveloppes de tous les objets, il faut qu'ils soient tous dans le JSON : zones multiples, super-appareils, ...
On est dans un gestionnaire, on a besoin de zones, point. Il ne faut pas essayer d'ajouter ce qui te sert dans l'éditeur. Mais avoir juste ce qui est nécessaire au gestionnaire.
Il y a un fichier d'essai qui est beaucoup moins gros que Luzy : c'est le réseau de Dominique avec des ajouts pour qu'on ait tous les cas.
J'aimerais bien qu'on utilise celui-là (Z46 gauche-droite Z51 TJD normale).
Soit, faudrait que tu republie le dessin avec les noms des zones, aiguilles, ...

Pierre

Pages: [1] 2 3 ... 23