EasyX的使用(详解版)

EasyX的基础概念:

图形化——EasyX的安装-CSDN博客

创建图形化窗口

#include<graphics.h>
#include<conio.h>
int main() {//创建绘图窗口,大小为100x100像素。//更改为大窗口,像素增大;更改为小窗口,像素缩小initgraph(100, 100);// 画圆,圆心(40, 40),半径 20//     横  纵  半circle(40, 40, 20);_getch();//按任意键继续closegraph();// 关闭绘图窗口return 0;
}

学会设置窗口属性

颜色设置:

颜色宏:颜色的英语大写单词。

实现代码

#include<graphics.h>int main() {initgraph(300, 300, 0);//创建窗口,后面的0表示控制台不弹出,1表示控制台弹出,也可以不设置setbkcolor(RED);//颜色设置方法一cleardevice();//刷新颜色 while (1);closegraph();//关闭窗口return 0;
}

RGB配置。RGB颜色参考方法

1.点击图画软件

2.点击编辑颜色

3.找到RGB参考

4.记住对应数值 ,填入代码内。

实现代码:

#include<graphics.h>int main() {initgraph(300, 300, 0);//创建窗口,后面的0表示控制台不弹出,1表示控制台弹出,也可以不设置setbkcolor(RGB(240, 137, 5));//颜色设置方法二cleardevice();//刷新颜色 while (1);closegraph();//关闭窗口return 0;
}

基本绘图函数

  1. 线条绘制
    • line(int x1, int y1, int x2, int y2): 绘制从点 (x1, y1) 到点 (x2, y2) 的直线。
    • polyline(POINT *points, int num): 绘制通过一系列点的折线。
    • 代码实现(棋盘制作)
      #include<graphics.h>int main() {initgraph(300, 300, 0);//创建窗口,后面的0表示控制台不弹出,1表示控制台弹出,也可以不设置//setbkcolor(RED);//颜色设置方法一setbkcolor(RGB(240, 137, 5));//颜色设置方法二cleardevice();//刷新颜色 setlinecolor(BLACK);for (int i = 0; i <= 300; i += 40) {//棋盘制作line(0, i, 300, i);line(i, 0, i, 300);}while (1);closegraph();//关闭窗口return 0;
      }	
  2. 矩形绘制
    • rectangle(int left, int top, int right, int bottom): 绘制一个由左上角 (left, top) 和右下角 (right, bottom) 定义的矩形。
    • filledrectangle(int left, int top, int right, int bottom): 绘制并填充一个矩形。
    • roundrect(int left, int top, int right, int bottom, int xradius, int yradius): 绘制一个带有圆角的矩形。
    • filledroundrect(int left, int top, int right, int bottom, int xradius, int yradius): 绘制并填充一个带有圆角的矩形。
  3. 圆形和椭圆绘制
    • circle(int x, int y, int radius): 绘制一个以 (x, y) 为中心、radius 为半径的圆。代码实现:
      #include<graphics.h>
      #include<conio.h>
      int main() {initgraph(100, 100);// 画圆,圆心(40, 40),半径 20//     横  纵  半circle(40, 40, 20);_getch();//按任意键继续closegraph();// 关闭绘图窗口return 0;
      }
    • filledcircle(int x, int y, int radius): 绘制并填充一个圆。
    • ellipse(int x1, int y1, int x2, int y2): 绘制一个由左上角 (x1, y1) 和右下角 (x2, y2) 定义的椭圆。
    • filledellipse(int x1, int y1, int x2, int y2): 绘制并填充一个椭圆。
  4. 多边形绘制
    • polygon(POINT *points, int num): 绘制一个通过一系列点的多边形。
    • filledpolygon(POINT *points, int num): 绘制并填充一个多边形。
  5. 文本输出
    • outtextxy(int x, int y, const char *str): 在指定的 (x, y) 位置输出文本字符串 str
    • puttext(const char *str): 在当前文本位置输出文本字符串 str
    • settextstyle(int fontstyle, int fontwidth, const char *fontname): 设置文本样式,包括字体、宽度和名称。
  6. 图像操作
    • loadimage(const char *filename): 加载一个图像文件并返回一个 IMAGE 结构体指针。
    • putimage(int x, int y, IMAGE *image, int op): 在 (x, y) 位置输出一个图像,op 参数指定图像输出的方式(如正常输出、或异或输出等)。
    • getimage(int left, int top, int right, int bottom, IMAGE *image): 从当前图形界面截取一个矩形区域并保存到 IMAGE 结构体中。
    • 图像操作代码实现:
      #include<graphics.h>int main() {initgraph(800,600);IMAGE img;//图片变量定义loadimage(&img, "./ras/zp.jpg",800,600);//""里面是路径,800和600是指图片放缩的大小putimage(0, 0, &img);//打印图片while (1);closegraph();return 0;
      }

      注意:属性页的高级中字符集应该改成使用多字节字符集。

    • " "中的路径来源,首先双击图形测试,找到该文件夹打开。文件夹内新建文件夹“ras”,将需要的图片复制粘贴在文件夹内。接下来就可以使用了。

  7. 颜色设置
    • setbkcolor(COLORREF color): 设置背景颜色。
    • setcolor(COLORREF color): 设置当前绘图颜色。
    • setlinecolor(COLORREF color): 设置线条颜色。
    • setfillcolor(COLORREF color): 设置填充颜色。
  8. 其他功能
    • setorigin(int x, int y): 设置坐标原点。
    • arc(int x1, int y1, int x2, int y2, int startangle, int endangle): 绘制一个圆弧。
    • pieslice(int x1, int y1, int x2, int y2, int startangle, int endangle): 绘制一个扇形。
    • floodfill(int x, int y, COLORREF bordercolor): 使用泛洪填充算法填充一个连续区域。

其他知识点和函数的代码实现会陆续更新~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/499006.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jenkins笔记(一)

个人学习笔记&#xff08;整理不易&#xff0c;有帮助点个赞&#xff09; 笔记目录&#xff1a;学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客 目录 一&#xff1a;简单了解 二&#xff1a;什么是DevOps 三&#xff1a;安装Jenkins 四&#xff1…

HarmonyOS—端云一体化组件

概述 DevEco Studio还为您提供多种端云一体化组件。集成端云一体化组件后&#xff0c;您只需进行简单配置即可向应用用户提供登录、支付等众多功能。 登录组件 您可使用端云一体化登录组件向应用用户提供登录和登出功能&#xff0c;目前支持帐号密码登录、手机验证码登录、以…

喜报|迪捷软件入选工信部“2023年信息技术应用创新解决方案”

为进一步推进信创生态建设&#xff0c;激发产业自主创新活力&#xff0c;高效促进供需协同发展&#xff0c;加强区域联动和资源整合&#xff0c;国家工业和信息化部网络安全产业发展中心&#xff08;工业和信息化部信息中心&#xff09;联合相关单位&#xff0c;遴选了一批可复…

idea集成git详解教程(实用篇)

0.Git常用命令 Git常用命令-CSDN博客 1.下载git Git - Downloads 一路傻瓜式安装即可&#xff08;NEXT&#xff09; 2.软件测试 在Windows桌面空白处&#xff0c;点击鼠标右键&#xff0c;弹出右键菜单 Git软件安装后&#xff0c;会在右键菜单中增加两个菜单 Git GUI He…

django框架不调试下会被达出史(sql查询次数,消耗时间)

1:使用pycharm编辑器里面 2:安装django-debug-toolbar 3:进行调试查询 https django框架调试,各个面板查询消耗时间&#xff0c;pycharm,debug 1&#xff1a;settings.py INSTALLED_APPS列表中添加 INSTALLED_APPS [# 使用多合一有点慢# multi_captcha_admin,# 多合一验证码i…

Linux 基础之 vmstat 命令详解

文章目录 一、前言二、使用说明2.1 vmstat [delay/count/d/D/t/w]2.2.vm模式的字段 一、前言 vmstat(VirtualMeomoryStatistics&#xff0c;虚拟内存统计)是一个不错的 Linux/Unix 监控工具&#xff0c;在性能测试中除了top外也是比较常用的工具之一&#xff0c;它可以监控操作…

Html零基础入门教程(非常详细)

文章目录 1.认识HTML2.html 框架3.HTML常见标签4.HTML语法特征5.列表 1.认识HTML html是超文本标记语言: 目前最新版本是html5,由w3c(万维网联盟)完成标准制定。 声明文档的类型是html5 超文本标记语言。 HTML &#xff0c;全称“Hyper Text Markup Language&#xff08;超文…

【HTML】HTML基础2(一些常用标签)

目录 例子 首先是网页图标 然后是一些常用标签 插入图片 例子 <!DOCTYPE html> <html><head><link rel"icon" href"img/银河护卫队-星爵.png" type"image/x-icon"><meta charset"utf-8"><title>…

MySQL 自增列解析(Auto_increment)

MySQL数据库为列提供了一种自增属性&#xff0c;当列被定义为自增时。Insert语句对该列即使不提供值&#xff0c;MySQL也会自动为该列生成递增的唯一标识&#xff0c;因此这个特性广泛用于主键的自动生成。 一、自增列的用法 自增列具有自动生成序列值&#xff0c;整型&#…

android开发前景2019,android高级面试framework

到底是公司养活了我&#xff0c;还是我养活了公司&#xff1f; 1. 很难在一家公司干到退休 在我父母那一代&#xff0c;一个上班的职工&#xff0c;往往可以在一家单位干到退休&#xff0c;名副其实的“铁饭碗”。甚至更早之前的年代&#xff0c;职工的子女还可以接父母的班&a…

TCP的三次握手和四次挥手 | 查看网络状态

三次握手和四次挥手是在计算机网络中用于建立和终止TCP连接的协议。这两个过程是TCP协议的重要组成部分&#xff0c;确保数据的可靠传输。 三次握手指的是在客户端和服务器之间建立连接时的步骤。具体流程如下&#xff1a; 客户端向服务器发送一个连接请求报文段&#xff08;…

前端-DOM树

dom树描述网页元素关系的一个专有名词&#xff0c;如html内包含了head、body&#xff0c;而head内包含meta、title、script等&#xff0c;body内包含div等元素&#xff1b;网页所有内容都在document里面&#xff0c;网页内容以树状形式排列&#xff0c;所以称之为dom树 dom树内…