|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.03.2013, 17:29 | #1 |
Пользователь
Регистрация: 01.12.2010
Сообщений: 15
|
Опять матрицы
Добрый день.
Подскажите как реализовать поворот вектора A1 (X1, Y1, Z1) в положение A2 (X2, Y2, Z2), зная при этом угол между плоскостью поворота и осью X (Y), и угол между векторами. |
25.03.2013, 18:00 | #2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Можно чуть пояснить, какие величины даны? Если только два угла, то A2 однозначно не определяется. Если даны координаты обоих векторов, то углы уже не нужны.
|
25.03.2013, 18:12 | #3 |
Пользователь
Регистрация: 01.12.2010
Сообщений: 15
|
Даны X1, Y1, Z1. А A2 это новое положение вектора A1. Ну, соответственно, задача найти X2, Y2, Z2.
|
25.03.2013, 18:48 | #4 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Задача не имеет однозначного решения: плоскость поворота может быть выбрана более чем одним способом.
|
25.03.2013, 19:13 | #5 |
Пользователь
Регистрация: 01.12.2010
Сообщений: 15
|
Плоскость поворота всегда параллельна Z оси, а вектор всегда идет из нуля. Если вы об угле, то, в принципе, не важно. Пусть будет X отсчетной.
В своих попытках я использовать матрицы поворота по осям. Сначала поворачивал по Х, затем по Y. Соотношение углов для поворота брал из сектора. Но сами понимаете, что получилось. Точка начинала заворачиваться Последний раз редактировалось NoSilence; 25.03.2013 в 19:42. |
26.03.2013, 12:06 | #6 | ||
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Цитата:
Цитата:
Но теперь нам не нужен угол между плоскостью поворота и осью OX: Y1/X1 = tg(в), где в - угол между плоскостью поворота и OX. Мы его уже знаем. X1X2+Y1Y2+Z1Z2 = |A1|^2*cos(а), где а - угол поворота. X1^2+Y1^2+Z1^2 = X2^2+Y2^2+Z2^2. В принципе, три уравнения, три неизвестных, можно просто решить. А можно сказать, что ось поворота есть (Y1, -X1, 0) и мы поворачиваем пространство вокруг неё на угол а. Матрица поворота откапывается в Вики (только надо не забыть привести вектор к единичному и учесть случай Y1=X1=0). |
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
опять я опять мемо | nyasha2013 | Помощь студентам | 2 | 19.05.2011 21:09 |
Опять матрицы | ДмитрийРэй | Помощь студентам | 1 | 19.12.2010 11:38 |
опять матрицы | Максикок | Помощь студентам | 4 | 23.11.2010 20:12 |
И опять мэйлы.. Опять... | Pusher | PHP | 6 | 28.06.2008 03:08 |