![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2005
Сообщений: 23
|
Пытаюсь сделать программное прямолинейное перемещение мувика с одновременным вращением.
Причём вращение должно быть вокруг одной постоянной точки, стоящей на месте, а на деле центр вращения с перемещением клипа тоже меняет своё положение. Так вот можно ли как-то центр вращения менять программно, чтобы в итоге он всегда оставался на одном месте? Поиском нашёл что-то про local to global, но как это применить в данном случае?.. |
|
|||||
|
.grin! wuz here
|
можешь вручную нарисовать чего ты ты хзочешь, а то соовсем не понятно...
__________________
Breakcore them all! |
|
|||||
|
а ты перемещай обект(mc) внутри вращаемого объекта.
типа: в parent_mc объекте есть child_mc. // this.onEnterFrame=function() { parent_mc._rotation++; parent_mc.child_mc._x++;} // в итоге получиться что обект вращаеться, и уплывает от центра |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
this.createEmptyMovieClip("square_mc", 0)
this.square_mc.beginFill(0xCCCCCC, 100)
this.square_mc.lineTo(100, 0)
this.square_mc.lineTo(100, 100)
this.square_mc.lineTo(0, 100)
this.square_mc.endFill()
this.square_mc._x = this.square_mc._y = 100
this.square_mc.onEnterFrame = function() {
this.setRotation(this._rotation+1, this.x_center, this.y_center)
// this._x ++
}
this.square_mc.setRotation = function (rotation, x_center, y_center) {
var old_obj = {x:x_center, y:y_center}
var new_obj = {x:x_center, y:y_center}
this.localToGlobal(old_obj)
this._rotation = rotation
this.localToGlobal(new_obj)
this._x +=old_obj.x-new_obj.x
this._y +=old_obj.y-new_obj.y
}
this.square_mc.onPress = function () {
this.x_center = this._xmouse
this.y_center = this._ymouse
}
|
|
|||||
|
Регистрация: Oct 2005
Сообщений: 23
|
Мм.. да, немного непонятно.. вращение там вторично, главным образом объект перемещается прямолинейно..
В общем, надо показывать.. попозже будет.. |
|
|||||
|
Ветеран форума
|
Цитата:
__________________
BestMasterиZация |
|
|||||
|
Регистрация: Oct 2005
Сообщений: 23
|
Да. Наверное, этого достаточно, но соображалка перед Новым Годом плохо работает
![]() ... В архиве fla-файл (MX 2004). Шкала, которая движется вертикально сверху вниз, поворачивается и уходит влево, поскольку центр вращения находится на белой разграничивающей линии, которая видна в начале анимации. А нужно, чтобы цифры на шкале (10...50) находились посередине области прибора... |
|
|||||
|
Привет!
Если честно, то небыло времени просмотреть твой исходник. Но, посмотри, может мой подойдет? Правда, координаты смещения у меня вручную задаються (это поправимо ). А вот центр вращения постоянен. |
|
|||||
|
Регистрация: Oct 2005
Сообщений: 23
|
Спасибо всем большое. Наиболее простым и подходящим в данной ситуации оказался способ Бадима
![]() По сути всё просто, но сам не додумался, почему-то... ![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 20:24. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|