J'écris un programme Java pour dessiner un triangle avec des sommets qui sont spécifiés par les clics de souris de l'utilisateur. Jusqu'à présent, j'ai obtenu chaque paire de coordonnées dans un tableau, appelé points
, mais j'ai du mal à dessiner le triangle.Dessiner Triangle en Java en utilisant MouseClicked
Voyant que les paires de coordonnées sont de type float
et la méthode drawLine()
nécessite int
, est-il possible que je pourrais tracer les lignes en utilisant float
, ou dois-je les convertir en int
?
code
public void mouseClicked(MouseEvent e) {
int left = DrawingPanel.iX(-rWidth/2), right = DrawingPanel.iX(rWidth/2);
int top = DrawingPanel.iY(rHeight/2), bot = DrawingPanel.iY(-rHeight/2);
if(!(e.getX() > right || e.getX() < left ||
e.getY() < top || e.getY() > bot)) {
clickCount++;
if(clickCount >= 4) {
DrawingPanel.points[3] = new Point(e.getX(), e.getY());
DrawingPanel.ready = true;
drawingPanel.repaint();
}
else {
DrawingPanel.points[clickCount - 1] = new Point(e.getX(), e.getY());
}
}
else
JOptionPane.showMessageDialog(frame, "Must click inside red rectangle. Try again.");
}
});
DrawingPanel
est une classe que j'ai créé pour dessiner le triangle.
Cela pourrait être utile: http://sourceforge.net /p/tus/code/HEAD/tree/tjacobs/ui/shape/BuildPolygon.java – ControlAltDel