计算机图形学上机实验之DDV算法
来源:互联网 发布:电脑flash制作软件 编辑:程序博客网 时间:2024/06/05 20:37
#include <gl/glut.h>//实用工具包#include<math.h>#include<stdio.h>#include<windows.h>#include<gl/gl.h>#include<gl/glu.h>#include<gl/glaux.h>#include<stdlib.h>struct GLintPoint{GLint x;GLint y;};GLintPoint p[2];bool sig=false;int scrw=640,scrh=480;void drawline(){int dx=p[1].x-p[0].x;int dy=p[1].y-p[0].y;int steps,k;float xIncrement,yIncrement;float x=p[0].x,y=p[0].y;if (fabs(dx)>fabs(dy)){steps=fabs(dx);}else {steps=fabs(dy);}xIncrement=float(dx)/float(steps);//计算两个方向增量yIncrement=float(dy)/float(steps);glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0f,0.0f,0.0f);glBegin(GL_LINES);glVertex2i(x,y);//绘制起点for(k=0;k<steps;k++){x+=xIncrement;y+=yIncrement;glVertex2i(x,y);}glEnd();glFlush();}void myDisplay(){glClear(GL_COLOR_BUFFER_BIT);glMatrixMode(GL_MODELVIEW);glLoadIdentity();glColor3f(0.0,0.0,1.0);if(sig)drawline();glutSwapBuffers();}void myMouse(int button,int state,int x,int y){if(button==GLUT_LEFT_BUTTON&& state==GLUT_DOWN){p[0].x=x;p[0].y=scrh-y;sig=true;}glutPostRedisplay();}void myMotion(int x,int y){p[1].x=x;p[1].y=scrh-y;glutPostRedisplay();}int main(int argc,char **argv){glutInit(&argc,argv);glutInitWindowSize(scrw,scrh);glutInitWindowPosition(0,0);glutInitDisplayMode(GLUT_RGB|GLUT_DOUBLE); glutCreateWindow("gujinjie");glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(0,scrw,0,scrh);glMatrixMode(GL_MODELVIEW);glClearColor(0.0f,0.0f,0.0f,0.0f);glViewport(0,0,scrw,scrh);glutMouseFunc(myMouse);glutDisplayFunc(myDisplay);glutMotionFunc(myMotion);glutMainLoop();return 0;}
0 0
- 计算机图形学上机实验之DDV算法
- 计算机图形学-实验2-Bresenham画线算法
- 计算机图形学之画线算法
- 计算机图形学第一次实验
- 计算机图形学实验八
- 图形学实验之多边形填充算法
- 计算机图形学常用算法
- 计算机图形学常用算法
- 计算机图形学常用算法
- 线型算法(计算机图形学)
- 裁剪算法(计算机图形学)
- 对称算法(计算机图形学)
- 对称算法(计算机图形学)
- 计算机图形学-油画家算法
- 计算机图形学常用算法
- 计算机图形学实验教程(OpenGL)
- 《计算机图形学》实验四:裁剪
- 计算机图形学第一次实验(续)
- 修改mdev配置支持SD卡自动挂载
- 0, \0, NULL的区别
- 概率论--古典概型和几何概型
- Java程序员从笨鸟到菜鸟全部博客目录
- Binary system_____(Bin 神 OJ)
- 计算机图形学上机实验之DDV算法
- 吸费电话加盟 加值电话代理 货到付款
- 浏览器兼容之JavaScript篇——已在IE、FF、Chrome测试
- 【02】【设计模式分类】
- ZOJ 2675 Little Mammoth(计算几何)
- Android通过MediaPlayer实现播放视频实例
- 高吸费电话代理 加值电话平台 月入过万
- Recent Advances in Deep Learning
- C++参考书(下篇)