|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
[java] AffineTransform
Salve a tutti, il mio problema è questo:
Sto provando a rifare frozen-bubble (http://www.frozen-bubble.org/) in java, il problema è che per ruotare e posizionare il cannone uso AffineTransform con la seguente funzione: Codice:
/** * Override del metodo draw della classe Entity utile a eseguire una trasformazione * allo sprite, attraverso la classe AffineTransform, prima che esso venga disegnato * nel contesto grafico * * @param g: contasto grafico nel quale diasegnare l'entià */ public void draw(Graphics g) { AffineTransform at = new AffineTransform(); //ruoto l'immagine di a gradi at.setToRotation(Math.toRadians(cambiaAngoloDelCazzo(alpha)), 50,50); //sposto lo sprite nelle coordinate indicate at.setToTranslation(x,y); //disegno lo sprite sprite.draw(g, at, 0, 0); } Codice:
/** * Disegna l'immagine dello sprite corrente all'interno del contesto grafico * g passato come parametro, e nel caso il parametro at sia diverso da null * verranno applicate le trasformazioni da esso definite * * @param g: contesto grafico dentro al quale disegnare * @param at: Se diverso da null, l'immagine viene disegnata con le trasformazioni definite * da questo parametro * @param x: Posizione nelle ascisse * @param y: Posizione nelle ordinate */ public void draw(Graphics g ,AffineTransform at ,int x ,int y) { //se il parametro at è diverso da null viene disegnato lo sprite //con le trasformazioni da esso definite if (at == null) { g.drawImage(image, x, y, null); } else { Graphics2D g2d = (Graphics2D)g; // abilita l'antialiasing g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2d.drawImage(image, at, null); } } Qualcuno di voi ha un'idea di cosa si possa trattare??? Ciao e grazie anticipatamente Ultima modifica di mone.java : 06-08-2008 alle 13:47. |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Devi usare rotate(), scale(), translate() ecc... che "concatenano" la trasformazione!!
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
Grazie mille!!!!!!!!!!!!!!!!!!!!!
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza" |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:25.