Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поворот вектора в пространстве при помощи мыши. 
:(
    Опции темы
Elfet
  Дата 19.6.2007, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Есть растояние на которое отодвинута мышка от центра экрана:
Код

float zDelta = screen1.Height / 2 - mousePoint.Y;
float yDelta = screen1.Width / 2 - mousePoint.X;

Есть 3 перпендикулярных вектора, которые задают камеру в пространстве: camera.N (то вектор который нужно поворачивать) camera.U и camera.V 
нужно N повернуть на "углы" zDelta и yDelta  относительно U и V. Подскажите пожалуйста как?  smile 
Вот мой вариант, но мне так кажется что он работает не во всех случаях: когда я пытаюсь развернуть ввектор в обратном направлении начинаются глюки:
Код

                    newN = camera.N * Math.Cos(zDelta) + camera.U * Math.Sin(zDelta);
                    camera.Reset();
                    newN = camera.N * Math.Cos(yDelta) + camera.V * Math.Sin(yDelta);

Заранее спасибо smile


--------------------
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0379 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.