Selvom Java omfatter ikke standard metoder til at tegne en diamant , er det relativt nemt at oprette en selv. Denne metode vil tage økse koordinat og en y -koordinat , der markerer øverste venstre hjørne af rektanglet , der omfatter din diamant . For eksempel, hvis y koordinat det højeste punkt på diamanten er 50 og x -koordinat det yderste venstre punkt på diamanten er 25 vil afgrænsende koordinaterne være 25 og 50 år. Fremgangsmåden vil også tage en værdi for højden af diamant og en værdi for bredden af diamant . Instruktioner
Opret en JFrame at trække på
1
Start et nyt projekt i Integrated Development Environment eller IDE, som du er mest erfaring med .
2
Opret en ny klasse kaldet " DrawingComponent " i dit projekt. Type " udvider Component" umiddelbart efter " DrawingComponent ", men før åbningen beslaget i slutningen af klassen erklæring.
3
Indtast følgende kode over DrawingComponent klassen erklæring at importere nødvendige filer ind i klassen : import java.awt.Component , import java.awt.Graphics , import java.awt.Graphics2D , import java.awt.geom.GeneralPath ,
4
Tilføj en ny maling metode til at tilsidesætte komponentens standard paint metode. Indsæt følgende kode mellem åbning og lukning parentes af DrawingComponent klasse: public void paint ( Graphics g ) {
}
5
Opret en ny JFrame i dit projekts vigtigste metode og tilføje din brugerdefinerede tegning komponent til det med denne kode: javax.swing.JFrame frame = new javax.swing.JFrame (); int frameWidth = 300 ; int frameHeight = 300 ; frame.setSize ( frameWidth , DrawingComponent ());
Tegn en Diamond
6
Opret en ny metode i DrawingComponent klassen ved at tilføje denne kode mellem klassens åbning og lukning beslag, men uden for de andre metoder i klassen : GeneralPath createDiamond ( int x , int y , int bredde , int højde) {
}
7
Indtast følgende kode inde i createDiamond metode til at definere en ny GeneralPath med fire linier: GeneralPath diamant = new GeneralPath ( GeneralPath.WIND_EVEN_ODD , 4),
8
Beregn de fire punkter i diamant givet de værdier passerede ind i metoden. Hver gang du beregner et punkt , vejlede stien gennem dette punkt. Brug følgende kode til at opnå dette : x + = bredde /2; diamond.moveTo (x,
9
Luk GeneralPath objekt for at gøre det til en færdig diamant og derefter returnere den med denne kode: diamond.closePath (); tilbagevenden diamant ,
10
Ring til createDiamond metode inde af malingen metoden og videregive resultatet til en forekomst af Graphics2D at trække diamanten med følgende kode : Graphics2D g2d = ( Graphics2D ) g; g2d.draw ( createDiamond ( 100,100,50,100 )),
< br >