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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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;
	}
}