欢迎来到天天文库
浏览记录
ID:59786982
大小:13.05 KB
页数:3页
时间:2020-11-24
《计算机图形学作业.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机图形学第一次作业计算机X班XXX1XXX010XXX1.你是否想用图形学的有关知识去解决一两个实际问题?你想解决的问题是什么?考虑如何解决?答:我希望可以解决的有设计汽车外壳和制作动画。解决方法:(1)汽车外壳使用3DMAX/AutoCAD软件进行设计。(2)制作动画利用动画制作软件(3DMAX)在计算机上制作动画2.某彩色图形显示系统,CRT显示器的分辨率为1024×1024,它可以从2^17次方种颜色中选择出2^15次方来显示,其帧缓冲器的容量应该如何计算?查色表的长度和宽度应为多少?解:16b==2B因为分辨率为1024x1024所以1024*1024*2B=2MB3.采用Br
2、esenham画线算法,绘出起点(1,3),终点为(9,18)的直线段。解:voidDrawBresenhamline(intx0,inty0,intx1,inty1){intdx=x1-x0;//x偏移量intdy=y1-y0;//y偏移量intux=dx>0?1:-1;//x伸展方向intuy=dx>0?1:-1;//y伸展方向intdx2=dx<<1;//x偏移量乘2intdy2=dy<<1;//y偏移量乘2if(abs(dx)>abs(dy)){//以x为增量方向计算inte=-dx;//e=-0.5*2*dx,把e用2*dx*e替换intx=x0;//起点x坐标inty=y0;/
3、/起点y坐标for(x=x0;x0)//e是整数且大于0时表示要取右上的点(否则是右下的点){y+=uy;e=e-dx2;//2*e*dx=2*e*dx-2*dx(原来是e=e-1)}}}else{//以y为增量方向计算inte=-dy;//e=-0.5*2*dy,把e用2*dy*e替换intx=x0;//起点x坐标inty=y0;//起点y坐标for(y=y0;y4、dx2;//来自2*e*dy=2*e*dy+2dy(原来是e=e+k)if(e>0)//e是整数且大于0时表示要取右上的点(否则是右下的点){x+=ux;e=e-dy2;//2*e*dy=2*e*dy-2*dy(原来是e=e-1)}}}}DrawBresenhamline(1,3,9,18);4.用中点画圆法生成圆心在(3,-2),半径为12的上半个半圆。解:cen=[30];r=3;t=linspace(0,2*pi);x=cen(1)+r*cos(t);y=cen(2)+r*sin(t);y(y<0)=NaN;figure;boxon;holdon;plot(x,y,'r-');axi5、sequal;plot([min(x),max(x)],[00],'k-');
4、dx2;//来自2*e*dy=2*e*dy+2dy(原来是e=e+k)if(e>0)//e是整数且大于0时表示要取右上的点(否则是右下的点){x+=ux;e=e-dy2;//2*e*dy=2*e*dy-2*dy(原来是e=e-1)}}}}DrawBresenhamline(1,3,9,18);4.用中点画圆法生成圆心在(3,-2),半径为12的上半个半圆。解:cen=[30];r=3;t=linspace(0,2*pi);x=cen(1)+r*cos(t);y=cen(2)+r*sin(t);y(y<0)=NaN;figure;boxon;holdon;plot(x,y,'r-');axi
5、sequal;plot([min(x),max(x)],[00],'k-');
此文档下载收益归作者所有