Easyx的学习1

使用easys的相关函数需要包含头文件#include<easyx.h>或#include<graphics.h>(#include<graphics.h>包含了<easyx.h>和一些不推荐使用的函数)

目录

窗口创建+背景颜色

 基本图形绘制

1.点

 2.线

3.矩形

 圆角矩形

4. 圆形

 椭圆


窗口创建+背景颜色

1.创建一个图形窗口函数:initgraph:(含有2个参数:宽度,高度)

2.设置窗口的颜色使用:setbkcolor:(含有1个参数:颜色)

3.用设置的背景颜色填充整个窗口:cleardevice()(无参数)(缺少第3步窗口颜色不会改变)

#include<stdio.h>
#include<easyx.h>
int main()
{//创建一个图形窗口函数 宽度+高度initgraph(640, 480);//设置窗口的颜色使用:setbkcolorsetbkcolor(WHITE);//用设置的背景颜色填充整个窗口cleardevice();//防止程序退出Sleep(10000);return 0;
}

运行后如下:

出现了一个界面窗口颜色为白色,可以设置其他的颜色

 

 基本图形绘制

1.点

使用:putpixel函数(3个参数:x坐标,y坐标,点的颜色)

 2.线

1.使用:line函数(4个参数:起点的x1坐标,起点的y1坐标,终点的x2坐标,终点的y2坐标)

2.设置线条的颜色使用:setlinecolor函数(1个参数:线条的颜色)

3.设置线条的样式使用:setlinestyle函数(4个参数只用前两个:线条的样式如:(PS_SOLID)PS表示pen style,线的宽度)

3.矩形

1.无填充矩形(中间空的)使用:rectangle函数(4个参数:左上方的x1坐标,左上方的y1坐标,右下方的x2坐标,右下方的y2坐标)

2.有填充矩形(默认白色)使用fillrectangle函数,参数同上

3.无边框有填充矩形(默认白色)使用solidrectangle函数,参数同上

4.对于有填充矩形无边框有填充矩形想修改内部颜色使用setfillcolor函数(1个参数:填充的颜色)

5.对于边框的线的颜色改变同对线的颜色改变方法一样使用setlinecolor函数

 圆角矩形

绘制一个圆角矩形,6个参数,前4个同矩形一样,后面两个控制边角的弧度,越大越接近圆

roundrect(160, 0, 210, 50, 20, 20);//无填充圆角矩形
fillroundrect(160, 50, 210, 100, 20, 20);//有填充圆角矩形
solidroundrect(160, 100, 210, 150, 20, 20);//无边框有填充圆角矩形

 4.圆形

绘制一个圆形使用circle函数:3个参数(圆心的x坐标,圆心的y坐标,圆的半径)

circle(50, 50, 40);//无填充圆形
fillcircle(50, 150, 40); //有填充圆形
solidcircle(50, 250, 40);//无边框有填充圆形

对于圆形内部的颜色和边框线的颜色同矩形使用的函数一样内部颜色使用setfillcolor函数和setlinecolor函数

 

 椭圆

4个参数表示矩形(左上方的x1坐标,左上方的y1坐标,右下方的x2坐标,右下方的y2坐标)

显示的椭圆为矩形的内接椭圆

ellipse(230, 0, 230 + 50, 100);//无填充椭圆
fillellipse(230, 110, 230 + 50, 210);//有填充椭圆
solidellipse(230, 220, 230 + 50, 320);//无边框有填充椭圆

对于椭圆内部的颜色和边框线的颜色同矩形使用的函数一样内部颜色使用setfillcolor函数和setlinecolor函数

 

 上述所有过程总代码如下:

#include<stdio.h>
#include<easyx.h>
void drawshape()
{//窗口的坐标体系:窗口的左上方是原点,x轴向右增大,y轴向下增大//绘制一个点//使用:putpixel函数(3个参数:x坐标,y坐标,点的颜色)putpixel(50, 50, RED);//红色//设置线条的颜色//使用:setlinecolor函数(1个参数:线条的颜色)setlinecolor(RED);//设置线条的样式//使用:setlinestyle函数(4个参数只用前两个:线条的样式如:(PS_SOLID)PS表示pen style,线的宽度)setlinestyle(PS_SOLID, 2);//绘制一条线//使用:line函数(4个参数:起点的x1坐标,起点的y1坐标,终点的x2坐标,终点的y2坐标)line(0, 0, getwidth(), getheight());//getwidth()获取窗口的宽度(x),getheight()获取窗口的高度(y)//绘制一个矩形//无填充矩形(中间空的)使用:rectangle函数(4个参数:左上方的x1坐标,左上方的y1坐标,右下方的x2坐标,右下方的y2坐标)rectangle(100, 0, 150, 50);//设置填充颜色//使用:setfillcolor函数(1个参数:填充的颜色)setfillcolor(YELLOW);//有填充矩形(默认白色),参数同上fillrectangle(100, 60, 150, 110);//无边框有填充矩形(默认白色),参数同上solidrectangle(100, 120, 150, 170);//绘制一个圆角矩形//6个参数,前4个同矩形一样,后面两个控制边角的弧度,越大越接近圆roundrect(160, 0, 210, 50, 20, 20);//无填充圆角矩形fillroundrect(160, 60, 210, 110, 20, 20);//有填充圆角矩形solidroundrect(160, 120, 210, 170, 20, 20);//无边框有填充圆角矩形//绘制一个圆形//circle函数:3个参数(圆心的x坐标,圆心的y坐标,圆的半径)circle(50, 50, 40);//无填充圆形fillcircle(50, 150, 40); //有填充圆形solidcircle(50, 250, 40);//无边框有填充圆形//椭圆//4个参数表示矩形(左上方的x1坐标,左上方的y1坐标,右下方的x2坐标,右下方的y2坐标)//显示的椭圆为矩形的内接椭圆ellipse(230, 0, 230 + 50, 100);//无填充椭圆fillellipse(230, 110, 230 + 50, 210);//有填充椭圆solidellipse(230, 220, 230 + 50, 320);//无边框有填充椭圆
}
int main()
{//创建一个图形窗口函数 宽度+高度initgraph(640, 480);//设置窗口的颜色使用:setbkcolorsetbkcolor(WHITE);//RGB三原色//用设置的背景颜色填充整个窗口cleardevice();drawshape();//防止程序退出Sleep(10000);return 0;
}

运行结果如下:

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

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

相关文章

流式存储音频/视频

目录 流式存储音频/视频 1.1 具有元文件的万维网服务器 1.2 媒体服务器 1.3 实时流式协议 RTSP 使用 RTSP 的媒体服务器的工作过程 流式存储音频/视频 “存储”音频/视频文件不是实时产生的&#xff0c;而是已经录制好的&#xff0c;通常存储在光盘或硬盘中。 传统浏览器…

一个简短的补充------对链表练习题的补充补充

昨天不是写了一篇有关链表的数据结构练习题嘛&#xff0c;其实那篇文章的第二道题还有许多值得我们思考的东西&#xff0c;今天就在这做一个简短的补充。补充一下运用那道题解决另一道题。 给大家看一下绿色让眼睛放松一下。 给定一个链表的头节点 head &#xff0c;返回链表…

【前端】前端三要素之JavsScript基础

写在前面&#xff1a;本文仅包含JavaScript内容&#xff0c;DOM知识传送门在这里&#xff0c;BOM传送门在这里。 本文内容是假期中刷的黑马Pink老师视频&#xff08;十分感谢Pink老师&#xff09;&#xff0c;原文保存在个人的GitLab中&#xff0c;如果需要写的网页内容信息等可…

计算机二级C语言的注意事项及相应真题-6-程序修改

目录 51.从整数10到55之间&#xff0c;选出能被3整除、且有一位上的数是5的那些数&#xff0c;并把这些数放在b所指的数组中&#xff0c;这些数的个数作为函数值返回52.先将s所指字符串中的字符按逆序存放到t所指字符串中&#xff0c;然后把s所指串中的字符按正序连接到t所指串…

K210基础实验——点亮LED灯

一、目的是点亮K210开发板左下角的LED0和LED1&#xff0c;LED0是红灯&#xff0c;LED1是绿灯&#xff0c;两颗LED灯都是低电平点亮&#xff0c;高电平熄灭。 二、这是原理图上的硬件连接&#xff0c;LED0连接的是IO0&#xff0c;LED1连接的是IO17。 三、在src目录下新建文件夹 …

WSL2配置Linux、Docker、VS Code、zsh、oh my zsh

0. 写在前面 本篇笔记来自于UP主麦兜搞IT的合集视频Windows10开发环境搭建中的部分内容 1. 安装WSL2 按照微软官方文档进行操作&#xff0c;当然也可以直接wsl --install 也可以按照 旧版手动安装的步骤 来进行操作 选择安装的是Ubuntu 20.04 LTS 注&#xff1a;WSL默认安装…

【Vulkan Tutorials 01】【环境搭建】三角形例子

Development Environment&#xff08;开发环境&#xff09; 1. 安装Vulkan SDK 官网 2. 安装cmake和minGW 2.1 cmake 官网 双击可执行文件&#xff0c;然后直接安装&#xff0c;注意环境变量选择设置&#xff0c;否则需要自己操作。 2.2 minGW 官网 下载如下图所示&am…

2.21数据与结构算法学习日记(最小生成树prim算法)

目录 最小生成树prim 最小生成树算法是一种用来在一个加权连通图中找到最小生成树的算法。最小生成树是一个包含图中所有顶点的树&#xff0c;其总权值最小。 prim算法 洛谷题目示例 P3366 【模板】最小生成树 题目描述 输入格式 输出格式 输入输出样例 说明/提示 题…

K8s ingress-nginx根据请求目录不同将请求转发到不同应用

K8s ingress-nginx根据请求目录不同将请求转发到不同应用 1. 起因 有小伙伴做实验想要实现以下需求: 输入www.pana.com/app1访问app1的svc 输入www.pana.com/app2访问app2的svc 2. 实验 2.1 Dockerfile 先准备Dockerfile FROM nginx:1.20ADD index.html /usr/share/ngin…

还迷糊事务的并发问题以及隔离级别?

还迷糊事务的并发问题以及隔离级别&#xff1f; 事务并发问题 MySQL 服务端是允许多个客户端连接的&#xff0c;这意味着 MySQL 会出现同时处理多个事务的情况。 那么在同时处理多个事务的时候&#xff0c;就可能出现脏读&#xff08;dirty read&#xff09;、不可重复读&am…

华清远见作业第四十天——Qt(第二天)

思维导图&#xff1a; 编程&#xff1a; 使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为…

碳化硅晶片C面和硅面详解

SiC是一种Si元素和C元素以1:1比例形成的二元化合物&#xff0c;即百分之五十的硅&#xff08;Si&#xff09;和百分之五十的碳&#xff08;C&#xff09;&#xff0c;其基本结构单元为 Si-C 四面体。 举个例子&#xff0c;Si原子直径大&#xff0c;相当于苹果&#xff0c;C原子…

EasyRecovery支持恢复多种类型的文件包括文档、表格、图片、音频、视频等

EasyRecovery易恢复是一款来自美国的数据恢复软件&#xff0c;已有35年&#xff08;或38年&#xff09;的历史。它支持不同存储介质的数据恢复&#xff0c;包括电脑系统硬盘、移动硬盘等&#xff0c;并针对不同的数据丢失原因提供了相应的恢复方案。 EasyRecovery易恢复是一款…

开源模型应用落地-工具使用篇-向量数据库(三)

一、前言 通过学习"开源模型应用落地"系列文章&#xff0c;我们成功地建立了一个完整可实施的AI交付流程。现在&#xff0c;我们要引入向量数据库&#xff0c;作为我们AI服务的二级缓存。本文将详细介绍如何使用Milvus Lite来为我们的AI服务部署一个前置缓存。 二、术…

曝光一下不发年终奖的企业

原文连接&#xff1a; 曝光一下不发年终奖的企业 今日热帖&#xff0c;看到网上发布的一篇帖子&#xff1a;请曝光一下不发年终奖的企业&#xff01; 结果留言上百条&#xff0c;除了私企&#xff0c;还有很多国企&#xff0c;银行等。而且还有一些我们认为应该很赚钱的企业&a…

opengl 学习着色器

一.GLSL 着色器是使用一种叫GLSL的类C语言写成的。GLSL着色器编码顺序&#xff1a;声明版本》定义输入输出》uniform》main函数。每个着色器的入口点是main函数&#xff0c;在main函数中我们处理所有的输入变量&#xff0c;并将结果输出到输出变量中。如下图&#xff1a; #ver…

CVE-2024-24565 CrateDB数据库任意文件读取漏洞

目录 前言 简介 ​编辑 环境搭建 漏洞复现 前言 本次介绍的漏洞不同与以往&#xff0c; 本次洞更多是适用于利用数据库提权。 利用数据库的导入导出数据的功能&#xff0c;我们往往可以将内部的一些敏感文件如/etc/passwd导入到数据库进行查看。也可以将数据导入到一些特…

命令执行讲解和函数

命令执行漏洞简介 命令执行漏洞产生原因 应用未对用户输入做严格得检查过滤&#xff0c;导致用户输入得参数被当成命令来执行 命令执行漏洞的危害 1.继承Web服务程序的权限去执行系统命会或读写文件 2.反弹shell&#xff0c;获得目标服务器的权限 3.进一步内网渗透 远程代…

泛微e-office系统存在敏感信息泄露 附POC软件

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 1. 泛微e-office系统简介 微信公众号搜索:南风漏洞复…

mysql 锁详解

目录 前言 一、全局锁 二、表级锁 三、行锁 前言 为什么要设计锁&#xff0c;锁设计初衷是为了解决多线程下并发问题。出现并发的时候用锁进行数据同步&#xff0c;避免因并发造成了数据错误(数据覆盖)。可见锁的重要性&#xff0c;并不是所有的数据库都有锁。比如Redis&a…