Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Поворот картинок (https://javascript.ru/forum/events/37457-povorot-kartinok.html)

Dimanchik87 20.04.2013 20:04

Поворот картинок
 
При вращении картинки,которая уже имеется(а не впервые создана),происходит дополнительное вращение.Судя по всему это связано с тем,что поворот считается относительно начального положения элемента (т.е. если элемент повернули на -360,а потом поворачиваем на 180,то этот элемент совершает поворот на 540).вопрос в том,как сделать чтобы поворот считался относительно конечного положения или как запомнить это конечное положение.
Вот код http://jsfiddle.net/dimanchik87/SpSSt/2/
p.s. Смотрите в мозилле

dmitriymar 20.04.2013 20:13

запоминать существующий угол и вычитать его из нового.
Запомнить как и всегда -в переменную.
Цитата:

Сообщение от Dimanchik87
(т.е. если элемент повернули на -360,а потом поворачиваем на 180,то этот элемент совершает поворот на 540).

По поводу этого -читайте доки . элемент не поворачивается.

Dimanchik87 20.04.2013 20:41

нашёл простое решение.Ввёл переменную,если уже был поворот,то надо на такой-то угол,если нет то на другой.
Т.е. если до этого был поворот на -360 то делаем поворот на 0,если не было - то на 360 , чтобы повернуть вокруг своей оси
Спасибо за ответ

dmitriymar 20.04.2013 21:00

Цитата:

Сообщение от Dimanchik87
нашёл простое решение.Ввёл переменную,если уже был поворот,то надо на такой-то угол,если нет то на другой.
Т.е. если до этого был поворот на -360 то делаем поворот на 0,если не было - то на 360 , чтобы повернуть вокруг своей оси
Спасибо за ответ

Вобщето это делается: поворот на угол, отрисовка, поворот на -угол

Dimanchik87 20.04.2013 21:30

что это значит?

dmitriymar 20.04.2013 21:33

Цитата:

Сообщение от Dimanchik87
что это значит?

то и значит что написано. если канву нужно "поворачивать" всякий раз на угол отсчитываемый не от текущей позиции , а от нуля то следует:
"повернуть канву" на необходимый угол
сделать необходимое
вернуть канву в исходное положение, задав ей "поворот" на минус угол

Dimanchik87 20.04.2013 22:08

у меня функция для анимации,если я буду поворачивать на -угол,чтобы вернуть в исходное положение,то функция не имеет смысла

dmitriymar 20.04.2013 22:32

Цитата:

Сообщение от Dimanchik87
у меня функция для анимации,если я буду поворачивать на -угол,чтобы вернуть в исходное положение,то функция не имеет смысла

это всё архитектура . усложняет программу, есть более простые варианты, занимает время..... ?
если да, менять на более простые решения


Часовой пояс GMT +3, время: 21:28.