Главная страница
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.015 c
15-1202683406
Германн
2008-02-11 01:43
2008.03.23
Ещё один пример нестандартного мЫшления некоторых "кодеров"


2-1203512226
Tetri
2008-02-20 15:57
2008.03.23
Работа с термопарами/манометрами через com или usb


2-1204059135
Strate
2008-02-26 23:52
2008.03.23
Скорость работы.


9-1168206700
akaValerius
2007-01-08 00:51
2008.03.23
Направление движения при повороте


2-1203867327
Рустам
2008-02-24 18:35
2008.03.23
работа в трее