Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2009, 18:07   #11
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Цитата:
Сообщение от Jean-Esther Посмотреть сообщение
Решить упрощенную математическую задачу
«Какие координаты точки (x0,y0,z0), если её повернуть на угол \alpha относительно прямой (x1,y1,z1)-(x2,y2,z2).»
Сначала вычислим единичный вектор, направленный вдоль прямой AB: берём C=B-A и делим C на его длину, получаем D.

Далее, назовём точку, которую нужно повернуть, E. С точкой E нужно проделать две операции:
1) F = (E*D)*D.
Это проекция на C
2) G = E - F
Это проекция на плоскость, перпендикулярную C. Вращение трогает именно эту плоскость, проекция вдоль C останется неизменной.

Теперь как повернуть:
3) H = CxG
H — это G, повёрнутый на 90 градусов вокруг C.

Теперь, чтобы получить поворот на alpha, вычисляем:
I = G * cos alpha + H * sin alpha

Наконец, последний штрих, возвращаем на место F:
4) J = I + F

Вот и получился поворот.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пожалуйста,помогите составить программу задачи на языке Турбо Паскаль-задача на функцию Jan Помощь студентам 1 07.01.2009 19:39
Помогите пожалуйста с задачей в Турбо Паскаль. Bulvai Помощь студентам 1 25.06.2008 18:09
Помогите решить 3 задачи на языке Турбо-Паскаль rpg Помощь студентам 3 23.11.2007 20:13