![]() |
|
![]() ![]() ![]() |
|
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: нет Всего: 25 |
Есть 2 вектора равной длины (A и B):
(Xa, Ya, Za) (Xb, Yb, Zb) мож, у кого-то есть формулы для опеределения Эйлеровых углов поворота, таких, чтобы при повороте на них, A совпал с B? |
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
Ну наверно можно обнулить сначала Za и Zb и получить первый угол, а потом обнулить две другие координаты и получить второй угол (то есть посмотреть на проекции)... Это так - первое что на ум приходит.
![]() -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: нет Всего: 25 |
похоже на правду
![]() чет я вообще туда не думал :( спасибо, попробую |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: нет Всего: 25 |
как ожидалось, не все так просто
если есть векторы A(0; 0; 1) и B (0; 0; -1), то получится, словно вектор A нужно повернуть на 180 градусов по xOy и на 180 градусов по xOy, а это неверно |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: нет Всего: 154 |
а если преобразовать в полярные координаты, так будет проще посчитать...
|
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
Интересно почему? -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: нет Всего: 25 |
там я ошибся по плоскостям xOz и yOz соответственно потому что, если повернуть вектор (0, 0, 1) по xOz на 180 градусов, то получится (0, 0, -1) а если повернуть вектор (полученный) (0, 0, -1) по yOz на 180 градусов, то получится снова (0, 0, 1) |
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
Ну два варианта решения значит - можно так повернуть, можно так...
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
AndreyK |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 15.3.2007 Репутация: нет Всего: нет |
Повороты некоммутативны ... т.е. если сначала повернуть вокруг одной оси, а потом вокруг другой - то будет не то же самое если поменять порядок поворотов. А если поворачивать вокруг оси перпендикулярной плоскости в которой лежат вектора, то угол можно найти так: Скалярное произведение векторов = Xa*Xb+ Ya*Yb + Za*Zb = оно же = R*R*cos(f), где f - угол между ними. R - длина обоих векторов. |
|||
|
||||
Alek86 |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: нет Всего: 25 |
жаль только, что неясно что в общем случае считать за правильное решение, а что - ха второе правильное решение ![]()
знаю и с рабостью бы воспользовался, но функция, которую хотел использовать, принимает именно эти 3 злдлосчастных вектор ![]() в общем, вопрос не решен, как понимаю, но я уже выпеднрился без этой функции даже не знаю, закрывать тему, или нет.... |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |