Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.23;
Скачать: CL | DM;

Вниз

Оптимизация.   Найти похожие ветки 

 
@!!ex ©   (2007-01-11 00:03) [0]

Есть кости:

1 - парент 2,
2 - парент 3

Положение кости задается перемещением и вращением(углы Эйлера) относительно парента.
нужно убрать кость 2, соответственно 3 кость уже будет относительно 1.
Самое логичное - построить матрицу преобразования второй кости и умножить ее на матрицу преобразования 3 кости, потом оттуда вытащить перемещение и вращение.
Но!
Углы Эйлера в части случаев однозначно не определяются!
НЕ знаю что делать... Есть идеи?


 
@!!ex ©   (2007-01-11 00:08) [1]

вот пикча
http://afera-net.narod.ru/joints.bmp


 
ors_archangel ©   (2007-01-11 02:16) [2]

[0] А через формулы никак не выразить?
[1] А jpg никак не сделать?


 
@!!ex ©   (2007-01-11 09:33) [3]


> [0] А через формулы никак не выразить?

Можно. Только бы знать еще эти формулы. :))


> [1] А jpg никак не сделать?

Каюсь, ступил.


 
ors_archangel ©   (2007-01-13 17:12) [4]

Если проблема ещё актуальна, то можешь уточнить, как child-кость поворачивается относительно parent-кости по углам Эйлера: каково её изначальное положение - сонаправлено оси что ли? Если, допустим, сонаправлено, то по оси X ей вращаться бесполезно? Чем положение кости вообще в конечном итоге задаётся, я правильно понял, центр + поворот?


 
@!!ex ©   (2007-01-14 01:10) [5]

изначально ее положение - вращение(0,0,0) и перемещение(0,0,0).
Для каждой кости задается локальная матрица:
Устанавливаем в матрицу углы и перемещение.
Потом считаем глобальную матрицу, относительно Т0 уже.
Глоабальная матрица расчитывается так:
если нет парента, то ее глобальная матрице равна локальной.
Если парент есть, то
1) Глобальной матрице чилда присваевается гл. матрица парента.
2) Глобальная матрица чилда умножается на ее же локальную матрицу.

Вообщем расчет полностью аналогичен SMD, за исключением некоторых незначительных мелочей.


 
Леон ©   (2007-01-14 13:24) [6]

1. <quote> потом оттуда вытащить перемещение и вращение. </quote>
имхо, это невозможно.. да и не нужно (glMultMatrix должна помочь)
2. <quote>Углы Эйлера в части случаев однозначно не определяются!</quote>
возможно, помогут кватернионы (Кватернионы и 3-х мерные повороты. http://karataev.nm.ru/quat3rot/file3.html статья могла переместиться..)


 
@!!ex ©   (2007-01-14 18:29) [7]


> 1. <quote> потом оттуда вытащить перемещение и вращение.
>  </quote>
> имхо, это невозможно.. да и не нужно (glMultMatrix должна
> помочь)

Не нужно? :)) Серьезно чтоли? А в чем тогда смысл топика? :))
Поможет строчка на столбик.....
Я вообще не отображение пишу.....
Мне нужно исключить из файлика лишние кости......
А в файлике все хрнаится именно в виде: вращение/перемещение


> 2. <quote>Углы Эйлера в части случаев однозначно не определяются!
> </quote>
> возможно, помогут кватернионы (Кватернионы и 3-х мерные
> повороты. http://karataev.nm.ru/quat3rot/file3.html статья
> могла переместиться..)

Каким образом тут могут помочь кватернионы?


 
ors_archangel ©   (2007-01-14 21:38) [8]

Что плохого в неоднозначности в случае с анализом матрицы?


 
@!!ex ©   (2007-01-14 23:18) [9]


> ors_archangel ©   (14.01.07 21:38) [8]

Имеем неоднозначность => не знаем чему равны углы.



Страницы: 1 вся ветка

Текущий архив: 2008.03.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.013 c
15-1202477158
ПЛОВ
2008-02-08 16:25
2008.03.23
Есть ли уже подобное средство...


3-1194190900
mufan
2007-11-04 18:41
2008.03.23
ADO, Query и русский язык!!!


11-1186121703
BMouradov
2007-08-03 10:15
2008.03.23
Поворот изображений


6-1183112626
Barsky
2007-06-29 14:23
2008.03.23
Как считать значение checkbox с формы документа?


15-1202320985
Dmitry_V
2008-02-06 21:03
2008.03.23
насколько трудоёмко программирование ActiveX?