Kuinka piirtää kolmioita Javassa

Java-ohjelmointirajapinta sisältää edistyneen grafiikan käsittelykyvyn. Yksinkertaisten muotojen, kuten kolmioiden, piirtäminen on kysymys kehyksen muodon parametrien määrittämisestä. Nämä parametrit asetetaan käyttämällä tiettyjä tietotyyppejä ja Java-menetelmiä, jotka ohjaavat ohjelman kääntäjää, mitä tehdä, kun menetelmiä kutsutaan. Erikoismenetelmän, paintComponentin ohittaminen varmistaa määritellyn muodon tarkan piirtämisen.

Vaihe 1

Tuo Graphics-, Point- ja Polygon awt-paketit sekä JFrame- ja JPanel-swing-paketit. Koodi menee ennen ohjelman ensimmäistä luokkaa ja näyttää tältä:

Päivän video

tuo java.awt. Grafiikka; tuo java.awt. Kohta; tuo java.awt. Monikulmio; tuonti javax.swing. JFrame; tuonti javax.swing. JPanel;

Vaihe 2

Luo kolmioluokka ja laajenna JPanel-luokkaa niin, että kolmio voidaan näyttää näytöllä. Koodisi pitäisi näyttää tältä, vaikka voit nimetä ohjelmasi haluamallasi tavalla:

public class TriangleShape laajentaa JPanel {

}

Vaihe 3

Ohita paintComponent-menetelmä pääluokassasi. Ohjeet, joita Java käyttää kolmion piirtämiseen, ovat tässä menetelmässä. Koodi näyttää tältä, vaikka voit nimetä tietotyypit miten haluat:

public void paintComponent (Grafiikka g) { super.paintComponent (g);

Mitan pituus = this.getSize(); Piste p1 = uusi Piste (koko.leveys / 3, (2 * koko.korkeus) / 3); Piste p2 = uusi Piste (koko.leveys / 2, koko.korkeus / 3); Piste p3 = uusi Piste((2 * koko.leveys) / 3, (2 * koko.korkeus) / 3); int[] x = {p1.x, p2.x, p3.x}; int[] y = { p1.y, p2.y, p3.y }; Monikulmiokolmio = uusi monikulmio (x, y, x.length);

Pisteet p1, p2 ja p3 määrittelevät kolmion kärjet. Int[]-taulukot ja Polygon-tyyppinen kolmio muodostavat kolmion haarat. Tämä koodi menee pääluokkasi hakasulkeisiin.

Vaihe 4

Luo päämenetelmä, joka käskee Javaa luomaan kehyksen, johon kolmio piirretään, ja lisää kolmion kehykseen. Koodi on seuraava, käyttämällä nimiäsi tietotyypeille:

public static void main (String[] args) {

TriangleShape t = uusi kolmiomuoto(); JFrame-kehys = uusi JFrame(); frame.getContentPane().add (t); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.setSize (100, 100); frame.show();

Tämä koodi menee pääluokkasi hakasulkeisiin printComponent-metodin jälkeen.