实验3 OpenGL几何变换

#include"pch.h"
#include<GL/glut.h>

void init(void) {
	glClearColor(1.0, 1.0, 1.0, 1.0);
	glMatrixMode(GL_PROJECTION);
	gluOrtho2D(-5.0, 5.0, -5.0, 5.0);
	//设置显示范围是 X: -5.0 ~ 5.0 Y: -5.0 ~ 5.0
	glMatrixMode(GL_MODELVIEW);
}
void drawSquare(void) {
	glBegin(GL_POLYGON);
	glVertex2f(-1.0f, -1.0f);
	glVertex2f(1.0f, -1.0f);
	glVertex2f(1.0f, 1.0f);
	glVertex2f(1.0f, 1.0f);
	glVertex2f(-1.0f, 1.0f);
	glEnd();
}
void myDraw(void) {
	glClear(GL_COLOR_BUFFER_BIT);
	glLoadIdentity();

	glPushMatrix();
	glTranslatef(0.0f, 2.0f, 0.0f);
	glScalef(3.0, 0.5, 1.0);
	glColor3f(1.0, 0.0, 0.0);
	drawSquare();
	glPopMatrix();

	glPushMatrix();
	glTranslatef(-3.0, 0.0, 0.0);

	glPushMatrix();
	glRotatef(45.0, 0.0, 0.0, 1.0);
	glColor3f(0.0, 1.0, 0.0);
	drawSquare();
	glPopMatrix();

	glTranslatef(3.0, 0.0, 0.0);

	glPushMatrix();
	glRotatef(45.0, 0.0, 0.0, 1.0);
	glColor3f(0.0, 0.7, 0.0);
	drawSquare();
	glPopMatrix();

	glTranslatef(3.0, 0.0, 0.0);

	glPushMatrix();
	glRotatef(45.0, 0.0, 0.0, 1.0);
	glColor3f(0.0, 4.0, 0.0);
	drawSquare();
	glPopMatrix();

	glPopMatrix();

	glTranslatef(0.0, -3.0, 0.0);
	glScalef(4.0, 1.5, 1.0);
	glColor3f(0.0, 0.0, 1.0);
	drawSquare();

	glFlush();
}

int main(int argc, char** argv) {
	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
	glutInitWindowPosition(0, 0);
	glutInitWindowSize(600, 600);
	glutCreateWindow("几何变换示例");

	init();
	glutDisplayFunc(myDraw);
	glutMainLoop();
	return 0;
}

 

计算机图形学实验OPENGL可视化 计算机图形学实验 opengl 三个实验 附有具体代码 跟VC6一样的 一、下载并安装glut库 opengl的glut库 GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。 Windows环境下的GLUT下载地址:(大小约为150k) http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip Windows环境下安装GLUT的步骤: 1、将下载的压缩包解开,将得到5个文件 2、在“我的电脑”中搜索“gl.h”,并找到其所在文件夹(Program Files\Microsoft Visual Studio\VC98\Include\GL文件夹”)。把解压得到的glut.h放到这个文件夹。 3、把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹(Program Files\Microsoft Visual Studio\VC98\lib”文件夹)。 4、把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:\Windows\System32) 二、vc工程配置: 1)创建一个工程。glut 是一个console project ,你创建的时候必须创建console 以对应 . 2)链接OpenGL libraries。在Visual C++中先单击Project,再单击Settings,再找到Link单击, 在“分类”(Category)组合框里选择“输出”(output) ,再在“入口点”(Entry-point symbol)文本框里键入“mainCRTStartup” ,对一个现有的控制台应用程序,有一个简单的办法把它转换成Win32应用程序,这样可以摆脱那个命令行窗口。 3)单击Project Settings中的C/C++标签,将Preprocessor definitions 中的_CONSOLE改为__WINDOWS。最后单击OK。 增加下面的文件到“对象/库模块" (Object/library/modules):OpenGL32.lib glut32.lib glu32.lib (有时候不需要glut32.lib) 4)然后在stdafx.h文件中加入 #include #include #include #include #include 注意:#include 是需要的,不引入的话有时会报错。 完成后,就可以编写你自己的程序了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值