真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言line函數(shù)編寫 c語言inline函數(shù)

c語言中如何用line畫一個(gè)圓

#include math.h

成都創(chuàng)新互聯(lián)公司專注于元江縣網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供元江縣營(yíng)銷型網(wǎng)站建設(shè),元江縣網(wǎng)站制作、元江縣網(wǎng)頁設(shè)計(jì)、元江縣網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造元江縣網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供元江縣網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

#include graphics.h /*預(yù)定義庫(kù)函數(shù)*/

void circlePoint(int x,int y) /*八分法畫圓程序*/

{

circle(320+x*20,240+y*20,3);

circle(320+y*20,240+x*20,3);

circle(320-y*20,240+x*20,3);

circle(320-x*20,240+y*20,3);

circle(320-x*20,240+y*20,3);

circle(320-x*20,240-y*20,3);

circle(320-y*20,240-x*20,3);

circle(320+y*20,240-x*20,3);

circle(320+x*20,240-y*20,3);

}

void MidBresenhamcircle(int r) /* 中點(diǎn)Bresenham算法畫圓的程序 */

{

int x,y,d;

x=0;y=r;d=1-r; /* 計(jì)算初始值 */

while(xy)

{ circlePoint(x,y); /* 繪制點(diǎn)(x,y)及其在八分圓中的另外7個(gè)對(duì)稱點(diǎn) */

if(d0) d+=2*x+3; /* 根據(jù)誤差項(xiàng)d的判斷,決定非最大位移方向上是走還是不走 */

else

{ d+=2*(x-y)+5;

y--;

}

x++;

delay(900000);

} /* while */

}

main()

{

int i,j,r,graphmode,graphdriver;

detectgraph(graphdriver,graphmode); initgraph(graphdriver,graphmode," ");

printf("中點(diǎn)Bresenhamcircle算法哪喚肢畫圓的程序\n"); /*提示信息*/

printf("注意 |r|=11");

printf("\n輸入半徑值 r:");

scanf("%d",r);

printf("按任意鍵顯示圖形...");

getch(); cleardevice(); setbkcolor(BLACK);

for(i=20;i=620;i+=20) /*使用雙循環(huán)畫點(diǎn)函數(shù)畫出表格中的縱坐標(biāo)*/

for(j=20;j=460;j++)

putpixel(i,j,2);

for(j=20;j=460;j+=20) n歡迎光臨學(xué)網(wǎng),收藏本篇文章 [1] [2]

$False$

bsp; /*使用雙循環(huán)畫點(diǎn)函數(shù)畫出表格中的橫坐標(biāo)*/

for(i=20;i=620;i++)

putpixel(i,j,2); outtextxy(320,245,"鏈虛0"); /*原點(diǎn)坐標(biāo)*/

outtextxy(320-5*20,245,"-5");circle(320-5*20,240,2); /*橫坐標(biāo)值*/

outtextxy(320+5*20,245,"5");circle(320+5*20,240,2);

outtextxy(320-10*20,245,"-10"李世);circle(320-10*20,240,2);

outtextxy(320+10*20,245,"10");circle(320+10*20,240,2);

outtextxy(320-15*20,245,"-15");circle(320-15*20,240,2);

outtextxy(320+15*20,245,"15");circle(320+15*20,240,2);

outtextxy(320,240-5*20,"-5");circle(320,240-5*20,2); /*縱坐標(biāo)值*/

outtextxy(320,240+5*20,"5");circle(320,240+5*20,2);

outtextxy(320,240-10*20,"-10");circle(320,240-10*20,2);

outtextxy(320,240+10*20,"10");circle(320,240+10*20,2);

outtextxy(20,10,"The center of the circle is (0,0) "); /*坐標(biāo)軸左上角顯示提示信息*/

setcolor(RED); /*標(biāo)記坐標(biāo)軸*/

line(20,240,620,240); outtextxy(320+15*20,230,"X");

line(320,20,320,460); outtextxy(330,20,"Y");

setcolor(YELLOW);

MidBresenhamcircle(r);

setcolor(BLUE); /*繪制圓*/

circle(320,240,r*20);

setcolor(2);

getch(); closegraph();

}

求一用C語言畫直線的程序

C語言的話畫直線用MoveTo()和LineTo()很簡(jiǎn)單啊。

幫你復(fù)制一份我學(xué)習(xí)時(shí)老師給的畫線兩例:

#includegraphics.h

#includemath.h

/*

###############################################################################

功 能:本函數(shù)的作用是用逐點(diǎn)比較法來畫一條直線

格 式:void myline1(int x1,int y1,int x2,int y2,int color)

參數(shù)說明:x1,y1是起始點(diǎn)坐標(biāo),x2,y2是終止點(diǎn),color是畫線的顏色

調(diào)用示例:myline1(10,20,500,440,4)

###############################################################################

*/

void myline1(int x1,int y1,int x2,int y2,int color)

{

/*變量定義開始(2007/10/16增加)*/

int iTx; /*x軸終點(diǎn)的相對(duì)坐標(biāo)xa或臨時(shí)變量*/

int iTy; /*y軸終點(diǎn)的相對(duì)坐標(biāo)ya或臨時(shí)變量*/

int iDx; /*x軸方向的步長(zhǎng)dx*/

int iDy; /*y軸方向的步長(zhǎng)dy*/

int iFt; /*偏差Fm*/

int iSt; /*記數(shù)循環(huán)數(shù)(dx+dy)S*/

int iXt; /*x方向循環(huán)變量xm*/

int iYt; /*y方向循環(huán)變量ym*/

/*變量定義結(jié)束*/

/*變量初始化開始*/

/*如果是第三象限或第四象限則換成第一或第二象限*/

if(y2y1)

{

iTx=x1;

x1=x2;

x2=iTx;

iTy=y1;

y1=y2;

y2=iTy;

}

iTx=x2-x1; /*取x軸的相對(duì)坐標(biāo)*/

iTy=y2-y1; /粗李*取y軸的相對(duì)坐標(biāo)*/

iDx=1;

iDy=1;

iFt=0;

iSt=iTx+iTy;

if(iTx0)iSt=-1*iTx+iTy /*如果在第二象限,則x軸方向步長(zhǎng)取負(fù)值*/

iXt=0;

iYt=0;

/*變量初始化結(jié)束*/

/*數(shù)據(jù)處理開始*/

while(iSt0)

{

putpixel(x1+iXt,y1+iYt,color);

if(iTx=0) /*如果在第一象限*/

{

if(iFt0) /*如果偏差小于0*/

{

iYt+=iDy; /*y方向走一步*/

iFt+=iTx;

}

else /睜辯*如果偏差大于或等于0*/

{

iXt+=iDx; /*x方向走一步*/

iFt-=iTy;

}

}

else

{

if(iFt0) /*如果偏差小于0*/

{

iXt-=iDx; /*負(fù)x方向走一步*/

iFt+=iTy;

}

else /*如果偏差大于或等于0*/

{

iYt+=iDy; /*y方向走一步*/

iFt+=iTx;

}

}

iSt--;

}

}

/*

###############################################################################

功 能:本函數(shù)的悉凳缺作用是用來畫一條直線

格 式:void myline2(int x1,int y1,int x2,int y2,int color)

參數(shù)說明:x1,y1是起始點(diǎn)坐標(biāo),x2,y2是終止點(diǎn),color是畫線的顏色

調(diào)用示例:myline2(10,20,500,440,4)

###############################################################################

*/

int myline2(int x1,int y1,int x2,int y2,int color)

{

int iX; /*x方向的坐標(biāo)變量*/

int iY; /*y方向的坐標(biāo)變量*/

int iTx; /*x方向的步長(zhǎng)變量*/

int iTy; /*y方向的步長(zhǎng)變量*/

float fDx; /*x方向的差分變量*/

float fDy; /*y方向的差分變量*/

float fMinf; /*算法中的f*/

float fMaxF; /*算法中的F*/

float fS; /*終點(diǎn)判斷變量*/

fMinf=0.5; /*f=0.5*/

iX=x1;

iY=y1;

putpixel(x1,y1,color);

if(x1==x2y1==y2) /*如果終點(diǎn)和起始點(diǎn)相同*/

{

return(1);

}

iTx=1;

iTy=1;

fDx=(float)(x2-x1);

fDy=(float)(y2-y1);

fMaxF=fDy/fDx0?fDy/fDx:(-fDy/fDx); /*F=|dy/dx|*/

if(fDx0)iTx=-1;

if(fDy0)iTy=-1;

fS=fDx0?fDx:(-fDx);

if(fMaxF==1) /*如果F=1*/

{

iX=x1;

iY=y1;

while(fS0)

{

iX+=iTx; /*x方向走一步*/

iY+=iTy; /*y方向走一步*/

putpixel(iX,iY,color);

fS--;

}

}

else if(fMaxF1) /*如果F1*/

{

fS+=fDy0?fDy:(-fDy);

while(fS0)

{

iY+=iTy; /*y方向走一步*/

putpixel(iX,iY,color);

fMinf+=1/fMaxF; /*f=f+1/F*/

fS--;

if(fMinf=1) /*如果f=1*/

{

iX+=iTx; /*x方向走一步*/

fMinf--; /*f=f-1*/

putpixel(iX,iY,color);

fS--;

}

}

}

else /*如果F1*/

{

fS+=fDy0?fDy:(-fDy);

while(fS0)

{

iX+=iTx; /*x方向走一步*/

putpixel(iX,iY,color);

fMinf+=fMaxF; /*f=f+F*/

fS--;

if(fMinf=1) /*如果f=1*/

{

iY+=iTy; /*y方向走一步*/

fMinf--; /*f=f-1*/

putpixel(iX,iY,color);

fS--;

}

}

}

}

c語言中l(wèi)ine函數(shù)內(nèi)的參數(shù)的含義

line(x1,y1,x2,y2);其中兩個(gè)數(shù)為一個(gè)坐標(biāo),表示從(x1,y1)畫線到(x2,y2)


文章名稱:c語言line函數(shù)編寫 c語言inline函數(shù)
鏈接URL:http://weahome.cn/article/ddpeegp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部