中秋將至,這里拋磚引玉用C++和Easyx簡(jiǎn)單的畫(huà)一個(gè)星空出來(lái),畫(huà)完許個(gè)愿,百分百實(shí)現(xiàn)!呵呵呵呵
一、準(zhǔn)備Easyx
首先我們要前往Easyx官網(wǎng)下載安裝程序,
下載完成后打開(kāi)程序,并點(diǎn)擊“下一步”;
隨后選擇你的編輯器并點(diǎn)擊“安裝”。
二、函數(shù)介紹
我在這里簡(jiǎn)單介紹一下幾個(gè)今天要用的函數(shù):
1、solidcircle
這個(gè)函數(shù)用于畫(huà)無(wú)邊框的填充圓。
函數(shù)原型:
void solidcircle(
int x,
int y,
int radius
);
參數(shù)解釋?zhuān)?/span>
-
x:圓心 x 坐標(biāo)
-
y:圓心 y 坐標(biāo)
-
radius:圓的半徑
2、setfillcolor
這個(gè)函數(shù)用于設(shè)置當(dāng)前設(shè)備填充顏色。
函數(shù)原型:
void setfillcolor(COLORREF color);
參數(shù)解釋?zhuān)?/strong>
color:填充的顏色
3、getbkcolor
這個(gè)函數(shù)用于獲取當(dāng)前設(shè)備背景色。
COLORREF getbkcolor();
4、initgraph
這個(gè)函數(shù)用于初始化繪圖窗口。
函數(shù)原型:
HWND initgraph(
int width,
int height,
int flag = NULL
);
參數(shù)解釋?zhuān)?/span>
-
width:繪圖窗口的寬度
-
height:繪圖窗口的高度
-
flag:繪圖窗口的樣式,默認(rèn)為 NULL??蔀橐韵轮担?/p>
5、closegraph
這個(gè)函數(shù)用于關(guān)閉繪圖窗口。
void closegraph();
6、putpixel
這個(gè)函數(shù)用于畫(huà)點(diǎn)。
void putpixel(
int x,
int y,
COLORREF color
);
參數(shù)
-
x:點(diǎn)的 x 坐標(biāo)
-
y:點(diǎn)的 y 坐標(biāo)
-
color:點(diǎn)的顏色
三、實(shí)現(xiàn)原理和代碼
這個(gè)項(xiàng)目的實(shí)現(xiàn)原理并不難,月亮就是一個(gè)無(wú)邊框的填充圓;大星星就是先畫(huà)一個(gè)圓,再在四周用背景色畫(huà)幾個(gè)圓;小星星就是在隨機(jī)位置畫(huà)點(diǎn)。
完整代碼如下:
void star(int x, int y) {
setfillcolor(YELLOW);
solidcircle(x, y, 20);
setfillcolor(getbkcolor());
solidcircle(x - 20, y - 20, 20);
solidcircle(x + 20, y - 20, 20);
solidcircle(x - 20, y + 20, 20);
solidcircle(x + 20, y + 20, 20);
return;
}
int main() {
srand((unsigned int)time(NULL));
initgraph(640, 480);
setfillcolor(YELLOW);
solidcircle(450, 80, 50);
star(50, 50);
star(570, 400);
star(300, 60);
star(250, 300);
star(50, 400);
for (int i = 0; i < 100; i++) {
putpixel(rand() % 640, rand() % 480, YELLOW);
}
_getch();
closegraph();
return 0;
}
效果就不放了,感興趣的可以自己運(yùn)行一下,也可以自己再拓展一下。
審核編輯:湯梓紅
-
程序
+關(guān)注
關(guān)注
117文章
3817瀏覽量
82180 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4365瀏覽量
63872 -
C++
+關(guān)注
關(guān)注
22文章
2116瀏覽量
74587
原文標(biāo)題:如何用C++在中秋來(lái)臨之際畫(huà)一個(gè)星空(玩一下)
文章出處:【微信號(hào):C語(yǔ)言學(xué)習(xí)聯(lián)盟,微信公眾號(hào):C語(yǔ)言學(xué)習(xí)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
用C++寫(xiě)一個(gè)http服務(wù)器
哪位大俠幫我看用protel畫(huà)一個(gè)簡(jiǎn)單的電路圖
有償求幫忙用ads畫(huà)一個(gè)很簡(jiǎn)單的電路
使用C++構(gòu)建一個(gè)簡(jiǎn)單的任務(wù)項(xiàng)目報(bào)錯(cuò)的原因?
用Visual C++做數(shù)據(jù)庫(kù)開(kāi)發(fā)
C++面向?qū)ο箨P(guān)于MFC的一些簡(jiǎn)單應(yīng)用和總結(jié)
C++C/C++程序設(shè)計(jì)教程_C/C++概述
C++入門(mén)教程之C++程序設(shè)計(jì)的課件資料免費(fèi)下載

C++程序設(shè)計(jì)的基礎(chǔ)知識(shí)初步了解C++的資料免費(fèi)下載

STM32實(shí)戰(zhàn)三 C++ IO.cpp

c++知識(shí)要點(diǎn)
利用C++提供的隊(duì)列封裝一個(gè)消息隊(duì)列

C++簡(jiǎn)史:C++是如何開(kāi)始的

評(píng)論