JeuWeb - Crée ton jeu par navigateur
Affichage arbre technologique - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Affichage arbre technologique (/showthread.php?tid=6328)

Pages : 1 2 3


Affichage arbre technologique - Racktor - 18-08-2012




RE: Affichage arbre technologique - Sephi-Chan - 18-08-2012

Je pense que tu devrais rendre la récupération des informations et leur affichage indépendants.

Avec le PHP, je m'arrangerais pour créer un hash tel que :


$tree = array(
// On définit les différentes technologies.
'technologies' => array(
10 => array(
'name' => 'Recherches nucléaires'
),
20 => array(
'name' => 'Missiles'
),
30 => array(
'name' => 'Missiles nucléaires'
)
),
// Puis les relations entre ces technologies.
'dependencies' => array(
30 => array( // Pour rechercher "Missiles nucélaires", on a besoin :
array('technology' => 10, level: 3), // Des "Recherches nucléaires" au niveau 3,
array('technology' => 20, level: 1) // et des "Missiles" au niveau 1.
)
)
)

Comme ça tu as ce hash, tu peux travailler dessus sans te soucier de la forme, voir même le transmettre à Javascript pour déléguer complètement l'affichage de l'arbre au client. Le tout avec du CSS.


RE: Affichage arbre technologique - Racktor - 18-08-2012

(18-08-2012, 02:30 PM)Sephi-Chan a écrit : Je pense que tu devrais rendre la récupération des informations et leur affichage indépendants.

Avec le PHP, je m'arrangerais pour créer un hash tel que :


$tree = array(
// On définit les différentes technologies.
'technologies' => array(
10 => array(
'name' => 'Recherches nucléaires'
),
20 => array(
'name' => 'Missiles'
),
30 => array(
'name' => 'Missiles nucléaires'
)
),
// Puis les relations entre ces technologies.
'dependencies' => array(
30 => array( // Pour rechercher "Missiles nucélaires", on a besoin :
array('technology' => 10, level: 3), // Des "Recherches nucléaires" au niveau 3,
array('technology' => 20, level: 1) // et des "Missiles" au niveau 1.
)
)
)

Comme ça tu as ce hash, tu peux travailler dessus sans te soucier de la forme, voir même le transmettre à Javascript pour déléguer complètement l'affichage de l'arbre au client. Le tout avec du CSS.
Si j'ai bien compris ma BDD me sert à rien dans ce cas la ?

Tu me conseilles de faire comment pour l'affichage de l'arbre sans passer par javascript ?


RE: Affichage arbre technologique - Sephi-Chan - 18-08-2012

Si, ta base te sert à produire ce "graphe".
Et tu généres le HTML de la même façon en Javascript qu'en PHP. Smile


RE: Affichage arbre technologique - quentin01 - 18-08-2012

Pour ma part j'aurais le même avis que Sephi. La représentation intervallaire est surtout adapté dans les cas de catégorie imbriqué, or un arbre de technologies ce n'est pas vraiment des technologies imbriqués. Une technologie peut avoir comme dépendances une technologie qui n'est pas forcément de la même "catégorie". Une table qui résume les technologies, et une table de dépendances serait l'idéal, bien que l'utilisation d'une BDD dans ce cas là n'est pas forcément utile, cela dépend de si tes données sont voués à être modifié souvent ou non à partir d'un panel administration.


RE: Affichage arbre technologique - Racktor - 18-08-2012

Je demande juste parce-que je n'ai pas l'habitude de manipuler les array :
la logique c'est de construire un tableau associatif avec les données de la BDD et ensuite faire l'affichage.

En gros je vais devoir bosser pas mal de chose surtout le javascript (qui est assez nébuleux pour moi, autant le dire...), et les array parce je n'arrive déjà pas a afficher les données de l'exemple que tu m'as donné.

Logiquement c 'est vrai que javascript est fait pour ce que je veux faire : ça sert a rien d'encombrer le serveur pour de la présentation ...

Merci pour ton aide en tout cas.

(18-08-2012, 05:01 PM)quentin01 a écrit : Pour ma part j'aurais le même avis que Sephi. La représentation intervallaire est surtout adapté dans les cas de catégorie imbriqué, or un arbre de technologies ce n'est pas vraiment des technologies imbriqués. Une technologie peut avoir comme dépendances une technologie qui n'est pas forcément de la même "catégorie". Une table qui résume les technologies, et une table de dépendances serait l'idéal, bien que l'utilisation d'une BDD dans ce cas là n'est pas forcément utile, cela dépend de si tes données sont voués à être modifié souvent ou non à partir d'un panel administration.
Bha une fois l'arbre technologique fait et équilibré il n'y a plus a y touché au niveau de la structure, après des contraintes peuvent être ajouté : en fonction de la race, du niveau, ou d'autres variables.

J'avais pris la RI parce-que je n'avais rien trouvé d'autres et on oublie forcément des choses plus simples.
Finalement j'ai bien fait de demander...


RE: Affichage arbre technologique - Sephi-Chan - 18-08-2012

L'utilisation de hash (tableau associatif) te permet de créer une structure. Tu peux aussi utiliser des objets si tu préfères.

Est-ce que tu as un exemple visuel de ton arbre, sous forme d'une image par exemple ?

Ça nous permettrait de te faire un exemple : avec d'une part la façon de stockage cet arbre (selon les problématiques de ton arbre, car ça peut varier), d'une autre la transformation en une forme exploitable, et enfin l'affichage final.


RE: Affichage arbre technologique - Racktor - 18-08-2012

(18-08-2012, 05:20 PM)Sephi-Chan a écrit : L'utilisation de hash (tableau associatif) te permet de créer une structure. Tu peux aussi utiliser des objets si tu préfères.

Est-ce que tu as un exemple visuel de ton arbre, sous forme d'une image par exemple ?

Ça nous permettrait de te faire un exemple : avec d'une part la façon de stockage cet arbre (selon les problématiques de ton arbre, car ça peut varier), d'une autre la transformation en une forme exploitable, et enfin l'affichage final.
Je peux m'y affairer ce week-end et déposer le résultat en début de semaine prochaine.
je pourrais pas donner la structure de l'arbre définitive mais une bonne idée de ce qui serait bien d'avoir.


RE: Affichage arbre technologique - Sephi-Chan - 18-08-2012

Ok, très bien. L'idée c'est qu'on puisse comprendre les mécanismes de ton arbre.
Qu'on ne propose pas une solution plus complexe que nécessaire, notamment.


RE: Affichage arbre technologique - Racktor - 18-08-2012

(18-08-2012, 05:31 PM)Sephi-Chan a écrit : Ok, très bien. L'idée c'est qu'on puisse comprendre les mécanismes de ton arbre.
Qu'on ne propose pas une solution plus complexe que nécessaire, notamment.
Je comprends bien et j'avais envie de mettre un dessin au début et je me suis dit que ça ferait con alors que je n'ai pas moi même idée de ce que je vais mettre précisément, je voulais faire une structure et remplir ensuite.