中秋将至,这里抛砖引玉用C++和Easyx简单的画一个星空出来,画完许个愿,百分百实现!呵呵呵呵
一、准备Easyx
首先我们要前往Easyx官网下载安装程序,
下载完成后打开程序,并点击“下一步”;

随后选择你的编辑器并点击“安装”。

二、函数介绍
我在这里简单介绍一下几个今天要用的函数:
1、solidcircle
这个函数用于画无边框的填充圆。
函数原型:
void solidcircle(int x,int y,int radius);
参数解释:
-
x:圆心 x 坐标
-
y:圆心 y 坐标
-
radius:圆的半径
2、setfillcolor
这个函数用于设置当前设备填充颜色。
函数原型:
void setfillcolor(COLORREF color);
参数解释:
color:填充的颜色
3、getbkcolor
这个函数用于获取当前设备背景色。
COLORREF getbkcolor();
4、initgraph
这个函数用于初始化绘图窗口。
函数原型:
HWND initgraph(int width,int height,int flag = NULL);
参数解释:
-
width:绘图窗口的宽度
-
height:绘图窗口的高度
-
flag:绘图窗口的样式,默认为 NULL。可为以下值:

5、closegraph
这个函数用于关闭绘图窗口。
void closegraph();
6、putpixel
这个函数用于画点。
void putpixel(int x,int y,COLORREF color);
参数
-
x:点的 x 坐标
-
y:点的 y 坐标
-
color:点的颜色
三、实现原理和代码
这个项目的实现原理并不难,月亮就是一个无边框的填充圆;大星星就是先画一个圆,再在四周用背景色画几个圆;小星星就是在随机位置画点。
完整代码如下:
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;}
效果就不放了,感兴趣的可以自己运行一下,也可以自己再拓展一下。
审核编辑:汤梓红
-
程序
+关注
关注
117文章
3836浏览量
84760 -
函数
+关注
关注
3文章
4406浏览量
66831 -
C++
+关注
关注
22文章
2122浏览量
76706
原文标题:如何用C++在中秋来临之际画一个星空(玩一下)
文章出处:【微信号:C语言学习联盟,微信公众号:C语言学习联盟】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
哪位大侠帮我看用protel画一个简单的电路图
使用C++构建一个简单的任务项目报错的原因?
用Visual C++做数据库开发
C++入门教程之C++程序设计的课件资料免费下载
C++程序设计的基础知识初步了解C++的资料免费下载
C++简史:C++是如何开始的

用C++和Easyx简单的画一个星空
评论