Показать сообщение отдельно
Старый 31.05.2006, 10:16
petrochenko1981 вне форума Посмотреть профиль Отправить личное сообщение для petrochenko1981 Найти все сообщения от petrochenko1981
  № 1  
petrochenko1981

Регистрация: Oct 2005
Сообщений: 106
По умолчанию Замедление в панораме

Здравствуйте, подскажите пожалуйста, как можно сделать, чтобы панорама (эффект движения камеры картинки под маской) с замедление останавливала свое движение, когда курсор мыши отвели и потом его не двигаем.
Вот реально, работающий скрипт для панорамы.
Заранее огромное спасибо.

photo - мувик картинки,
mask – мувик маски.
stroke – мувик области движения мышки, где происходит движение картинки

photo.onRollOver = panelOver;

var b = stroke.getBounds(_root);
var DeltaX = photo._width-mask._width; /*для того чтобы картинка не уезжала за края маски по ширине*/
var DeltaY = photo._height-mask._height; /*для того чтобы картинка не уезжала за края маски по высоте*/

var SpeedY=30;
var SpeedX=30;

function panelOver() {
this.onEnterFrame = scrollPanel;
delete this.onRollOver;
}

function scrollPanel() {

if(_xmouse<b.xMin || _xmouse>b.xMax || _ymouse<b.yMin || _ymouse>b.yMax) {
this.onRollOver = panelOver;
delete this.onEnterFrame;
}

xdist = _xmouse - stroke._width/2;
ydist = _ymouse - stroke._height/2;

photo._x += Math.round(-xdist / SpeedX);
photo._y += Math.round(-ydist / SpeedY);
updateAfterEvent();


if(photo._x >= mask._x){
photo._x = mask._x;}

if(photo._y >= mask._y){
photo._y = mask._y;}

if (photo._x <= mask._x-DeltaX){
photo._x = mask _x-DeltaX;}

if(photo._y <= mask._y-DeltaY){
photo._y = mask._y-DeltaY;}
}