Buonasera,
scusatemi per il pessimo titolo del post, spero che qualcuno riesca ugualmente a darmi un aiuto.
Ho scritto la GUI di un programmino. Tale GUI mostra in una finestra un oggetto circolare che si muove, e l'oggetto è preso da un immagine con il metodo ImageIO.read; il tutto è in 2 dimensioni.
Per realizzare il movimento dell'oggetto ho salvato nei suoi campi un vettore di coordinate [x y]. Quando devo realizzare il movimento di un passo in orizzontale incremento la x di 1 (pixel) e chiamo il repaint. Analogamente per un movimento in verticale. In tal modo la lunghezza di un passo è 1 pixel.
Vorrei però poter spostare l'oggetto anche in altre direzioni. Ma qui ho incontrato le prime difficoltà. Infatti se volessi muoverlo a 45 gradi, per logica dovrei incrementare x=x+1 ed y=y+1. Ma in tal modo il passo non è di lunghezza 1, bensì sqrt(2)>1.
Il tutto è dovuto al fatto che non mi pare si possano specificare sottomultipli del pixel nelle coordinate. Come si può ottenere una gestione fine delle coordinate?
Grazie, ciao
Pete