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.hqwc.cn/news/480147.html

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

相关文章

计网day4

五 网络层 5.1 网络层功能概述 5.2 路由算法 5.3 IP数据报格式 无分类编址CIDR&#xff1a; ARP协议&#xff1a; DHCP协议&#xff1a; ICMP协议&#xff1a; 5.4 IPv6 5.5 RIP协议及距离向量算法 OSPF协议及链路状态算法&#xff1a; BGP协议&#xf…

C语言二级易忘易错易混知识点(自用)

1.数组名不能自加。 因为数组名实际上是一个指针&#xff0c;指向数组的第一个元素的地址。数组名在编译器中被视为常量&#xff0c;它的值是固定的&#xff0c;不能改变。 要访问数组的不同元素&#xff0c;应该使用数组名加上偏移量的方式来访问。 2.共用体只有最后一次赋值…

剪辑视频调色软件有哪些 剪辑视频软件哪个最好 剪辑视频怎么学 剪辑视频的方法和步骤 会声会影2024 会声会影视频制作教程

看了很多调色教程&#xff0c;背了一堆调色参数&#xff0c;可最终还是调不出理想的效果。别再怀疑自己了&#xff0c;不是你的剪辑技术不行&#xff0c;而是剪辑软件没选对。只要掌握了最基本的调色原理&#xff0c;一款适合自己的视频剪辑软件是很容易出片的。 有关剪辑视频…

微博数据可视化分析:利用Python构建信息图表展示话题热度

1. 引言 随着社交媒体的迅速发展&#xff0c;微博已成为人们交流观点、表达情感的重要平台之一。微博评论数据蕴含着丰富的信息&#xff0c;通过对这些数据进行分析和可视化&#xff0c;我们可以深入了解用户对特定话题的关注程度和情感倾向。本文将介绍如何利用Python进行微博…

STM32F103C8T6驱动旋转编码器模块

下图是这次使用的旋转编码器模块 STM32F103C8T6驱动旋转编码器模块 产品说明使用测试硬件连接代码如下main.crotary_encoder.h.crotary_encoder.h.h 脉冲数和正反转演示图工程文件 产品说明 旋转编码器可通过旋转&#xff0c;可以计数正方向和反方向 转动过程中输出脉冲的次…

6-Rhodamine 6G NH2,氨基罗丹明6G,具有高荧光性质的罗丹明家族染料之一

6-Rhodamine 6G amine&#xff0c;6-Rhodamine 6G NH2&#xff0c;氨基罗丹明6G&#xff0c;具有高荧光性质的罗丹明家族染料之一 文章关键词&#xff1a;6-Rhodamine 6G amine&#xff0c;6-Rhodamine 6G NH2&#xff0c;氨基罗丹明6G 一、基本信息 产品简介&#xff1a;6-…

代码随想录算法训练营DAY20 | 二叉树(7) (续)

一、LeetCode 236 二叉树的最近公共祖先 题目链接&#xff1a;236.二叉树的最近公共祖先https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-tree/description/ 思路&#xff1a;利用后序遍历是天然回溯过程、方便实现自底向上查找的原理&#xff0c;递归寻找公…

C++11重要特性总结

C11特性 1.统一列表初始化{}使用原理 2. 声明关键字 auto关键字 decltypenullptr 3. 范围for5. stl增加的容器6. 右值引用左值和右值的区分左值和右值引用场景移动构造移动赋值 右值引用move()完美转发forward()模板中的万能引用forward作用 7. 新的类成员函数移动构造移动赋值…

数据结构中线性表简述

线性表是数据结构中最简单、最常用的一种结构&#xff0c;它是由一组具有相同数据类型的元素组成的数据集合。线性表中的元素之间存在顺序关系&#xff0c;每个元素都有一个前驱元素和一个后继元素&#xff0c;除了第一个元素没有前驱元素&#xff0c;最后一个元素没有后继元素…

ThreadLocal(2):运用场景

通过上一章介绍&#xff0c;我们已经基本了解ThreadLocal的特点。但是它具体是运用在什么场景中呢&#xff1f; 接下来让我们看一个案例&#xff1a; 事务操作。 1 转账案例 1.1 场景构建 ​ 这里我们先构建一个简单的转账场景&#xff1a; 有一个数据表account&#xff0c;…

Vue | (二)Vue组件化编程 | 尚硅谷Vue2.0+Vue3.0全套教程

文章目录 &#x1f4da;模块与组件、模块化与组件化&#x1f4da;非单文件组件&#x1f407;基本使用&#x1f407;关于组件的几个注意点&#x1f407;组件的嵌套 &#x1f4da;单文件组件&#x1f407;一个.vue 文件的组成&#x1f407;实例 学习链接&#xff1a;尚硅谷Vue2.0…

【洛谷题解】B2034 计算 2 的幂

题目链接&#xff1a;计算 2 的幂 - 洛谷 题目难度&#xff1a;入门 涉及知识点&#xff1a;pow函数返回值 题意&#xff1a; 分析&#xff1a;用pow计算再强制转换即可 AC代码&#xff1a; #include<bits/stdc.h> using namespace std; int main(){int a;ios::syn…