Home Programmazione Java 2D - Guida completa Capitolo 16: Il disegno di base in Java2D: forme geometriche elementari.

Page Rank Check    





Ultimi articoli

Capitolo 16: Il disegno di base in Java2D: forme geometriche elementari.
Guide di programmazione - Java 2D - Guida completa
Scritto da RedBaron85   
Sabato 30 Gennaio 2010 18:38

Guida alla programmazione delle GUI, interfacce grafiche in Java 2D - 16: disegnare forme geometriche elementari


Capitolo 16: Il disegno di base in Java2D: forme geometriche elementari.

La classe Graphics mette a disposizione una serie di metodi (da invocare all'interno di paintComponent) per disegnare forme geometriche elementari, sia vuote che piene:

drawLine(int x1, int y1, int x2, int y2)   :   void Disegna un segmento con vertici in (x1, y1) e in (x2, y2).
drawRect(int x, int y, int width, int height)   :   void Disegna un rettangolo con vertice in alto a sinistra nel punto di coordinata (x,y).
drawOval(int x, int y, int width, int height)   :   void Disegna un ovale con vertice in alto a sinistra dell'ipotetico 'box' che lo racchiude nel punto di coordinata (x,y).
drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)   :   void Disegna un rettangolo dai bordi arrotondati  con vertice in alto a sinistra nel punto di coordinata (x,y).
drawPolygon(Polygon p)   :   void Disegna un oggetto Polygon (un poligono); vd. in seguito per la definizione di tale oggetto.
drawPolygon(int[] xCoord, int[] yCoord, int npoints);   :   void Disegna un poligono 'definito al volo', formato da npoints vertici; ciascun vertice avrà coordinata (xCoord[i], yCoord[i]); il metodo scorrerà i due array per recuperare i valori delle coordinate per npoints vertici.
drawPolyline(int[] xCoord, int[] yCoord, int npoints);   :   void Disegna una spezzata formata da n vertici; ciascun vertice avrà coordinata (xCoord[i], yCoord[i]); il metodo scorrerà i due array per recuperare i valori delle coordinate per npoints vertici.
drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)   :   void Disegna un arco.

 

 

NOTA: utilizzando, come parametri di drawLine, i valori:

  • (x1, y1, x1, y1)

potremo disegnare un punto (una linea dove vertice di partenza e di arrivo coincidono: un punto :-) ).

 

Per disegnare un cerchio, utilizzare drawOval con valori uguali per i parametri width ed height.

 

 

Per disegnare forme piene (rettangoli colorati, ....), possiamo utilizzare invece i metodi:

fillRect(int x, int y, int width, int height)   :   void Disegna un rettangolo pieno.
fillRoundRect(int x, int y, int height, int arcwidth, int archeight)   :   void Disegna un rettangolo dai bordi arrotondati pieno.
fillOval(int x, int y, int width, int height)   :   void Disegna un ovale pieno (impostare valori di width ed height uguali per disegnare un cerchio pieno).
fillPolygon(Polygon p)   :   void Disegna un poligono pieno.
fillPolygon(int[] x, int[] y, int npoints)   :   void Disegna un poligono definito 'al volo' pieno.
fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)   :   void Disegna un arco pieno.

Il colore di riempimento sarà l'ultimo colore impostato per il contesto grafico con il metodo di Graphics:

  • setColor(Color c)   :   void

(default: nero, con Alpha a 1).

 

NOTA sulla classe Polygon: con tale classe è possibile definire dei poligoni, considerati successioni di coppie di vertici di coordinate x e y.

Polygon ha due costruttori:

  • Polygon(), per definire un poligono i cui vertici andranno impostati in seguito;
  • Polygon(int[] xpoints, int[] ypoints, int npoint), per definire un poligono di npoints vertici, con ciascun vertice che avrà coordinate (xpoints[i], ypoints[i]).

Polygon mette a disposizione vari metodi utili, ma per un elenco completo degli stessi rimando alle API di java.awt.

Tags:     programmazione      guide      manuali      corso      j2d      java 2d      gui      interfacce      capitolo 16      forme geometriche      linee      rettangoli      ovali      cerchi
Ultimo aggiornamento Domenica 22 Gennaio 2012 18:37
 

Ti è piaciuto questo articolo ? Condividilo !



RedBaron85.com Forum community banner

Non hai trovato quello che cercavi ?
Ricerca personalizzata
Copyright © 2012 RedBaron85.com: Informatica, CG 2D e 3D, Blender, Python, Java 2D e 3D, 3D Studio e altro ancora!. Tutti i diritti riservati.
Joomla! è un software libero rilasciato sotto licenza GNU/GPL.

Milanese Francesco - Partita IVA: 04950350878

AltroArticoliblog utentiBlueprintsContestenglishProgrammazioneModelliElencoNewsTexturesTutorialsVideotutorials