Come disegnare più forme in Java

February 17

classe Graphics2D di Java include metodi di archivio per la creazione di linee, rettangoli ed ellissi, ma la creazione di altre forme più elaborate è un po 'più complicato. Java utilizza polilinee per definire le linee che si muove attraverso più punti. Dopo aver definito una polilinea completo, è possibile modificarlo in un poligono. È possibile creare il numero di poligoni, come si richiede nello stesso spazio di disegno. Per visualizzare il disegno, è necessario creare un JFrame e aggiungere il componente disegno al telaio.

istruzione

1 Creare un nuovo progetto nel proprio ambiente di sviluppo integrato preferito (IDE). Creare una nuova classe nel progetto e il nome "DrawingComponent." Inserire le seguenti righe sopra la dichiarazione della classe per importare le classi necessarie nella tua classe:

import java.awt.Color;
java.awt.Graphics importazione;
import java.awt.Graphics2D;
import java.awt.geom.GeneralPath;
import javax.swing.JComponent;

2 Tipo "si estende JComponent" immediatamente dopo "DrawingComponent" nella vostra dichiarazione di classe.

3 Creare un nuovo metodo che prendere in una serie di punti e restituire un poligono sulla base di tali punti. Inserire il seguente codice all'interno della classe DrawingComponent:

GeneralPath poligono (int [] xPoints, int [] yPoints) {

}

4 Creare un nuovo oggetto GeneralPath per definire il perimetro del poligono. Digita il codice nel metodo poligono:

GeneralPath poligono = new GeneralPath (GeneralPath.WIND_EVEN_ODD, xPoints.length);

5 Definire il percorso attraverso i punti in forma con un ciclo "for". Inserisci questo codice:

polygon.moveTo (xPoints [0], yPoints [0]);
for (int index = 1; index <xPoints.length; index ++) {
polygon.lineTo (xPoints [Indice], yPoints [index]);
};

6 Completa il percorso, convertirlo in un poligono chiuso e restituire il poligono con il seguente codice:

polygon.closePath ();
tornare poligono;

7 Creare un nuovo metodo di pittura all'interno della classe DrawingComponent. Digitare il seguente codice all'interno parentesi della classe, ma al di fuori della parentesi del metodo poligono:

vernice public void (Graphics g) {
Graphics2D G2D = (Graphics2D) g;

}

8 Inizializzare due array con i punti che definiscono la vostra prima forma, poi passarli al metodo del poligono e disegnare il risultato. Inserire il seguente codice all'interno del metodo paint, ma dopo la dichiarazione grafica:

int xPoints [] = {100, 125, 125, 75, 75};
int yPoints [] = {0, 20, 50, 50, 20};
g2d.fill (poligono (xPoints, yPoints));

Ripetere questo codice utilizzando nuovi array con diversi punti per disegnare più poligoni.

9 Creare un nuovo JFrame nel metodo principale del progetto e inserire il tuo disegno in esso per visualizzare le forme. Inserire il seguente codice nel metodo principale del progetto:

"Frame javax.swing.JFrame = new javax.swing.JFrame ();
. Frame.getContentPane () aggiungere (nuova DrawingComponent ());
int frameWidth = 300;
int frameHeight = 300;
frame.setSize (frameWidth, frameHeight);
frame.setVisible (true); "

Consigli e avvertenze

  • È possibile modificare il colore delle forme chiamando "g2d.setColor (Color.RED);" subito prima di chiamare "g2d.fill ()" nel metodo paint.