0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

我快闭嘴 来源:C语言学习联盟 作者:C语言学习联盟 2022-09-06 14:27 次阅读
前言

中秋将至,这里抛砖引玉C++和Easyx简单的画一个星空出来,画完许个愿,百分百实现!呵呵呵呵

一、准备Easyx

首先我们要前往Easyx官网下载安装程序,

下载完成后打开程序,并点击“下一步”;

11d5b872-2d18-11ed-ba43-dac502259ad0.png

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

11ed30d8-2d18-11ed-ba43-dac502259ad0.png

二、函数介绍

我在这里简单介绍一下几个今天要用的函数:

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。可为以下值:

1218840e-2d18-11ed-ba43-dac502259ad0.png

5、closegraph

这个函数用于关闭绘图窗口。

void closegraph();

6、putpixel

这个函数用于画点。

void putpixel(  int x,  int y,  COLORREF color);

参数

  • x:点的 x 坐标

  • y:点的 y 坐标

  • color:点的颜色

三、实现原理和代码

这个项目的实现原理并不难,月亮就是一个无边框的填充圆;大星星就是先画一个圆,再在四周用背景色画几个圆;小星星就是在随机位置画点。

完整代码如下:

#include #include #include  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;}

效果就不放了,感兴趣的可以自己运行一下,也可以自己再拓展一下。

审核编辑:汤梓红


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序
    +关注

    关注

    114

    文章

    3630

    浏览量

    79531
  • 函数
    +关注

    关注

    3

    文章

    3866

    浏览量

    61308
  • C++
    C++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72899

原文标题:如何用C++在中秋来临之际画一个星空(玩一下)

文章出处:【微信号:C语言学习联盟,微信公众号:C语言学习联盟】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    [2.4.1]--1.4两简单C++程序

    C++
    jf_75936199
    发布于 :2023年01月10日 02:16:01

    哪位大侠帮我看protel画一简单的电路图

    本帖最后由 WAITXHURT 于 2013-3-20 08:46 编辑 哪位大侠帮我看protel画一简单的电路图,进行封装,然后制板。求教过程。我的网络表格导入老是出错。
    发表于 03-20 00:13

    自己C++编写的STM32小库

    目前也就实现了GPIO和RCC的控制吧...C++对象编程感觉比C编程清晰的多,估计我的水平效率也低得多...不过比原生库更方便,代码量更小.有兴趣的可以下载下来看看,我在这里就放
    发表于 08-14 19:15

    vxWorks对C++的支持问题

    大家好,我最近也在学习vxWorks开发,在测试vxWorks对C++的支持的时候,遇到了问题,我就写了简单的hello world程序,
    发表于 07-13 19:13

    c++什么来写界面的

    请教大神们,最近在学习c++,想请教c++只能写控制台程序吗,或者说基于c++的GUI是什么写的,据说VS是
    发表于 10-07 10:44

    JAVA和C++区别

    。这有利于Java程序的安全。 2.多重继承 c++支持多重继承,这是c++特征,它允许多父类派生
    发表于 10-10 14:50

    有偿求帮忙ads画一简单的电路

    有偿求帮忙ads画一简单的电路,再做下阻抗匹配。有意者加qq2528843789.价格好商量
    发表于 05-12 12:56

    C++笔记003:C++小程序开始

    ` 本帖最后由 tyyhmtyyhm 于 2018-5-12 09:37 编辑 笔记三:从小程序开始安装好VS2010后,从第一个小程序开始。在学习C语言时,我首先输出了
    发表于 03-05 12:51

    HCG生成的代码如何结合C++编程

    您好,我想问下这个HCG生成的代码必须使用CCS project来使用吗?如果CCS建立C++的工程,能不能使用HCG生成的代码呢? 另外,如何在CCS中配置建立
    发表于 06-21 00:04

    c++算法库的移植问题

    目前有算法库 c++  ccs在dsp上可以调试 现在希望把库放在8168的dsp上  需要将
    发表于 06-21 13:14

    Java和C++的区别

    。这有利于Java程序的安全。 2.多重继承 c++支持多重继承,这是c++特征,它允许多父类派生
    发表于 09-13 16:02

    如何学习C++,如何学好C++

    最近,很多学员都给我发邮件问我应该如何学习C++,如何学好C++?那么作为C语言小白摸爬滚打、入坑无数到成长为如今的高级
    发表于 08-20 06:27

    如何使用C++实现简单的QT界面开发

    (socket、sqlite3、cgic)-》工程管理-》arm和单片机(裸机开发的技能)-》系统移植-》驱动开发-》硬件-》些开发工具*/熟练掌握Linux下的C语言编程会使用C++实现
    发表于 12-27 06:41

    如何画一已知RGB颜色的按钮、编辑框或者画一矩形

    现在已知RGB三种颜色的值,如何把它设为按钮的背景色,或者编辑框的背景色,甚至画一填充该色的矩形都可以。请高手支招,谢谢!
    发表于 02-09 23:58

    使用C++构建简单的任务项目报错的原因?

    我正在使用 C++ 构建简单的任务项目,代码如下:代码:全选#include #include \"esp_log.h\"#include #include static
    发表于 04-13 07:44