PDA

Просмотр полной версии : Хочу сделать программное вращение, но...


jumpman23
17.04.2002, 00:39
Есть объект (movieclip) - квадрат, я хочу изменять его свойства (программно), например, вращать или к примеру перемещать.
Создаю цикл в нем изменяю свойства, но...
Проблема в том, что не происходит постоянного вращения, а происходит одна итерация, т.е.
одиночное вращение (единажды).
Создавал action как на кадр, так и для объекта, но результат одинаковый.
Вот сам action:

N=1000;
for (ugol= 75; ugol<N; ugol+= 15) {
setProperty (rect, _rotation, ugol);
}

Вот после этого мой прямоугольник поворачивается на 90 градусов, причем мне не понятно, почему если поменять
шаг, т.е. к примеру написать ugol+=1 или ugol++, то объет поворачивается на непонятное кол-во градусов, к тому же меняй, не меняй начальное
значение (ugol=75) на какое-то другое, никак это не влияет на поворот.
Возможно неправильно написан action или чего-то не хватает? В чем ошибка?
Да, кстати, вопрос в догонку, есть кнопка, я хочу чтобы при нажатии на нее мой прямоугольник перемещался на 10 пикселов, но
у меня получается что с прямоугольником перемещается и кнопка на 10px. Как это поправить?

derhab
17.04.2002, 00:54
Да все проще, вот тебе вращение. Аналогично любое движнеие.

onClipEvent (load) {
n = 0;
}
onClipEvent (enterFrame) {
this._rotation = n;
n = n+1;
}

WD`
17.04.2002, 00:59
ili vot:

derhab
17.04.2002, 01:09
А еще так прикольно :)

onClipEvent (enterFrame) {
this._x = 0;
this._y = 0;
_root._rotation = n;
n = n+1;
}

Aib
17.04.2002, 09:14
Углы в радианах задаются, а не в градусах: rad = (PI/180)*deg

DeliMIter
17.04.2002, 12:34
Стандартная ошибка. Скрипт выполняется НЕ параллельно смене кадров. Пока не отработает скрипт новый кадр не наступает. Где-ньть в уроках отражен этот факт?