首页 > 其他 > 详细

OpenGL_曲线函数

时间:2015-12-29 14:24:38      阅读:332      评论:0      收藏:0      [点我收藏+]

#include "stdafx.h"

#include <GL/glut.h>

#include <math.h>

const int screenWidth = 640;       //屏幕窗口的宽度为640像素;

const int screenHeight = 480;       //屏幕窗口的高度为480像素;

GLdouble A, B, C, D;         //比例变换和平移值;

void myInit(void)

{  

glClearColor(1.0, 1.0, 1.0, 0.0);     //背景颜色为白;  

glColor3f(0.0f, 0.0f, 0.0f);      //画图颜色为黑;  

glPointSize(2.0);         //笔触大小为2像素;  

glMatrixMode(GL_PROJECTION);      //设置合适的矩阵;  

glLoadIdentity();  

gluOrtho2D(0.0, (GLdouble)screenWidth, 0.0, (GLdouble)screenHeight);  

A = screenWidth / 4.0;        //设置比例变换和平移;  

B = 0.0;  

C = D = screenHeight / 2.0;

}

void myDisplay(void)

{  

glClear(GL_COLOR_BUFFER_BIT);      //清屏;  

glBegin(GL_POINTS);  for (GLdouble x = 0; x < 4.0; x += 0.005)

 {   

GLdouble func = exp(-x)*cos(2 * 3.14159265*x);   

glVertex2d(A*x + B, C*func + D);                                    

}  

glEnd();  

glFlush();           //送所有数据到显示;

}

void main(int argc, char** argv)

{  

glutInit(&argc, argv);        //初始工具包;  

glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);  //设置显示模式;  

glutInitWindowSize(screenWidth, screenHeight);  //设置窗口大小;  

glutInitWindowPosition(100, 150);     //设置窗口在屏幕上的位置;  

glutCreateWindow("Dot Plot of a Function");   //打开屏幕窗口;  

glutDisplayFunc(myDisplay);       //注册重画函数;  

myInit();  

glutMainLoop();          //进入永久循环;

}

技术分享

OpenGL_曲线函数

原文:http://www.cnblogs.com/Alip/p/5085469.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!