Bonjour a tous
voila mon problème :
j ai un programme qui dessine des forme( des figures) dans un panel , et ces figure doivent être relier entre elle par des flèches (des connecteur ) et pour ca ja fait ce petit code
ce code marche parfaitement tant que le flèche est vertical , le problème c est la pointe a la fin de la ligne . elle doit suivre l inclinaison de la ligne (a la manière de ArgoUML pour ceux qui connaissent ) et je n es aucune idée de comment le faire alors si vous avez une idee elle sera la bien venue
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
24
25
26
27 //récupérer x et y lors de clic de la souris public void mousePressed(MouseEvent e) { x=e.getX(); y=e.getY(); a=true; } //récupérer z et t lorsque on relache le bouton public void mouseReleased(MouseEvent e) { z=e.getX(); t=e.getY(); b=true; repaint(); } //code de dessin de la droit public void paintComponent(Graphics g){ super.paintComponent(g); g.setColor(Color.black); if(a==true && b==true){ g.drawLine(x, y, z, t); g.drawLine(z-5, t-5, z, t); g.drawLine(z+5, t-5, z, t); }
j espère que j était claire et merci a tous .
Partager