Come disegnare un diamante in Java

July 6

Anche se Java non include alcun metodo default per disegnare un diamante, è relativamente facile creare uno voi stessi. Questo metodo avrà ax coordinare e ay di coordinate che segnano l'angolo superiore sinistro del rettangolo che racchiude il vostro diamante. Ad esempio, se la coordinata y del punto più alto del diamante è 50 e la coordinata x del punto più a sinistra sul diamante è 25, le coordinate di delimitazione saranno 25 e 50. Il metodo sarà anche prendere un valore per l'altezza il diamante e un valore per la larghezza del diamante.

istruzione

Creare un JFrame disegnare On

1 Avviare un nuovo progetto in ambiente di sviluppo integrato, o IDE, che siete più esperti con.

2 Creare una nuova classe denominata "DrawingComponent" nel progetto. Tipo "estende componente" immediatamente dopo "DrawingComponent" ma prima staffa apertura all'estremità della dichiarazione di classe.

3 Digitare il seguente codice sopra la dichiarazione della classe DrawingComponent di importare i file necessari nella classe:
import java.awt.Component;
java.awt.Graphics importazione;
import java.awt.Graphics2D;
import java.awt.geom.GeneralPath;

4 Aggiungere un nuovo metodo di vernice per sovrascrivere il metodo paint di default del componente. Inserire il seguente codice tra le parentesi della classe DrawingComponent di apertura e chiusura:
vernice public void (Graphics g) {

}

5 Creare un nuovo JFrame nel metodo principale del progetto e aggiungere il componente disegno personalizzato ad esso con questo codice:
javax.swing.JFrame frame = new javax.swing.JFrame ();
int frameWidth = 300;
int frameHeight = 300;
frame.setSize (frameWidth, frameHeight);
frame.setVisible (true);
frame.setDefaultCloseOperation (javax.swing.JFrame.EXIT_ON_CLOSE);
. Frame.getContentPane () aggiungere (nuova DrawingComponent ());

Disegnare un diamante

6 Creare un nuovo metodo nella classe DrawingComponent aggiungendo questo codice tra parentesi di apertura e chiusura della classe, ma al di fuori degli altri metodi della classe:
GeneralPath createDiamond (int x, int y, int larghezza, altezza int) {

}

7 Inserire il seguente codice all'interno del metodo createDiamond di definire un nuovo GeneralPath con quattro linee:
GeneralPath diamante = new GeneralPath (GeneralPath.WIND_EVEN_ODD, 4);

8 Calcolare i quattro punti del diamante dati i valori passati nel metodo. Ogni volta che si calcola un punto, guida il percorso attraverso quel punto. Utilizzare il seguente codice per ottenere questo risultato:
x + = larghezza / 2;
diamond.moveTo (x, y);
x + = larghezza / 2;
y + = altezza / 2;
diamond.lineTo (x, y);
X = larghezza / 2;
y + = altezza / 2;
diamond.lineTo (x, y);
X = larghezza / 2;
y- = altezza / 2;
diamond.lineTo (x, y);

9 Chiudere l'oggetto GeneralPath per trasformarlo in un diamante completato e poi tornare con questo codice:
diamond.closePath ();
tornare diamante;

10 Chiamare il metodo createDiamond all'interno del metodo vernice e passare il risultato a un'istanza di Graphics2D per disegnare il diamante con il seguente codice:
Graphics2D G2D = (Graphics2D) g;
g2d.draw (createDiamond (100,100,50,100));