Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.03.2010, 11:30
gen4 вне форума Посмотреть профиль Отправить личное сообщение для gen4 Найти все сообщения от gen4
  № 1  
Ответить с цитированием
gen4
[+4 18.09.08]

Регистрация: May 2006
Сообщений: 79
По умолчанию Вращение matrix3d по мировым координатам

Затык с 3д-матрицей.

Пытаюсь вращать 3д матрицу через appendRotation и, как и написано в хелпе, вращение происходит относительно осей объекта.
Мне же нужно вращать относительно мировых осей.
Тот же хелп говорит использовать recompose() - но примеров его использования в таком контексте нет, а как с ним работать я так и не смог понять.


Кто нибудь подскажет?

Старый 09.03.2010, 13:23
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 2  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Есть 2 способа:
1) В самом-самом начале, когда объект только создан, его оси совпадают с мировыми.
Если хотите повернуть объект относительно мировых осей - поверните его обратно относительно его собственных (верните в начальное состояние), а потом поворачивайте на нужный угол.
2)AppendRotation = "добавить вращение"
Чтобы заменить вращение нужно переписать матрицу объекта. Один из способов - задать вектора сдвига, вращения и масштаба (метод recompose)

Цитата:
но примеров его использования в таком контексте нет, а как с ним работать я так и не смог понять
В другом контексте их не может быть в принципе. Что именно Вам не понятно?
__________________
...вселенская грусть

Старый 09.03.2010, 15:18
gen4 вне форума Посмотреть профиль Отправить личное сообщение для gen4 Найти все сообщения от gen4
  № 3  
Ответить с цитированием
gen4
[+4 18.09.08]

Регистрация: May 2006
Сообщений: 79
Похоже, мы говорим о разном.
Я не имею ввиду центр вращения, если я вас правильно понял.

В моем случае, если я сначала повернул конус по горизонтальной оси (Х) на 45', затем начинаю поворачивать по вертикальной (Y) - так вот, сейчас вертикальная ось уже сместилась на 45' и вращение конуса будет таким же, как и до смещения - основание будет вращаться вокруг центра окружности.

Нужно же, что бы после смещения по Х, при повороте по Y, центр основания конуса описывал окружность с ненулевым радиусом.

Словом, сейчас при вращении по одной из осей, другие поворачиваются вместе с объектом - мне этого нужно избежать.

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:16.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.