Salve, ho un piccolo problema con il metodo costruttore di Ellips2D.Double.
Mi sono imbattuto in questo metodo per disegnare una circonferenza e se cambio le coordinate o le dimensioni, cambia pure la forma della mia circonferenza.
Esempio:

codice:
double x=284,y=436,w=5,h=5;
Ellipse2D.Double prova=new Ellipse2D.Double(x,y,w,h); 
Graphics2D g2d = (Graphics2D) g; 
g.setColor(Color.RED); 
g2d.fill(prova);
Come risultato finale non mi d'ha una circonferenza ma un quadrato.

Se invece cambio le coordinate in x=284.50 e y=436.50 ottengo una circonferenza perfetta.
Vorrei capire la motivazione di questo teorema: AL VARIARE DELLE COORDINATE x,y VARIA LA FORMA DELLA CIRCONFERENZA (da double a int).
In particolare mi interesserebbe realizzare una circonferenza con w e h=3.
Grazie anticipatamente per la risposta