Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.25;
Скачать: CL | DM;

Вниз

Вопрос к математикам   Найти похожие ветки 

 
Denton ©   (2003-02-22 13:05) [0]

У меня есть плоскость, определьонная тремя точками, сдвинута и повернута относительно начала координат. И есть модель (танка, машины), как ее сдвинуть и повернуть, чтобы она лежала на этой плоскасти. Я пробовал вычислять углы между плоскостями и с помощью glRotate поворачивать, но чьото криво получалось и может есть способ по быстрей (с матрицами поколдовать, я в етом не разбираюсь)?


 
Ketmar ©   (2003-02-22 13:18) [1]

хинт: нормали.

Satanas Nobiscum! 22-Feb-XXXVIII A.S.


 
Denton ©   (2003-02-22 16:02) [2]

А какая разница между чем вычислять угол, между нормаллю или плоскостю?


 
Ketmar ©   (2003-02-22 16:33) [3]

читать учебники, ы?

Satanas Nobiscum! 22-Feb-XXXVIII A.S.


 
Landgraph   (2003-02-22 17:59) [4]

А в какой-нибудь матрице хранится: местоположение? Если да, то в какой и с какими индексами =)


 
Denton ©   (2003-02-22 19:10) [5]


> Ketmar © (22.02.03 16:33)

Конкретней выражатся можно?


 
i-C3H7OH ©   (2003-02-24 01:10) [6]

типичная задача преобразований координат умножением на матрицу

азы качать отсюда
http://pascal.sources.ru/docs/compgraf.zip

2 Landgraph
тебе тоже будет полезно как раз насчет матриц


 
Denton ©   (2003-02-25 13:06) [7]

Блин, ну нехрена не выходит: нужно повернуть модель чтобы она была паралельна плоскости (АВС), помогите пожалуста кому не лень.

var a,b,c,n:Vector;
( a,b,c)
Блин, ну нехрена не выходит: нужно повернуть модель чтобы она была паралельна плоскости (АВС), помогите пожалуста кому не лень.

var a,b,c,n:Vector;
anx,any:single;
begin
...
n:=NormalVector(a,b,c);
n:=NormalizeVector(n);
anx:=radtodeg(arccos((n.x+n.z)/(2*(n.x*n.x+n.y*n.y+n.z*n.z))));
any:=radtodeg(arccos((n.z)/(n.x*n.x+n.y*n.y+n.z*n.z)));
glTranslate(Position.x,Position.y,Position.z);
glRotate(angle,0,1,0);
glRotate(anx,1,0,0);
glRotate(any,0,0,1);
model.Draw;



Страницы: 1 вся ветка

Текущий архив: 2003.08.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
3-81588
L.N.N.
2003-07-29 15:41
2003.08.25
Memo показывает только первую строчку


7-81982
Winni
2003-06-05 09:29
2003.08.25
Программа работает не так под Windows XP.


14-81871
SPIRIT
2003-08-08 16:01
2003.08.25
как сделать полоску формы (где Caption) побольше


1-81807
AlexTregubov
2003-08-15 11:36
2003.08.25
Окно со списком файлов и директорий


14-81873
Wonder
2003-08-07 16:01
2003.08.25
Я плакаль :) Долго :) Советую почитать :)