Banner

Sponsor

Login


Welcome Back!
Guest
Guest

Register

Lost your password?

89 users online



Zooming & Panning

Zooming & Panning

Currently viewing this thread: 1 (0 members and 1 guests)


rd4k1

rd4k1

Neverside Newbie
Status: Offline!

Zooming & Panning

Ok, I have a very simple zoom code here:

on (release) {
_xscale = 400;
_yscale = 400;
_x=-800
_y=-1000
}

I want the zoom to ease in, instead of snap zooming.
Also I want to be able to pan when the mouse rolls close to the edge.

crapthings

crapthings

Neverside Newbie
Status: Offline!

this.onMouseMove = function() {
constrainedMove(stage_bg, 2, 0);
constrainedMove(test1, 8, 0);
constrainedMove(test2, 6, 0);
constrainedMove(test3, 4, 1);
constrainedMove(menu, 3, 1);
};
function constrainedMove(target:MovieClip, speed:Number, dir:Number) {
var mouseXPercent:Number = _xmouse/Stage.width;
var mouseYPercent:Number = _ymouse/Stage.height;
var mXSpeed:Number;
var mYSpeed:Number;
if (dir == 1) {
mXSpeed = 1-mouseXPercent;
mYSpeed = 1-mouseYPercent;
} else {
mXSpeed = mouseXPercent;
mYSpeed = mouseYPercent;
}
target.destX = Math.round(-((target._width-Stage.width)*mXSpeed));
target.destY = Math.round(-((target._height-Stage.height-140)*mYSpeed+0.2));
target.onEnterFrame = function() {
if ((target._x == target.destX) && (target._y == target.destY)) {
delete target.onEnterFrame;
} else if ((target._x-target.destX)>0) {
target._x += Math.ceil((target.destX-target._x)*(speed/30));
target._y += Math.ceil((target.destY-target._y)*(speed/50));
} else {
target._x += Math.ceil((target.destX-target._x)*(speed/30));
target._y += Math.ceil((target.destY-target._y)*(speed/50));
}
};
}

crapthings

crapthings

Neverside Newbie
Status: Offline!

try the code above, very very cool.
http://www.kirupa.com/developer/flash8/interactive_image_pan.htm

rd4k1

rd4k1

Neverside Newbie
Status: Offline!

thx

I have a simple code for my zoom too
Here's what I used in case anyone needs it:

on (release) {
import mx.transitions.Tween;
import mx.transitions.easing.*;
var xScaleT:Tween = new Tween(this, "_xscale", Elastic.easeOut, 100, 400, 3, true);
var yScaleT:Tween = new Tween(this, "_yscale", Elastic.easeOut, 100, 400, 3, true);
var xPosT:Tween = new Tween(this, "_x", Elastic.easeOut, 0, -800, 3, true);
var yPosT:Tween = new Tween(this, "_y", Elastic.easeOut, 0, -1000, 3, true);
}

Quick Jump:

Main Navigation


Site & Graphic Design by Aeon Tan
Developed by Jeremie Pelletier & Scott Roach


NeverAPI generated this page in 0.0162 seconds.