Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.218.137.93] |
|
Сообщ.
#1
,
|
|
|
не могу разобраться с координатами в процедурах glOrtho, gluLookAt, gluPerspective
как задаются где у них точки отсчета - центр осей x ,y ,z пишут много а наглядности мало procedure TForm1.Button1Click(Sender: TObject); begin glClearColor(1.0,0.0,0.0,0.2); glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glOrtho(0, 1, 0, 1, -1 ,1);//здесь 0 к какой точке относятся и единицы тоже glBegin(GL_TRIANGLES); glColor3f(1.0,0.0,0.0);glVertex3f(1,0,0); glColor3f(0,1,0); glVertex3f(0,1,0); glColor3f(0,0,1); glVertex3f(0,0,1); glEnd(); OpenGLControl1.SwapBuffers; end; |
Сообщ.
#2
,
|
|
|
void glOrtho( GLdouble left,
GLdouble right, GLdouble bottom, GLdouble top, GLdouble nearVal, GLdouble farVal); https://www.opengl.org/sdk/docs/man2/xhtml/glOrtho.xml В документации написано, что осуществляет проекцию внутрь прямоугольного параллелепипеда ограниченного плоскостями, отстоящими от начала координат на расстояния, задаваемые параметрами функции. То есть: левая плоскость проходит через точку (left,0,0) и параллельна осям z и y; правая плоскость проходит через точку (right,0,0) и параллельна осям z и y; нижняя плоскость проходит через точку (0,bottom,0) и параллельна осям x и z; верхняя плоскость проходит через точку (0,top,0) и параллельна осям x и z; ближняя плоскость проходит через точку (0,0,nearVal) и параллельна осям x и y; дальняя плоскость проходит через точку (0,0,farVal) и параллельна осям x и y; А здесь вид самой матрицы связанной с этой функцией http://www-01.ibm.com/support/knowledgecen...3b5f1be2006lpas Помните, что в школе всегда ось z была направлена вверх, а в Opengl всегда вдаль (вглубь). |
Сообщ.
#3
,
|
|
|
Цитата shhmn @ Спасибо за поддержку Уважаемый shhmn вопрос для себя прояснил |