Zoomfunktion - problemer med localtoglobal()
Jeg er i gang med et projekt, og jeg skal have et movieclip til at zoome ind på et punkt (pt).Følgende kode virker, men jeg ønsker at nøjes med at ændre på movieklippet ved navn resizer.
onClipEvent (enterFrame) {
if (!zoom) {
return;
}
_root._xscale += dir*k*700/22;
_root._yscale += dir*k*700/22;
var pt2 = {x:pt.x, y:pt.y};
_root.localToGlobal(pt2);
_root._x -= (pt2.x-pt.x);
_root._y -= (pt2.y-pt.y);
k++;
if (k == 22) {
zoom = false;
k = 0;
}
}
Følgende kode er mit bedste forsøg so far, det eneste problem er at resizer ikke bliver flyttet, så det man vil zoome ind på holdes i fokus. Jeg har sporet problemet så langt, som til at pt = pt2 hele tiden, dette må betyde at localtoglobal ikke virker efter hensigten mere... Spørgsmålet er hvorfor? og hvordan ordner jeg det?
onClipEvent (enterFrame) {
if (!zoom) {
return;
}
_root.resizer._xscale += dir*k*700/22;
_root.resizer._yscale += dir*k*700/22;
var pt2 = {x:pt.x, y:pt.y};
_root.localToGlobal(pt2);
_root.resizer._x -= (pt2.x-pt.x);
_root.resizer._y -= (pt2.y-pt.y);
k++;
if (k == 22) {
zoom = false;
k = 0;
}
}