Selv om Java ikke inkluderer standard metoder for å tegne en diamant , er det relativt enkelt å lage en selv. Denne metoden vil ta øks koordinat og ay koordinatsystem som markerer øvre venstre hjørne av rektangelet som omslutter diamant. For eksempel, dersom Y-koordinaten av det høyeste punkt på diamanten er 50 og X- koordinaten av det punktet lengst til venstre på diamanten er 25, vil markeringsrammene koordinater være 25 og 50 . Metoden vil også ta en verdi for høyden av diamanten og en verdi for bredden av diamant. Instruksjoner , Lag en JFrame å trekke på
en
Start et nytt prosjekt i Integrated Development Environment , eller IDE, som du er mest erfaren med .
2
Opprett en ny klasse kalt " DrawingComponent " i prosjektet. Type " strekker Component " umiddelbart etter " DrawingComponent ", men før åpningen brakett på slutten av klassen erklæringen.
3
Skriv inn følgende kode over DrawingComponent klasse erklæring for å importere nødvendige filene inn i klassen : import java.awt.Component , import java.awt.Graphics , import java.awt.Graphics2D , import java.awt.geom.GeneralPath ;
4
Legg til en ny maling metode for å overstyre komponentens standard maling metode. Sett inn følgende kode mellom åpning og lukking parentes av DrawingComponent klassen : public void paint (Graphics g ) {
}
5
Opprett en ny JFrame i prosjektets viktigste metoden og legge til egendefinerte tegning komponent til det med denne koden : javax.swing.JFrame frame = new javax.swing.JFrame (); int frameWidth = 300 ; int frameHeight = 300 ; frame.setSize ( frameWidth , DrawingComponent ( ));
Tegn en Diamond
6
Opprett en ny metode i DrawingComponent klassen ved å legge denne koden mellom klassens åpning og lukking parentes , men utenfor de andre metodene i klassen : GeneralPath createDiamond ( int x , int y , int bredde, int høyde) {
}
7
Skriv inn følgende kode i createDiamond metode for å definere en ny GeneralPath med fire linjer: GeneralPath diamant = new GeneralPath ( GeneralPath.WIND_EVEN_ODD , 4 ) ;
8
Beregn de fire punktene i diamant gitte verdiene gått inn i metoden. Hver gang du beregne et punkt, lede veien gjennom det punktet . Bruk følgende kode for å oppnå dette : x + = bredde /2; diamond.moveTo ( x ,
9
Lukk GeneralPath objekt å slå den inn i en ferdig diamant og deretter returnere den med denne koden : diamond.closePath (); retur diamant,
10
Ring createDiamond metoden inne av malingen metoden og passerer resultatet til en forekomst av Graphics2D å trekke diamant med følgende kode : Graphics2D g2d = ( Graphics2D ) g ; g2d.draw ( createDiamond ( 100,100,50,100 ));