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 4 ... 23
16
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

17
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

18
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 18, 2025, 10:13:42 am »
OK pour mettre le JSON dans le programme. On le mets comme toi, dans un onglet ?
Dans un fichier c'est bien aussi. Je mettais le Json dans un onglet pour pouvoir l'éditer facilement.

Pas d'accord pour le Locoduinodrome. Il me faut un cas réel, avec tous les problèmes (super-appareils, etc...).
On ne teste pas assez de choses sur le Locoduinodrome.

Il faudra, de toutes façons, qu'on ait un JSON sur lequel tout sera commun et qui marche sur tous les réseaux.
Par exemple, on ne pourra pas mettre les itinéraires de Luzy dans le JSON.

Le Locoduinodrome a l'avantage d'être simple et d'être documenté (dessin nom des zones, aiguilles, ...)

Pourquoi utiliser tout de suite des cas beaucoup plus compliqués (on y viendra après) et non documentés.

Je suis beaucoup plus pour des ArrayList, qui sont beaucoup plus souples en adaptant automatiquement leur longueur.
On utilise des Arrays quand on connait la taille ce qui le cas pour les zones, les aiguilles, ... et des arrayslist quand on ne connait pas la taille.

Pierre

19
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 17, 2025, 01:48:54 pm »
Après quelques modifications suppressions cela commence à marcher. Mais il y a des différences entre mes appellations et les tiennes: aiguilles/appareils, ...

Le menu ne marche toujours pas sur Mac on est pas dans le bon répertoire.

Pour des tests est que l'on pourrait revenir sur un cas simple le nouveau Locoduinodrome ?

On va pouvoir commencer à instancier les éléments, les zones par exemple et faire un array de zones (voire un arraylist), donc monter un constructeur dans la classe zone.

Pierre

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

Je n’arrive pas à faire tourner le programme chez moi.
Le menu ne me propose pas le bon répertoire (un nom de fichier Json en dur serait préférable) et la fenêtre est toujours trop grande (je suis sur  MacBook).

Il faut enlever les traitements du fichier Json provenant de GestJ3 :

Dans void lecture_JSON()   subst(json); ne sert plus.

void initialisationsJson() { …} peut être enlevé !

void zones(String z,Object o) {
void initBrets() {
void fn(String it,String z,Object o) {    peuvent êtres enlevées

void initTables() { // tables de correspondance n° -> nom.    Pourra servir plus tard

// fonctions pour manipuler les tableaux json (taille et indiceage).     peut être enlevé !

// fonctions d'acces et de modification des elements json (cle/valeur).    peut être enlevé !

// fonctions pour substituer certaines valeurs (des entiers a la place de noms)
Jusqu’à la fin de l’onglet, tout peut être enlevé.

Pierre

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

Les hashmaps c'est assez efficace, c'est presque aussi rapide que de l'indiceage, mais pour des tables. revers de la médaille il faut manipuler des hashcodes (il y a de bibliothèques pour cela).

Il faudrait commencer par enlever de ton programme tout ce qui ne sert pas (et y il en a beaucoup), laisser juste la lecture et la recherche des éléments, enlever peut être aussi pour l'instant les menus et les fullscreen, ..., on lit un fichier Json juste pour faire des essais.

Et on va commencer à faire des tableaux (voire des arraylist) avec des instances des éléments : zones, aiguilles, signaux, ...

Pierre

22
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 16, 2025, 02:44:16 pm »

Un JsonObject est un ensemble de clé/valeur, en fournissant la clé on peut obtenir la valeur, si la clé n'existe pas on peut avoir une valeur par défaut.

C'est pas plus compliqué que cela, et faut pas chercher plus loin.

Il va falloir choisir : soit on utilise le json comme structure de donnée comme dans GestJ3, soit on instancie tous les objets trouvés dans le fichier Json et on se sert de ces objets comme structure de donnée avec une vraie programmation objet proche des articles rédactionnels du gestionnaire en C++.

Pierre


23
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 14, 2025, 04:34:45 pm »

Cette écriture n'est pas correcte : "999""

Tu pourrais publier le fichier Json ?

Pierre

24
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 05:59:17 pm »

Oui, lis le Json et essaie extraire toutce qui est nécessaire pour instancier les zones, puis les autres (aiguilles, signaux, …).

Je ne vois pas trop l'utilité du TCO pour l'instant.

Bon courage

Pierre

25
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 05:01:44 pm »
C'est assez étrange : dans ton programme, il n'y a pas de "Class" ...

==> en fait je cherche tous les paramètres d'une zone à partir du Json, pour pouvoir faire un new Zone(...), donc une instance de la classe Zone, qui faudra mettre quelque part (la class et l'instance).

En fait, la description des objets se fait dans l'onglet JSON, JSONObject.

26
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 01:07:46 pm »
J'ai compris !

La zone, elle, a le nom du signal et s, c'est le signal.

==> la zone elle son nom : Z1, Z12, … et le signal son nom : C3, Cv1, … les noms qui sont dans le json !

Pierre

27
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 01:02:47 pm »
Voila l'onglet Json expurgé, on extrait d'une zone ses deux signaux. Avec beaucoup d'explications.

Perre

28
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 11:09:30 am »
L'URL suivante donne toutes les informations sur Json:

https://processing.github.io/processing-javadocs/core/

Il faut que tu ailles voir, on en discutera après.

Notamment on trouve toutes les méthodes applicables à JsonObject et JsonArray, c'est au format javadoc.

On y trouve par exemple la méthode Keys dans JsonObject.

Pierre

29
Vos projets / Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 09:22:28 am »
Pour ce qui est de la conversion Json ==> objets (zones, signaux,aiguilles, …), l'onglet Json (au début) du programme GesJ3 est un bon exemple des traitements possibles.

Pierre

30
Vos projets / Re : Re : Projet partagé d'un gestionnaire de réseau
« le: avril 10, 2025, 09:02:41 am »

Un signal est dans une zone. On a les voisins de la zone en fonction des positions des appareils de voie dans le JSON.
Donc, on peut calculer le signal voisin.
On pourrait le faire dans le signal du JSON ou alors dans le setup du gestionnaire.
C'est facile à ajouter dans le JSON, mais je pense que ça sera redondant. Je trouve que ça serait mieux dans le setup.


==> le signal précédent et/ou le signal suivant peuvent dépendre de la positions d'aiguilles, donc cela ne peut être fait dans le setup() !!!  mais dans la classe SIGNAL.

Citer

JSON : est-ce qu'on travaille directement dans le fichier ou est-ce qu'on extrait les infos dans des objets et on travaille dans les objets ?


==> Il me semble que le traitement directement dans le fichier Json n'avait pas fait l'unanimité, on peut essayer de créer  les objets à partir du fichier Json !


Pierre

Pages: 1 [2] 3 4 ... 23