MouseInfo

java.lang.Object <– greenfoot.MouseInfo public class MouseInfo extends java.lang.Object La classe contiene informazioni sullo stato attuale del mouse. L’oggetto MouseInfo si ottiene tramite il metodo Greenfoot.getMouseInfo().   public int getX() public int getY() Si ottiene la posizione attuale del mouse. Sono le coordinate della cella all’interno della griglia. Restituiscono:  la posizione x/y. public Actor getActor() Restituisce l’attore coinvolto in un evento del mouse.  Se c’è stato un clic … Leggi tutto

GreenfootImage

java.lang.Object <- greenfoot.GreenfootImage public class GreenfootImage extends java.lang.Object Un’immagine da visualizzare sullo schermo. L’immagine può essere caricata da un file immagine e/o disegnata utilizzando diversi metodi per di disegno.   public GreenfootImage(int larghezza, int altezza) Crea un’immagine vuota (trasparente) con le dimensioni specificate. Parametri: larghezza – La larghezza dell’immagine in pixel. altezza – L’altezza dell’immagine in pixel. public GreenfootImage(java.lang.String nomeFile) throws java.lang.IllegalArgumentException Crea … Leggi tutto

Cerchi in movimento #2

Interattivo! Il movimento continuo è provocato dal Timer ma con i tasti direzione è possibile far cambiare direzione al cerchio (rendi prima attivo il pannello con il mouse…) Nella barra di stato è possibile seguire gli eventi della tastiera. import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.Timer; public class MuoviCerchioLR extends Applet implements ActionListener, KeyListener … Leggi tutto

Cerchi in movimento #1

Raggio=45, Velocità=10 px/s Raggio=30, Velocità=100 px/s import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.Timer; public class MuoviCerchio extends Applet implements ActionListener { final int xMin=0; int xMax, // limiti sinistro e destro xC, // coordinate dell’angolo in alto yC; // del cerchio int raggio, diametro; int ms; // ogni quanti millisecondi si muove Timer t; … Leggi tutto

Disegnare cerchi #3

Il colore e il raggio sono parametrici import java.applet.*; import java.awt.*; public class Cerchio_3 extends Applet { int raggio, x1, y1, diametro; Color colore; public void init() { String input; input=getParameter(“colore”); int nc=Integer.parseInt(input); if(nc == 1) colore=Color.blue; else if(nc == 2) colore=Color.red; input=getParameter(“raggio”); raggio=Integer.parseInt(input); diametro=2*raggio; x1=getSize().width/2-raggio; y1=getSize().height/2-raggio; } public void paint(Graphics g) { g.setColor(c); g.drawOval(x1, … Leggi tutto

Disegnare cerchi #2

Con il metodo init() si inizializzano i dati in modo che il cerchio sia disegnato al centro della applet Il tuo browser non gestisce correttamente l’applicazione.   import java.applet.*; import java.awt.*; public class Cerchio_2 extends Applet {    final int raggio=100;    int x1, y1,        diametro;    public void init()    { … Leggi tutto

Disegnare cerchi #1

I parametri di drawOval() sono gli stessi di drawRect() e quindi specificano l’angolo a Nord Ovest e le due dimensioni orizzontale e verticale Il tuo browser non gestisce correttamente l’applicazione.   import java.applet.*; import java.awt.*; public class Cerchio_1 extends Applet {    final int raggio=100;    final int x=100;    final int y=100;    public … Leggi tutto

Immagine interattiva #2

L’immagine si sposta dove si trascina il mouse … import java.applet.*; import java.awt.*; import java.awt.event.*; public class a_duke_3 extends Applet { private Image immagine; private int   x, y; public void init() { x=getSize().width/2; y=getSize().height/2; immagine=getImage(getCodeBase(), “duke.jpg”); this.addMouseMotionListener(new MMA()); } public void paint(Graphics g) { g.drawImage(immagine, x, y, this); } private void aggiorna(int nx, int … Leggi tutto

Immagine interattiva #1

L’immagine si sposta dove si clicca con il mouse … … import java.applet.*; import java.awt.*; import java.awt.event.*; public class a_duke_1 extends    Applet implements MouseListener { private Image immagine; private int   x, y; public void init() { x=getSize().width/2; y=getSize().height/2; immagine=getImage(getCodeBase(), “duke.jpg”); this.addMouseListener(this); } public void paint(Graphics g) { g.drawImage(immagine, x, y, this); } private … Leggi tutto

Animazione #3

Con il double buffering si elimina lo sfarfallio … import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.Timer; public class Animazione_2 extends    Applet implements ActionListener { final int ms=100; Timer t; final int nFrame=12; int frame; Image iFrame[]; final int dx=200; final int dy=200; Graphics gOFF; Image iOFF; public void init() { iOFF=createImage(dx, dy); gOFF=iOFF.getGraphics(); … Leggi tutto