2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Восстановить куб по двум вершинам и центру
Сообщение22.03.2012, 16:38 
Помогите пожалуйста с такой вот проблемкой:
Известно координаты двух соседних вершин куба и координаты его центра - (0,0,0).
Необходимо найти координаты оставшихся вершин.

Ясно, что координаты двух противоположных вершин, равны противоположным координатам данных вершин. Но вот как найти остальные 4?
Задачу нужно решить в общему случае, для компьютерной программы. Я-то некоторыми способами пытался, но выражения получаются уж очень громоздкими...
Каким механизмом будет легче всего получить искомые формулы?)

 
 
 
 Re: Восстановить куб
Сообщение22.03.2012, 16:46 
Аватара пользователя
Любым, а потом упростить. Не думаете же Вы, что разными методами получаются разные кубы, из коих некоторые существенно проще других?
У меня где-то есть выражение для матрицы поворота на произвольный угол относительно произвольного вектора. (Тут на форуме я его тоже видел.) Вот его я и использовал бы: угол 90°, а вектор сами понимаете какой.

 
 
 
 Re: Восстановить куб
Сообщение22.03.2012, 16:47 
MrDindows в сообщении #551124 писал(а):
для компьютерной программы. Я-то некоторыми способами пытался, но выражения получаются уж очень громоздкими...

Для компьютерной программы не нужны окончательные выражения -- нужна лишь цепочка достаточно простых промежуточных.

У Вас уже есть прямоугольник (малая сторона -- ребро куба, большая -- диагональ грани). Найдите нормаль к этому прямоугольнику как векторное произведение его сторон, отнормируйте этот вектор на известную половину длины большой стороны и отложите в обе стороны от середины этой стороны.

 
 
 
 Re: Восстановить куб
Сообщение22.03.2012, 17:35 
Спасибо.
Получилось через нормаль)

 
 
 
 Re: Восстановить куб
Сообщение24.03.2012, 01:21 
Аватара пользователя
В векторной форме координаты 8 вершин куба с центром в точке ${\bf r}_0$:
${\bf r}_0\pm {\bf r}_1$; ${\bf r}_0\pm {\bf r}_2$; ${\bf r}_0\pm\frac{\sqrt{3}}{2}\frac{{\bf r}_1\times {\bf r}_2}{|{\bf r}_1|}\pm\frac{1}{2}({\bf r}_1-{\bf r}_2)$.
(Пара знаков $\pm$ в последней формуле независима друг от друга).
Условия: $|{\bf r}_1|=|{\bf r}_2|=3{\bf r}_1{\bf r}_2=2a/\sqrt{3}$, где $a$ - длина стороны куба.

 
 
 
 Re: Восстановить куб
Сообщение24.03.2012, 17:03 
Аватара пользователя
Поправка.
Условия: $|{\bf r}_1-{\bf r}_0|=|{\bf r}_2-{\bf r}_0|=2|{\bf r}_1-{\bf r}_2|/\sqrt{3}$, где $|{\bf r}_1-{\bf r}_2|=a$ - длина стороны куба.

 
 
 [ Сообщений: 6 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group