Besoin d'aide pour algo de génération d'arbre - 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 : Besoin d'aide pour algo de génération d'arbre (/showthread.php?tid=3185) |
Besoin d'aide pour algo de génération d'arbre - lemouix - 20-10-2008 Bonjour, Je suis en train de bosser sur un algo de génération d'arbre (algo de ford fulkerson). Ceci servira à afficher une arborescence de technologies, batiments, unités, ... selon une base de donnée qui contient les dépendances de chacun des batiments: 0= RACINE IdBatiment Depend_De: 1 0 2 0 3 1 4 1 5 4 5 3 Pour le moment mon algo fonctionne bien pour: - Ordonner les niveaux (ford fulkerson) En recherche pour: - Afficher l'arbre avec des positions J'ai utilisé cette méthode pour placer les objets sur l'écran: Soit tabl1 le tableau contenant la liste des éléments classés par niveau hiérarchique Initialidsatino du tableau avec ses X et Y. Récupération de Tabl1[Id] et recherche de ses dépendances. - Si l'élément ne possède qu'un antécédent, X= Xantécédent - Si l'élément possède plus d'un antécédent, décalage du niveau supérieur X+170, et on ajoute... Perso je bloque un peu sur l'algo de représentation.... le résultat voulu est un arbre des technos à la warcraft ou age of empire,... Donc, si vous avez des idées, merci ! RE: Besoin d'aide pour algo de génération d'arbre - jo_link_noir - 21-10-2008 salut, Je suis pas sûr d'avoir comprit ton problème, suffit d'afficher l'arbre des techno ? Si c'est bien ça, -d'après les dépendance donné au début- il faut que 1 et 2 soit sur la même ligne, 3 et 4 dessous et 5 encore plus bas ? Et j'avoue n'avoir presque rien comprit au dernier paragraphe >< En même temps j'ai pas trop regarder l'algo de ford fulkerson... RE: Besoin d'aide pour algo de génération d'arbre - lemouix - 21-10-2008 Je m'explique un peu mieux: Je possède ma table avec mes antécédents. J'ai réussi à construire un tableau avec les différents niveaux. J'ai réussi à afficher un truc du style: 1 2 3 4 5 6 A la base, tous les éléments sont avec un X de 0 et j'ajoute 160 à chaque élément pour le décalage d'origine. Le tableau que j'ai généré (avec ford fulkerson) est à l'image de ce qui est affiché juste au dessus Le soucis, c'est que si 2 et 3 dépendent de 1 il faut afficher: 1 2 3 Ensuite 4 dépend de 3: 1 2 3 4 5 et 6 dépendent de 4 1 2 3 4 5 6 Ceci sera fait pour éviter que les traits ne passent dessus les images ou les éléments. J'ai essayé de faire un algo pour faire ces décalages, mais je voudrai voir si vous avez des idées et les comparer à ce que j'ai fais ! En espérant que ce soit plus clair pour tout le monde. RE: Besoin d'aide pour algo de génération d'arbre - jo_link_noir - 21-10-2008 ok, maintenant c'est bien comprit. J'te dit ce que je trouve d'ici quelque jours. PS : entoure les exemples des balises php, sinon on ne voit pas le décalage. RE: Besoin d'aide pour algo de génération d'arbre - lemouix - 22-10-2008 Infos sur les antécédents: ID DEPEND_DE 3 1 2 1 4 3 6 4 5 4 Lalgo de l'arbre est fait... à vous de jouer :p (j'ai déjà un résultat pour l'affichage, mais on va voir si vous faites mieux !) RE: Besoin d'aide pour algo de génération d'arbre - jo_link_noir - 26-10-2008 Bonsoir, J'ai terminer un truc un peu bancale et qui ne marche pas si un élément à plusieurs parents... Sinon ils sont bien positionner (mais pas relier ici) Je suis parti du principe que les enfants de l'arbre on une place disponible de plus en plus mince. Ce qui fait que les enfants sont toujours sous les parents et ne passe pas sous le voisin. Par curiosité, quel étais ton idée de départ ? Code PHP :
|