PDA

Просмотр полной версии : Реализация Масштабирования во время Drug ('n'Drop)


E_M_Master
17.03.2006, 16:19
Подскажите, как реализовать масштабирование во время "перетаскивания" пользователем объекта видеоклипа?

Пробовал вставить в обработчик события на нажатие кнопки мыши на клипе временной интервал с функцией, меняющей масштаб но не работало... см последние 2 строчки кода...
ТО что делал:
on (press)
{
function movescale (obj)
{
this.camerax=-50;
this.cameray=0;
this.cameraz=424;
dscreenc(this,_root._xmouse,_root._ymouse);
fullxyzevaluate(this);
min=Math.sqrt(this.camerax*this.camerax+(this.cameraz-177)*(this.cameraz-177));
this._xscale=(this.distance/min)*100+25;
this._yscale=(this.distance/min)*100+25;
}

this.startDrag(true,0,210,656,456);
ctID1 = setInterval(movescale(this),50);
}

silin
17.03.2006, 16:50
для начала
посмотри как передаются параметры в сетинтервальную функцию..
посмотри что ты передаешь (на что указывает this)
подумай зачем ты передаешь obj, если его не используешь

E_M_Master
17.03.2006, 19:59
Спасибо, обязательно гляну, но пока чтонет времени.
Скажи плжалуйста, поставленную проблему нужно реализовывать именно в такой концепции ???

E_M_Master
17.03.2006, 20:00
Спасибо, обязательно гляну, но пока чтонет времени.
Скажи плжалуйста, поставленную проблему нужно реализовывать именно в такой концепции ???

Double
17.03.2006, 20:14
блин, ну тебе указали на ошибки, а ты говоришь, что потом посмотришь. ну когда посмотришь, тогда и приходи с новыми вопросами.

silin
17.03.2006, 20:15
да вовсе нет, вариантов много..
если масштабирование зависит от времени, то конечно setInteval( или onEnterFrame),
а если от позиции курсора, то лучше на onMouseMove это повесить, например по onPress определяем onMouseMove , по onRelease удаляем:
mc.onPress=function(){
var x=_xmouse;
this.onMouseMove=function(){
this._x+=_xmouse-x;//перетаскивание
x=_xmouse;
this._xscale=_xmouse/4;//масштабирование
}
}
mc.onRelease=function(){
delete this.onMouseMove;
}

Double
17.03.2006, 20:21
silin, почему не присваивать this._x значение _xmouse+const? к чему хранить предыдущую позицию мыши?

silin
17.03.2006, 20:29
да не принципиально, имхо..
мне так удобнее: не надо думать чей _xmouse берем (смотрим тока изменение)

Double
17.03.2006, 20:43
понял. я _root частенько использую (_root._xmouse). понимаю, что всякие импорты подразумевают lockroot, но дельту почему-то не использовал никогда.