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

Вниз

квадрат с вращением в OpenGL   Найти похожие ветки 

 
Tab   (2006-11-14 07:20) [0]

рисую квадрат (прямоугольник) в режиме GL_QUADS
потом вращаю его.
Отображается все в ортогроафической проекции.
при вращении гдето градусов на 50-60 квадрат выглядит совсем не так как квадрат. т.е. больше походит на ромб.
Почему так?


 
Tab   (2006-11-15 08:55) [1]

так в чем может быть проблема?


 
grisme ©   (2006-11-15 20:19) [2]

Frustum увеличить? :) ближняя и дальние плоскости отсечения коцают квадрат до "ромба"


 
XProger ©   (2006-11-15 23:18) [3]

Относительно какой оси вращаешь?


 
Tab   (2006-11-16 06:56) [4]


> XProger ©   (15.11.06 23:18) [3]
> Относительно какой оси вращаешь?


относительно z.


> Frustum увеличить? :) ближняя и дальние плоскости отсечения
> коцают квадрат до "ромба"

так это же 2д квадрат, разве они могут на негл влиять?


 
Pavia ©   (2006-11-16 20:12) [5]

А в чем проблема ромб это четырех угольник с одинаковыми сторонами. Квадрат под описание под ходит. Все нормально.


 
Pavia ©   (2006-11-16 20:39) [6]

Ладно раз автор не пишет придется воспользоваться телепатией и отгадать что у него монитор имеет соотношение сторон 5/4. Так что не помешает задать растяжение по x,y соответствующие.


 
Tab   (2006-11-16 21:47) [7]


> Ладно раз автор не пишет придется воспользоваться телепатией
> и отгадать что у него монитор имеет соотношение сторон 5/4.
>  Так что не помешает задать растяжение по x,y соответствующие.
>

нет монитор нормальный, а вот насчет растяжения посмотрю.


 
Rial ©   (2006-11-17 00:43) [8]

> [7] Tab   (16.11.06 21:47)
> нет монитор нормальный, а вот насчет растяжения посмотрю.

Т.е. соотношение сторон 1:1 ?
Ну, тогда глюков не должно быть, странно...


 
Tab   (2006-11-17 06:36) [9]

скорее всего ситуацуия вот в чем. я отображаю все в орто проекции. и когда форма расширяется пересчитываю видимую область чтобы она увеличивалась .

может я здесь где-то ошибся.

procedure TFrmGL.RecalcView;
begin
 vLeft:=(vLeft*(ClientWidth-Panel1.Width))/vpWidth;
 vTop:=(vTop*ClientHeight)/vpHeight;
 vBottom:=(vBottom*ClientHeight)/vpHeight;
 vRight:=(vRight*(ClientWidth-Panel1.Width))/vpWidth;

 vpHeight:=frmGL.ClientHeight;
 vpWIdth:=ClientWidth-Panel1.Width;
end;

procedure TfrmGL.FormResize(Sender: TObject);
begin
RecalcView;

init;
InvalidateRect(Handle, nil, False);
end;

procedure TFrmGl.init;
begin
glViewport(0, 0, vpWIdth, vpHeight);
glLoadIdentity;
glOrtho (vLeft , vRight, vBottom, vTop, -25, 25.0);  
glTranslatef (0.0, 0.0, dz_r);  
end;


 
grisme ©   (2006-11-19 07:43) [10]

Tab   (16.11.06 06:56) [4]
так уточнил бы, вокруг какой оси, сразу :P



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

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

Наверх




Память: 0.49 MB
Время: 0.027 c
2-1186124889
dimaL
2007-08-03 11:08
2007.08.26
Закрытие дочерней формы


2-1185969342
Kolan
2007-08-01 15:55
2007.08.26
Цветные строки в DBGrid.


15-1185414465
Зет
2007-07-26 05:47
2007.08.26
Как узнать какой пункт из case в record выбран?


10-1135338727
Bleed
2005-12-23 14:52
2007.08.26
Методы и Свойства COM объекта


2-1186059703
GhosTer
2007-08-02 17:01
2007.08.26
Убить запущенный процесс.