représentation d'un graphe orienté en java

représentation d'un graphe orienté en java - Java - Programmation

Marsh Posté le 21-12-2004 à 12:34:36    

Bonjour,
on aimerait représenter un graphe orienté en java, avec des etiquettes sur les arcs orientés (avec une flèche).
 
Savez-vous comment faire?
 
Merci
A+.

Reply

Marsh Posté le 21-12-2004 à 12:34:36   

Reply

Marsh Posté le 21-12-2004 à 12:51:24    

J'ai eu fait ça pendant mes études... En gros, tu crées une classe héritant de JPanel, tu surcharges la méthode paint et après tu te sers de ça:http://java.sun.com/j2se/1.4.2/doc [...] ics2D.html
 
Heu.. c'était ma méthode hein... Je suis pas persuadé que ça soit la meilleure, loin de là. Mais bon, on a eu 18  :D  
 

Reply

Marsh Posté le 21-12-2004 à 13:13:38    

ouais, d'un autre coté, je pense qu'il cherche un truc plus pret à l'emploi;
 
thierry_b : va voir du coté de jgraph peut etre?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-12-2004 à 13:14:12    

Merci pour ta réponse.
 
mais pourrais-tu préciser s'il y a un truc tout pret dans l'api java pour dessiner des "veteurs" (représentés soit par des droites, soit par des arcs et une fleche indiquant la direction) au dessus desquels on puisse afficher quelques infos.

Reply

Marsh Posté le 21-12-2004 à 13:33:07    

La solution que je te propose c'est de créer toi-même ces vecteurs (et les infos, etc.) avec Graphics2D.
 
Mais comme dit real--, jgraph ça a l'air de faire ce que tu veux donc à toi de voir...
 
 
 
 
 
 
 

Reply

Marsh Posté le 23-12-2004 à 00:39:52    

Tiens je viens juste de finir de me coder ma classe "OrderedGraphMap", je suis à la recherche de bug encore, mais elle est bien complète :).
Je trouve ça vraiment bizarre de la part de sun de ne pas fourni de class graph dans "java.util"...c'est une structure de donnée comme une autre et en plus très utlisée (presque autant que des arbres ou des listes :o)  [:spamafote]

Reply

Marsh Posté le 23-12-2004 à 00:41:06    

ben y'a pas non plus de structure d'arbre :)
tu partages? :)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 00:47:47    

the real moins moins a écrit :

ben y'a pas non plus de structure d'arbre :)
tu partages? :)


 
Ha bon, et "TreeSet"/"TreeMap" c'est quoi alors  ? :heink:  
...Pour le partage j'ai rien contre, mais je compte finir tout ça c'est vacances avec la javadoc qui va bien. Ensuite je ferai une version "GraphMap" qui seront des graphes pondérés non orientés :)

Reply

Marsh Posté le 23-12-2004 à 00:50:59    

TreeSet et TreeMap sont des implementations de Set et de Map, respectivement, basées sur un arbre, mais la structure de l'arbre n'est pas exposée.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 00:55:38    

the real moins moins a écrit :

TreeSet et TreeMap sont des implementations de Set et de Map, respectivement, basées sur un arbre, mais la structure de l'arbre n'est pas exposée.


 
C'est marqué noir sur blanc dans la doc que la structure sous jacente est un "red-black tree"  :heink: . C'est donc exactement des structures d'arbre AVL.

Reply

Marsh Posté le 23-12-2004 à 00:55:38   

Reply

Marsh Posté le 23-12-2004 à 01:01:37    

Giz a écrit :

C'est marqué noir sur blanc dans la doc que la structure sous jacente est un "red-black tree"  :heink: . C'est donc exactement des structures d'arbre AVL.


c'est bien ce que je dis.
 
montre moi comment tu accèdes "publiquement" à la structure de l'arbre...


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 01:47:06    

the real moins moins a écrit :

c'est bien ce que je dis.
 
montre moi comment tu accèdes "publiquement" à la structure de l'arbre...


 
ben quand tu fais un "put" c'est comme ajouter un element dans ton arbre, "remove" c'est comme en retirer un...pourquoi tu voudrais manipuler les noeuds de l'arbre  :heink: , tu t'en fiches toi ce sont les méthodes d'accès que tu veux, comme c'est le cas du graphe que je fais (methode "ajouter noeud", enlever noeud", etc..)
Excuse moi mais Je te suis pas trop la, pourquoi voudrais tu avoir le pointeur sur la structure "cle/valeur/fis gauche/fils droit"...tu veux pas te recoder l'arbre.


Message édité par Giz le 23-12-2004 à 01:48:55
Reply

Marsh Posté le 23-12-2004 à 01:57:19    

c'est moi qui te suis pas. c'est toi qui te "plaind" qu'il n'y a pas de structure de graphe, et tu dis qu'il y en a pourtant d'arbre; je te contredis: le TreeSet, je n'ai justement aucune visibilité sur le fait que ça soit un arbre, je vois juste un Set: c'est pour ça que je dis qu'il n'y pas de structure d'arbre dans la jdk; on a pas d'acces aux noeuds/feuilles: on a add et remove.
ne détourne pas le sujet: je ne *veux* pas d'accès aux noeuds avec un TreeSet.
 
par contre j'ai besoin d'une structure d'arbre "visible" parfois. comme le JTreeModel en somme, mais sans la dépendence sur swing. Et ça y'en a pas dans le jdk: idem, comme tu le dis, pour les graphes; si l'interface n'est pas plus riche que celle de collection, je vois pas trop l'interet?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 02:04:59    

the real moins moins a écrit :

c'est moi qui te suis pas. c'est toi qui te "plaind" qu'il n'y a pas de structure de graphe, et tu dis qu'il y en a pourtant d'arbre; je te contredis: le TreeSet, je n'ai justement aucune visibilité sur le fait que ça soit un arbre, je vois juste un Set: c'est pour ça que je dis qu'il n'y pas de structure d'arbre dans la jdk; on a pas d'acces aux noeuds/feuilles: on a add et remove.
ne détourne pas le sujet: je ne *veux* pas d'accès aux noeuds avec un TreeSet.
 
par contre j'ai besoin d'une structure d'arbre "visible" parfois. comme le JTreeModel en somme, mais sans la dépendence sur swing. Et ça y'en a pas dans le jdk: idem, comme tu le dis, pour les graphes; si l'interface n'est pas plus riche que celle de collection, je vois pas trop l'interet?


 
Tu voudrais faire quoi alors avec les graphes EXACTEMENT ? (ou bien l'auteur du post). Il veut se faire un graphe "spécial sur mesure" ou un vulgaire graphe comme on a l'habitude de connaitre ?


Message édité par Giz le 23-12-2004 à 02:05:49
Reply

Marsh Posté le 23-12-2004 à 02:05:44    

ha mais moi je ne veux rien faire avec des *graphes*: pour tout dire, je ne sais même pas comment c'est representé au niveau objet [:itm]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 02:07:24    

Sinon pour le treeSet, admettons que tu as acces au noeud, tu voudrais faire quoi avec ? On est bien d'accord que ca sert a rien. Seul les méthodes importent pour l'utilisation de la structure de donnée


Message édité par Giz le 23-12-2004 à 02:08:44
Reply

Marsh Posté le 23-12-2004 à 02:09:03    

Citation :

par contre j'ai besoin d'une structure d'arbre "visible" parfois. comme le JTreeModel en somme, mais sans la dépendence sur swing.


 
... pour stocker n'importe quoi de maniere hierarchique.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 02:12:19    

Ben moi les graphes que je me fais c'est comme les TreeSet ou TreeMap. Tu n'auras pas accès au "comment c'est foutu", seulement des methodes d'acces classique "ajouter noeud, ajouter relations, recuperer les noeuds, effacer, cloner le graphe, ...
Je ne vois pas qui ca peut interesser d'acceder au "comment c'est foutu"

Reply

Marsh Posté le 23-12-2004 à 02:14:16    

ben déjà, tu parles de ajouter des *noeuds* et des *relations*, alors qu'avec une interface Set ou Map, tu ajoute/recupere des *elements*.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-12-2004 à 09:48:56    

je voudrais juste savoir de combien d'annes d'experiences avez vous Giz et the real moins moins  

Reply

Marsh Posté le 23-12-2004 à 12:08:31    

pourquoi :??:

Reply

Marsh Posté le 23-12-2004 à 12:30:21    

bla bla bla graph bla bla bla  
t'as une grande experience en java aparament

Reply

Marsh Posté le 23-12-2004 à 13:37:46    

ben, y'a pas de secrets, pour les TreeSet/TreeMap, tout est dans la javadoc de sun.
Pour les graphes, c'est pas une question de java, tu peux les coder en ce que tu veux; c'est plutot des notions algo/structure de données en fait.

Reply

Marsh Posté le 23-12-2004 à 15:19:51    

[:xx_xx]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 24-12-2004 à 13:46:35    

Je viens de finir de me coder ma classe graph. Mais l'interface de manipulation est très semblable a celle de Map. Je ne sais pas si ca t'interesse et puis j'ai juste testé vite fait toutes les fonctions et ca a marché. Maintenant je suis loin de certifié qu'elle est sans bug (j'ai pas testé profondément). C'est la version alpha quoi :D

Reply

Marsh Posté le 25-12-2004 à 02:11:58    

et les unit tests, c'est pour les ienchs?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed