Repère "normal"
Repère "pixel"
Soit la taille de la carte en pixels Tp et la taille "normale" de la carte Tn.
Pour récupérer la taille de la carte, tu peux récupérer la largeur de ton image en javascript (J'ai pas compris le rapport avec la taille de la fenêtre, je suppose que tu voulais dire la taille de ton image).
Spoiler :
Google : javascript get image width me donne
function getImageWidth(myImage) {
var x, obj;
if (document.layers) {
var img = getImage(myImage);
return img.width;
} else {
return getElementWidth(myImage);
}
return -1;
}
|
Pour passer des coordonnées "normales" -> "pixel" :
Le facteur d'échelle dans ce 'sens' est Ep = Tp/Tn
On connait (Xn,Yn), (Xp,Yp) et (An,Bn)
On veut trouver (Ap,Bp)
- Ap = Xp + Ep * (An - Xn)
- Bp = Yp + Ep * (Bn - Yn)
Pour passer de "pixel" -> "normal" :
Le facteur d'échelle dans ce 'sens' est En = Tn/Tp
On connait (Xn,Yn), (Xp,Yp) et (Ap,Bp).
On veut trouver (An,Bn)
- An = Xn + En * (Ap - Xp)
- Bn = Yn + En * (Bp - Yp)
edit : si t'as une image tordue et que l'échelle verticale et l'échelle horizontale sont différentes, il faut calculer un facteur d'échelle "horizontal" et un facteur d'échelle "vertical".
Message édité par art_dupond le 13-05-2007 à 10:43:48
---------------
oui oui