Kaip piešti trikampius Java

„Java“ programavimo sąsajoje yra pažangi grafikos apdorojimo galimybė. Piešiant paprastas formas, pvz., trikampius, reikia apibrėžti formos parametrus rėmelyje. Šie parametrai nustatomi naudojant tam tikrus duomenų tipus ir Java metodus, kurie nurodo programos kompiliatoriui, ką daryti, kai iškviečiami metodai. Specialaus metodo, vadinamo paintComponent, nepaisymas užtikrina tikslų apibrėžtos formos piešimą.

1 žingsnis

Importuokite Graphics, Point ir Polygon awt paketus bei JFrame ir JPanel swing paketus. Kodas eina prieš pirmąją jūsų programos klasę ir atrodo taip:

Dienos vaizdo įrašas

importuoti java.awt. Grafika; importuoti java.awt. Taškas; importuoti java.awt. Poligonas; importuoti javax.swing. JFrame; importuoti javax.swing. JPanel;

2 žingsnis

Sukurkite savo trikampio klasę ir išplėskite JPanel klasę, kad trikampis būtų rodomas ekrane. Jūsų kodas turėtų atrodyti taip, nors savo programą galite pavadinti taip, kaip norite:

public class TriangleShape išplečia JPanel {

}

3 veiksmas

Nepaisykite paintComponent metodo pagrindinėje klasėje. Šiame metode pateikiamos instrukcijos, kurias „Java“ naudoja piešdama trikampį. Kodas atrodo taip, nors duomenų tipus galite pavadinti kaip tik norite:

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

Matmens ilgis = this.getSize(); Taškas p1 = naujas Taškas (dydis.plotis / 3, (2 * dydis.aukštis) / 3); Taškas p2 = naujas Taškas (dydis.plotis / 2, dydis.aukštis / 3); Taškas p3 = naujas Taškas((2 * dydis.plotis) / 3, (2 * dydis.aukštis) / 3); int[] x = { p1.x, p2.x, p3.x }; int[] y = { p1.y, p2.y, p3.y }; Daugiakampis trikampis = naujas daugiakampis (x, y, x.ilgis);

Taškai p1, p2 ir p3 apibrėžia trikampio viršūnes. Int[] masyvai ir daugiakampio tipo trikampis sudaro trikampio kojeles. Šis kodas yra jūsų pagrindinės klasės skliausteliuose.

4 veiksmas

Sukurkite pagrindinį metodą, kuris nurodo „Java“ sukurti rėmelį, ant kurio būtų nubrėžtas trikampis, ir prideda trikampį prie rėmelio. Kodas yra toks, naudojant jūsų vardus duomenų tipams:

public static void main (String[] args) {

TriangleShape t = naujas TriangleShape(); JFrame rėmelis = naujas JFrame(); frame.getContentPane().add (t); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.setSize (100, 100); rėmas.show();

Šis kodas yra jūsų pagrindinės klasės skliausteliuose po metodo printComponent.