Ajouter des arcs entre des sommets
Bonjour,
dans mon code j'ai créer des sommets et j'ai les affichés dans un jpanel et je cherche à relier ces sommets par des arcs, qui à une idée comment les afficheés.
voici les codes :
Classe Sommet :
Code:
1 2 3 4 5 6 7 8 9 10
|
public class Sommet {
String desc; int x; int y; Color c;
Sommet (String desc,int x,int y,Color c) {
this.desc=desc;
this.x=x;
this.y=y;
this.c=c;
}
} |
code de panel qui contient toutes les sommets :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
public class MonPanel extends JPanel {
private List<WebServ> sommets;
public MonPanel () {
sommets = new ArrayList<Sommet>();
}
public void paintComponent(Graphics g){
for(Sommet s : sommets) {
g.setColor(s.c);
g.fillOval(s.x, s.y, 75, 75);
g.setColor(Color.WHITE);
g.drawString(s.desc, s.x+27,s.y+40);
}
}
public void addSommet(Sommet s) {
sommets.add(s);
}
} |
code d'affichage :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
public class Tester {
public static void main(String[] args) {
JFrame f=new JFrame();
f.setTitle("Graphe des sommet ");
f.setSize(900, 700);
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
MonPanel p = new MonPanel ();
p.addSommet(new Sommet("S1",100, 70,Color.blue));
p.addSommet(new Sommet("S2",300, 200,Color.gray));
p.addSommet(new Sommet("S3",500, 100,Color.red));
f.setLayout(new BorderLayout());
f.add(p, BorderLayout.CENTER);
f.setVisible(true);
}
} |
et normalement classe arc que je doit le faire :
Code:
1 2 3 4 5 6 7 8 9
|
public class arc {
Sommet source;
Sommet cible;
public arc (Sommet S, Sommet C){
source=S;
cible=C;
}
} |