Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.06.2012, 16:26
Новичок на форуме
Отправить личное сообщение для DenBraun Посмотреть профиль Найти все сообщения от DenBraun
 
Регистрация: 17.06.2012
Сообщений: 8

Задача: поворот движущего сложного объекта canvas
Всем привет, у меня возникла проблема с canvas, помогите плиз решить.
Вообщем есть сложный объект размером 30х30рх, он постоянно перерисовывается чтоб создать эфект движения, то есть у него постоянно меняются координаты Х и Y. Мне необходимо его повернуть например под углом 90", но при этом координатная сетка должна остаться в том же положении.
Я так понимаю это можно сделать с помощью метода setTransform, но все мои эксперементы пока безуспешны, либо сильно искривляет объект либо смещает оси координат. Если есть у кого решение дайте плиз буду очееень благодарен)
Ответить с цитированием
  #2 (permalink)  
Старый 18.06.2012, 16:31
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

canvas rotate center
Ответить с цитированием
  #3 (permalink)  
Старый 18.06.2012, 16:34
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от DenBraun
он постоянно перерисовывается чтоб создать эфект движения, то есть у него постоянно меняются координаты Х и Y.
Ксать зачастую занчительно шустрее анимировать положения встроенного над основным canvas мелкого дополнительного(если форма объекта легко обрамляется в круг или прямоугольник)
Ответить с цитированием
  #4 (permalink)  
Старый 18.06.2012, 16:37
Новичок на форуме
Отправить личное сообщение для DenBraun Посмотреть профиль Найти все сообщения от DenBraun
 
Регистрация: 17.06.2012
Сообщений: 8

метод rotate() к сожалению тут не подходит так как смещается ось координат
Ответить с цитированием
  #5 (permalink)  
Старый 18.06.2012, 16:42
Новичок на форуме
Отправить личное сообщение для DenBraun Посмотреть профиль Найти все сообщения от DenBraun
 
Регистрация: 17.06.2012
Сообщений: 8

Цитата:
Ксать зачастую занчительно шустрее анимировать положения встроенного над основным canvas мелкого дополнительного(если форма объекта легко обрамляется в круг или прямоугольник)
я так понимаю вы имеете в виду метод createImageData() или создание еще одного элемента canvas
Ответить с цитированием
  #6 (permalink)  
Старый 18.06.2012, 16:53
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от DenBraun
или создание еще одного элемента canvas
Если есть большое canvas статического поля (ну не совсем статического - эффекты на нём можно отобразить) динамический canvas можно отрендить сcs3 типо анимация, инерционность
Ответить с цитированием
  #7 (permalink)  
Старый 18.06.2012, 17:02
Новичок на форуме
Отправить личное сообщение для DenBraun Посмотреть профиль Найти все сообщения от DenBraun
 
Регистрация: 17.06.2012
Сообщений: 8

Цитата:
отрендить сcs3
я так тоже уже думал сделать, но потом отказался так как не хватает еще пока в CSS переменных, этот объект - это моб в игре отрисованный примитивами и анимирован, одновременно их на карте может находиться до 100шт, плюс там у меня еще завязана логика на них, то есть поиск оптимального пути и т.д.
Перекопав кучу материала я пришел к выводу что единственная норм возможность повернуть моба это метод setTransform(), с помощью него можно наложить хитрую матрицу на сохраненый объект, таким образом чтоб не сместить ось координат.
Ответить с цитированием
  #8 (permalink)  
Старый 18.06.2012, 17:05
Новичок на форуме
Отправить личное сообщение для DenBraun Посмотреть профиль Найти все сообщения от DenBraun
 
Регистрация: 17.06.2012
Сообщений: 8

Можно еще покапаться с методом createImageData(), но это по пиксельная трансформация, то есть можно два раза перерисовывать моба, но это уже лишняя нагрузка
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поворот изображения на Canvas Severtain Общие вопросы Javascript 16 07.07.2011 19:19