用C 和openGL实现贝塞尔曲线的生成_第1页
用C 和openGL实现贝塞尔曲线的生成_第2页
用C 和openGL实现贝塞尔曲线的生成_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C 和 openGL 环境下编程生成贝塞尔曲线:#include#include#include#include#include#includevoid setWindow(GLdouble left,GLdouble right,GLdouble buttom,GLdouble top)glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(left,right,buttom,top);void setViewport(GLint left,GLint right,GLint bottom,GLint top)glViewport(left,bottom,right-left,top-bottom);int zuhe(int n,int k)int i,s1,s2;s1=1;s2=1;if(k=0) return 1;for(i=n;i=n-k+1;i-) s1=s1*i;for(i=k;i=2;i-) s2=s2*i;return s1/s2;float fang(float n,int k)if(k=0) return 1;return pow(n,k);float benkn(int n,int k,float t)return zuhe(n,k)*fang(t,k)*fang(1-t,n-k);void myInit(void)glClearColor(1.0,1.0,1.0,0.0);glColor3f(1.0f,0.0f,0.0f);glPointSize(4.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(0.0,640.0,0.0,480.0);void myDisplay(void)glClear(GL_COLOR_BUFFER_BIT);float t11=0,x4=1,4,6,10,y4=1,5,7,2,x111,y111,s=0.0;int i;for(i=1;i11;i+) s=s+0.1;ti=s;for(i=0;i11;i+)x1i=x0*benkn(3,0,ti)+x1*benkn(3,1,ti)+x2*benkn(3,2,ti)+x3*benkn(3,3,ti);y1i=y0*benkn(3,0,ti)+y1*benkn(3,1,ti)+y2*benkn(3,2,ti)+y3*benkn(3,3,ti);printf(“%f,%f,%f,%fn“,x0,x1,x2,x3);printf(“%f,%f,%f,%fn“,y0,y1,y2,y3);for(i=0;i11;i+) printf(“%5.2f“,ti);printf(“n“);for(i=0;i11;i+) printf(“%5.2f“,x1i);printf(“n“);for(i=0;i11;i+) printf(“%5.2f“,y1i);glBegin(GL_POINTS);glVertex2f(x0,y0);glVertex2f(x1,y1);glVertex2f(x2,y2);glVertex2f(x3,y3);glEnd();glBegin(GL_LINE_STRIP);for(i=0;i11;i+)glVertex2f(x1i,y1i);glEnd();glFlush();void main(int argc,char* argv)glutInit(glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);glutInitWindowSize(640,480);glutInitWindowPosition(100,150);glutCreateWindow(“my first attempt“);glutDisplayFunc(myD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论