Какой вход для Gltransalatef и Glscalef в коде ниже? Как это работает?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Какой вход для Gltransalatef и Glscalef в коде ниже? Как это работает?

Сообщение Anonymous »

Я не могу понять, что происходит в функции . Пожалуйста, объясните мне, как значение параметра рассчитывается для write функции. Я узнал, что значение системы координат GL лежит между -1 до +1 . Но эта программа работает хорошо. Как это возможно? < /P>

void Write(double x,double y,double z,double scale,char *s)
{
int i,l=strlen(s);
glPushMatrix();
glTranslatef(x,y,z);
glScalef(scale,scale,scale);
for (i=0;i

выше функции Печатной печати. ​​Передана строка в окне в какой -то позиции. < /p>

void redisplay(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 0.0, 0.0);
Write(-4.0,2.5,0.0,0.003,"Hello world");
glFlush();
}

void myreshape2 (int w, int h)
{
glViewport (0, 0, (GLsizei) w, (GLsizei) h);
glMatrixMode (GL_PROJECTION);
glLoadIdentity ();
gluPerspective(65.0, (GLfloat) w/(GLfloat) h, 1.0, 20.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslatef (0.0, 0.0, -5.0);
}

int main( int argc, char** argv )
{
glutInit(&argc, argv);

glutInitWindowSize( 1024, 700 );
glutCreateWindow("introduction");
glutReshapeFunc(myreshape2);
glutDisplayFunc(redisplay);
//glutKeyboardFunc(keyboard1);
glutMainLoop( );
return(0); // This line is never reached.
}


Подробнее здесь: https://stackoverflow.com/questions/494 ... w-it-works
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»