|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Nov 2012
Messaggi: 1
|
java problema disegna poligoni
salve a tutti mi servirebbe un aiuto devo disegnare 4 diversi poligoni ho scritto il codice seguenta ma mi disegna un solo poligono è possibile trovare una soluzione vi ringrazio anticipatamente.
import java.awt.Color; import java.awt.Container; import java.awt.Graphics; import java.awt.Polygon; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.Set; import javax.swing.JFrame; import javax.swing.JPanel; public class Polygons1 extends JPanel { @Override public void paintComponent(Graphics g) { super.paintComponent(g); Set<POINTS> POLYGON = new LinkedHashSet<POINTS>(); //polygon 1 point 3 POLYGON.add(new POINTS(1, 50, 20)); POLYGON.add(new POINTS(1, 70, 30)); POLYGON.add(new POINTS(1, 50, 40)); //polygon 2 point 4 POLYGON.add(new POINTS(2, 100, 20)); POLYGON.add(new POINTS(2, 130, 30)); POLYGON.add(new POINTS(2, 100, 40)); POLYGON.add(new POINTS(2, 120, 30)); //polygon 3 point 6 POLYGON.add(new POINTS(3, 150, 20)); POLYGON.add(new POINTS(3, 180, 30)); POLYGON.add(new POINTS(3, 150, 40)); POLYGON.add(new POINTS(3, 130, 20)); POLYGON.add(new POINTS(3, 180, 30)); POLYGON.add(new POINTS(3, 150, 50)); //polygon 4 point 12 POLYGON.add(new POINTS(4, 150, 20)); POLYGON.add(new POINTS(4, 180, 30)); POLYGON.add(new POINTS(4, 150, 40)); POLYGON.add(new POINTS(4, 130, 20)); POLYGON.add(new POINTS(4, 180, 30)); POLYGON.add(new POINTS(4, 150, 50)); POLYGON.add(new POINTS(4, 150, 20)); POLYGON.add(new POINTS(4, 180, 30)); POLYGON.add(new POINTS(4, 130, 60)); POLYGON.add(new POINTS(4, 140, 50)); POLYGON.add(new POINTS(4, 140, 30)); POLYGON.add(new POINTS(4, 120, 30)); int n = POLYGON.size() ; int[] x = new int[n]; int[] y = new int[n]; int counter = 0; for (POINTS pnt : POLYGON) { x[counter] = pnt.getX(); y[counter++] = pnt.getY(); System.out.println(x); Polygon[] polygons = new Polygon[4]; for (int i = 0; i < polygons.length; i++) { polygons[i] = new Polygon(); polygons[pnt.getID()-1] = new Polygon(x, y, x.length); g.setColor(Color.RED); g.drawPolygon(polygons[i]); }} } public class POINTS { private int ID; private int X; private int Y; public POINTS( int ID, int X, int Y) { this.ID = ID; this.X = X; this.Y = Y; } public int getX() { return X; } public int getY() { return Y; } public int getID() { return ID; } } public static void main(String[] args) { JFrame frame = new JFrame(); frame.setTitle("Polygons"); frame.setSize(550, 550); frame.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); Container contentPane = frame.getContentPane(); contentPane.add(new Polygons1()); frame.show(); } } |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:10.