Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 18.10.2008, 17:52   #1
Atomikc
Бывалый
 
Регистрация: 14.12.2006
Сообщений: 811
Написано 93 полезных сообщений
(для 257 пользователей)
Вопрос Формулу вращения вокруг произвольной оси

Формулу вращения вокруг произвольной оси, имея Угол и Вектор, все это надо представить в матричном виде, вот что я написал:
-> float Angle, const YVECTOR3 & V, YMATRIX & M
Матрица 4x4, Вектор 3х мерный
Вот формула:
float nx2 = V.x * V.x;
float ny2 = V.y * V.y;
float nz2 = V.z * V.z;

float nxy = V.x * V.y;
float nxz = V.x * V.z;
float nyz = V.y * V.z;

float nxs = V.x * sin(Angle);
float nys = V.y * sin(Angle);
float nzs = V.z * sin(Angle);

float oca = 1 - cos(Angle);

M = YMATRIX(nx2 + (1 - nx2) * cos(Angle), nxy * oca * nzs, nxz * oca + nys, 0.0f,
nxy * oca + nzs, ny2 * (1 - ny2) * cos(Angle), nyz * oca - nxs, 0.0f,
nxz * oca - nyz, nyz * oca + nxs, nz2 + (1 - nz2) * cos(Angle), 0.0f,
0.0f, 0.0f, 0.0f, 1.0f);
Мне этой вещи не хватает, чтобы камеру поворачивать вверх и вниз

Последний раз редактировалось Atomikc, 18.10.2008 в 18:11.
(Offline)
 
Ответить с цитированием
Старый 21.10.2008, 12:39   #2
Atomikc
Бывалый
 
Регистрация: 14.12.2006
Сообщений: 811
Написано 93 полезных сообщений
(для 257 пользователей)
Ответ: Формулу вращения вокруг произвольной оси

Никто не знает чтоль?????
(Offline)
 
Ответить с цитированием
Старый 21.10.2008, 18:01   #3
johnk
Легенда
 
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений
(для 568 пользователей)
Ответ: Формулу вращения вокруг произвольной оси

http://www.siggraph.org/education/ma...ran/3drota.htm
Внизу.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Atomikc (21.10.2008)
Старый 31.10.2008, 09:02   #4
alcoSHoLiK
Дэвелопер
 
Регистрация: 17.01.2006
Сообщений: 1,512
Написано 78 полезных сообщений
(для 110 пользователей)
Ответ: Формулу вращения вокруг произвольной оси

Вот как матрица вращения выглядит по-нормальному)

u = (u1, u2, u3) - единичный вектор, вокруг которого производится вращение;
c = cos(A)
s = sin(A)
A - угол поворота в радианах.
Миниатюры
Нажмите на изображение для увеличения
Название: RotationMatrix.gif
Просмотров: 1877
Размер:	8.4 Кб
ID:	4943  
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо alcoSHoLiK за это полезное сообщение:
ABTOMAT (10.01.2009), impersonalis (03.11.2008)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Глюки камеры блик и вращении её вокруг перса Dark_Fox 3D-программирование 16 26.09.2010 23:34
Ориентация, Вращения, Кватернион falcon C++ 0 22.10.2009 01:22
Как убрать черные полосы вокруг Gui Andvrok 3D-программирование 7 30.07.2009 16:58
Чтение произвольной строки из ресурса Skythrone Библиотеки 12 02.12.2008 14:57
Посмотрев вокруг, я понял... Жека Болтовня 68 09.05.2006 14:42


Часовой пояс GMT +4, время: 05:50.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com