ZKX's LAB

bresenham画线算法与计算机图形学画线算法有什么不同?

2021-03-06知识1

怎么画立体图形,想要画好立体图形,首先要画好它的透视关系,今天我来给大家分享一下怎么画好立体图形,一起来看一下吧。

bresenham画线算法与计算机图形学画线算法有什么不同?

立体图形怎么画,很多学习简笔画的小伙伴想知道立体图形怎么画,对此比较感兴趣。下面小编就来告诉大家立体图形怎么画。

bresenham画线算法与计算机图形学画线算法有什么不同?计算机图形学画线算法很多,有DDA算法、逐点比较法、Bresenham算法等,Bresenham算法是最著名的,而且算法中只用到了。

用C++如何实现bresenham画线算法?计算机图形学上面有个drawpixel的函数。不知道怎么用。 在MFC中可以这样实现:Bresenham算法画直线void CMyView:OnDrawLineByBresenham(){TODO:Add your command handler code hereCDC*pDC=GetDC();CPoint PtBegin(80,130);起始点CPoint PtEnd(320,370);终止点int s1,s2,interchange;double X=PtBegin.x;double Y=PtBegin.y;double deltax,deltay,f,Temp;deltax=abs(PtEnd.x-PtBegin.x);deltay=abs(PtEnd.y-PtBegin.y);if(PtBegin.x-PtBegin.x>;=0)s1=1;else s1=-1;if(PtEnd.y-PtBegin.y>;=0)s2=1;else s2=-1;f=2*deltay-deltax;if(deltay>;deltax){Temp=deltax;deltax=deltay;deltay=Temp;interchange=1;}else interchange=0;for(int i=1;i(deltax+deltay);i+){if(f>;=0){if(interchange=1)X+s1;else Y+s2;pDC->;SetPixel(int(X),int(Y),RGB(0,50,250));f=f-2*deltax;}else{if(interchange=1)Y+s2;else X+s1;pDC->;SetPixel(int(X),int(Y),RGB(200,0,0));f=f+2*deltay;}}}编译环境:VC6.0

画CAD图时,线太长 比例问题。健入z健,回车,输入比例:0.5或0.005等等,再回车,ok。试试看,对就给分啦。

#图形学画画#图形学画线#图形学习动画#图形学研究生学校排名#图形学颜色英语

随机阅读

qrcode
访问手机版