资源简介
适合初学者,赚点积分,计算机图形学实验课完全自学,不容易啊QAQ
代码片段和文件信息
// random.cpp : 定义控制台应用程序的入口点。
//
// random.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include
#include
GLfloat theta = 0.0size=20.0xrot=0yrot=300step=0.01R1=0R2R3; // 全局变量
bool updownleftright=true;
#define DEGREES_TO_RADIANS 3.14159/180.0
void Mouse(int btnint stateint xint y)
{
//if (btn==GLUT_LEFT_BUTTON && state == GLUT_DOWN)
}
void MouseMove(int xmoveint ymove)
{
}
//画矩形函数
void drawrect(int xstartint ystartint xendint yend)
{
glBegin(GL_POLYGON);
glVertex2i(xstartystart);
glVertex2i(xstartyend);
glVertex2i(xendyend);
glVertex2i(xendystart);
glVertex2i(xstartystart);
glEnd();
}
//画三角形函数
void drawtriangle(int xstartint ystartint xendint yend)
{
glBegin(GL_POLYGON);
glVertex2i(xstartystart);
glVertex2i(xendyend);
glVertex2i(xstartyend);
glEnd();
}
void circle(float xrot1float yrot1)
{
glBegin(GL_POLYGON);
glVertex2f(xrot1+size*sin(theta*DEGREES_TO_RADIANS)yrot1+size*cos(theta*DEGREES_TO_RADIANS));
glVertex2f(xrot1+size*sin((theta+60)*DEGREES_TO_RADIANS)yrot1+size*cos((theta+60)*DEGREES_TO_RADIANS));
glVertex2f(xrot1+size*sin((theta+120)*DEGREES_TO_RADIANS)yrot1+size*cos((theta+120)*DEGREES_TO_RADIANS));
glVertex2f(xrot1+size*sin((theta+180)*DEGREES_TO_RADIANS)yrot1+size*cos((theta+180)*DEGREES_TO_RADIANS));
glVertex2f(xrot1+size*sin((theta+240)*DEGREES_TO_RADIANS)yrot1+size*cos((theta+240)*DEGREES_TO_RADIANS));
glVertex2f(xrot1+size*sin((theta+300)*DEGREES_TO_RADIANS)yrot1+size*cos((theta+300)*DEGREES_TO_RADIANS));
glEnd();
}
void rect(float x1float y1float x2float y2float x3float y3float x4float y4)
{
glBegin(GL_POLYGON);
glVertex2f(x1y1);
glVertex2f(x2y2);
glVertex2f(x3y3);
glVertex2f(x4y4);
glEnd();
}
void display()
{
float y1y2xrot1yrot1xrot2yrot2;
int handmove=0;
int flag=0;
y1=yrot-50.0;
getchar();
y2=yrot-100.0;
glClear(GL_COLOR_BUFFER_BIT);
glColor3f (0.0 1.0 0.0);
rect(xrot-20+R1y2-130xrot-20y2xrot-10y2xrot-10+R1y2-130);
glColor3f (1.0 1.0 1.0);
drawrect(xrot-30yrot-30xrot+30yrot+30);
glBegin(GL_POLYGON);
glVertex2f(xrot-50y1-100);
glVertex2f(xrot-50y1);
glVertex2f(xrot+50y1);
glVertex2f(xrot+50y1-100);
glEnd();
//
glColor3f (1.0 0.0 0.0);
drawrect(xrot-5-handmoveyrot-130xrot+5-handmoveyrot-60);
drawrect(xrot-5+handmoveyrot-130xrot+5+handmoveyrot-60);
glColor3f (0.0 1.0 0.0);
//drawrect(xrot-20y2-130x
相关资源
- 安卓c语言开发SDL2+opengles
- 交互式计算机图形学 第六版 OpenGL源代
- VC++基于OpenGL模拟的一个3维空间模型
- opengl绘制汽车.cpp
- opengl实现水流效果sph
- opengl源代码,全是精华!
- OpenGL迷宫山东大学图形学实验三
- opengl的立方体消隐算法
- vc++ opengl代码爆炸
- 我见过最漂亮的CS仿真程序openGL和C+
- 广东某工业大学的openGL课程设计
- 使用OpenGL实现多个小球在密闭空间内
- 利用openGL和C++实现光线跟踪绘图的完
- OpenGl C++太阳系小行星运行系统 可切换
- 计算机图形学走样反走样时钟
- vc++和OpenGL实现三维地形实时动态显示
- C++实现利用OpenGL实现三维绘图
- 太阳、地球、月亮之间的运动图Open
- MFC 单文档 实现opengl 三维旋转 缩放
- 西北工业大学软件学院计算机图形学
- 计算机图形学实验源代码中南民族大
- OPENGL的烟花程序(代码)
- MFC+OpenGL三维建模与动画显示
- 基于opengl粒子系统实现喷泉的模拟
- 一个基于openGL的太阳系模型,太阳地
- vc6.0+opengl纯色五角星填充
- vc6.0+opengl动态绘制五角星
- NeHe_OpenGL教程完整版 里面有地址可以
- OpenGL简单——实现立方体贴上不同纹
- MFC实现dem的读取与现实
评论
共有 条评论