Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Определение текущего положения... так сказать начала координат


AxxxE ©   (2004-03-11 14:38:00) 

Или как это называется в OpenGL? Вообщем то, что изменяется glTranslate'ом и glRotate'ом.


с   (2004-03-26 16:14:00) [1]

получаешь текущую матрицу, например так


var m:array[0..3, 0..3] of GLFloat;//матрица 4х4
..........
glGetFloatv(GL_MODELVIEW_MATRIX, @m);
//есть еще и GL_PROJECTION_MATRIX


и умножаешь вектор на эту матрицу, можно вручную


AxxxE   (2004-03-20 12:57:00) [2]

Именно! Мне надо получить эти координаты либо вычислениями, либо через саму ОпенГЛ.


марсианин   (2004-03-19 23:54:00) [3]

Шо как? формулу написать чтоль?..


AxxxE   (2004-03-19 19:56:00) [4]

Ты не совсем понял вопрос.

>ОГЛ сразу же перемножает эти координаты на текущую матрицу

А как он их, собсно, перемножает?


марсианин   (2004-03-18 00:22:00) [5]

изменяется текущая система координат
и только..

представ столб, преставь себя стоящего на некотором расстоянии. Столб будет стоять на своем месте какую бы ты систему не выбирал. у него  есть неизменные глобальные координаты. Ты стоишь и у тебя тоже есть глобальные координаты. Вот ты стоишь и смотришь на него. ты видишь его в своей локальной системе координат. т.е. ты можешь придумать свою С.К. и поставить себя ее в центр.  Сделал пару шагов - аналог glTranslatef. Столб приблизился. т.е. в твоей локальной С.К. его координаты изменились. угу?
с поворотами аналогично.

и вот ты решил поставить точку.. поставить ее, указывая для нее свои координаты, локальные.
ОГЛ сразу же перемножает эти координаты на текущую матрицу, получает ее координаты в глобальной с.к.;  глобальные координаты умножаются на матрицу проекции и получаем экранные координаты, кидаем точку в буффер кадра, если не отсекается...

вот так на пальцах..


AxxxE   (2004-03-13 12:42:00) [6]

Ну должны же быть такие функции в OpenGL!?


Наверх

Титульная страница Поиск, карта сайта Написать письмо