Les espaces sont distribués aléatoirement.
Les noms des identificateurs ne respectent pas le style Java :
protected double X;
protected double Y;
double XMAX, double XMIN, double YMAX, double YMIN,Point
Origin, Point Pt
double scalex;
double scaley;
Le nom toPIX n'est pas significatif. Il doit être corrigé avant de songer à mettre un commentaire d'explication.
Dans toPIX(), il n'est pas précisé que XMIN doit être différent de XMAX. Par contre YMIN et YMAX peuvent être égaux. On est en droit de se demander pourquoi une telle différence de traitement entre les dimensions.
Il y a mélange d'interface et de calcul. Les instructions
System.out.println("---------------------------");
n'ont pas lieu d'être. Cela nuit gravement à la réutilisabilité.
Il y a des constantes en "dur" dans le code, ce qui nuit à la
maintenabilité et à la lisibilité :
width =width - 80;
heigth=heigth - 80;
newCoord.X = Math.rint(scalex * width) + 40;
newCoord.Y = (-Math.rint(scaley * heigth))+
heigth + 40;
Le code peut être simplifié :