【C】初识EasyX图形编程

简介: 【C】初识EasyX图形编程

相关视频——【C/C++/EasyX】学编程,做游戏,小白快速入门图形编程,零基础入门到精通,学习就是这么快乐_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

我的小站——半生瓜のblog,同步更新。


1.基本说明

  • EasyX是针对C++的图形库,可以帮助C/C++初学者快速上手图形和游戏编程。
  • 比如 ,可以基于EasyX图形库很快用几何图形画一个房子,或者一辆移动的小车,可以编写俄罗斯方块 、贪吃蛇、黑白棋等小游戏。
  • 许多人学编程是从C语言入门的,而目前的现状是“

    • 学校值只教基础语法,一直在黑窗口练习,同学们学的很乏味。、
    • 即使有的学校教图形编程,也是使用一些难度较高的, 比如Win32,OpenlGl门槛依然很高,初学者容易收到打击。
    • 开始引出我们的EasyX。

2.原理

​ 基于Windows图形编程,将Windows下的复杂程序过程进行封装,将Windows下的编程过程隐藏,给用户提供一个简单熟悉的接口。用户对于图形库中函数的调用,最终都会由Windows的底层API实现。

3.安装

4.颜色

​ 用RGB宏合成颜色,实际上合成出来的颜色是一个十六进制的的整数。

每个颜色部分的值都是0~255

5.坐标和设备

  • 坐标默认的原点在窗口的左上角,X轴向右为正,Y 轴向下为正,度量单位是像素点。
  • 设备:简单来说,就是绘图表面。

    • 在EasyX中,设备分两种,一种是默认的绘图窗口另一种是IMAGE对象。通过SetWorkinglmage()函数可以设置当前用于绘图的设备。设置当前用于绘图的设备后,所有的绘图函数都会绘制在该设备上。(后面再去理解)

6.窗口函数

​ 窗口函数用于窗口的一些操作

initgraph(int width,int height,int flag = NULL);//用于初始化绘图窗口
//width 指定窗口的宽度
//height 指定窗口的高度
//flag 窗口的样式默认为NULL
closegraph();//关闭绘图窗口
cleardevice();//清空绘图设备

7.图形绘制函数

  • 图形绘制函数用于在窗口上绘制各种图形。
  • 绘图函数从填充样式分类可以分为无填充,有边框填充,无边框三种。
以画圆为例
    circle()无填充
    fillcircle()有边框填充
    solidcircle()无边框填充

区别:

在这里插入图片描述

  • 从形状来分,常用的可以分为八种。

在这里插入图片描述

  • 设置填充颜色setfillcolor();
  • 设置线条颜色setlinecolor();
  • 设置线条样式setlinestyle();高,宽,字体

8.文字绘制函数

  • 文字绘制函数用于在窗口上绘制文字

在这里插入图片描述

9.图像处理函数

  • 图像处理函数用于在窗口上显示图片

在这里插入图片描述

10.鼠标消息函数

  • 鼠标消息函数用于获取鼠标的信息

在这里插入图片描述

11.键盘消息函数

  • 键盘消息函数用于获取键盘按键消息。

在这里插入图片描述

12.其他函数

在这里插入图片描述

13.音乐播放

在这里插入图片描述

易错集锦

  1. 源文件问题: fata1 error c1189: #error : EasyXis only for C++。

    后缀要是cpp

  2. 参数错误,找不到对应的函数:error C2665: "outtextxy":2个重载中没有一个可以转换所有参数类型。

    是由于字符集导致的,1.在字符串前面加上大写的L,2.用TEXT(_T())把字符串包起起来。

    不需要添加任何代码,项目-属性-常规-字符集-使用多字节字符集

相关文章
|
6月前
|
C++
EasyX图形库学习(二、文字输出)
EasyX图形库学习(二、文字输出)
|
1月前
|
安全 C++
EasyX见缝插针
这篇博客介绍了如何使用C++和EasyX图形库来实现一个见缝插针的小游戏,包括绘制圆盘和针、实现旋转、发射针、判断游戏输赢以及绘制分数等功能。
32 0
EasyX见缝插针
|
1月前
EasyX之跳跳球
本文介绍了如何使用EasyX库开发一个跳跳球游戏,包括绘制小球和矩形、实现小球的起跳与下落、处理矩形的移动、解决小球二次起跳问题、判断游戏结束条件以及打印分数。
30 0
EasyX之跳跳球
|
6月前
|
关系型数据库 MySQL C++
EasyX图形库实现贪吃蛇游戏
EasyX图形库实现贪吃蛇游戏
145 0
|
C语言 C++ Windows
利用EasyX图形库实现趣味化编程note1
利用EasyX图形库实现趣味化编程note1
67 0
Easyx图形库趣味编程note3,颜色模型
Easyx图形库趣味编程note3,颜色模型
110 0
|
机器学习/深度学习 C语言 C++
【c语言】五子棋(EasyX图形库+背景音乐)
【c语言】五子棋(EasyX图形库+背景音乐)
183 0
|
C语言 C++
为什么要学习easyx图形库,他是做什么的?值得吗?
首先,easyx仅支持C语言和C++,这对于学习C语言的新生来说很友好,在熟悉C语言的同时还可以提高写代码的能力,在熟悉C语言以后,就可以尝试写一写小游戏了,比如说扫雷,三子棋,魔塔,贪吃蛇,飞机大战等等,但是当我们写出来运行的时候可以发现,游戏的逻辑写的没有问题,也的确可以玩,但是界面和人物怪兽什么的都很丑,全是符号不好看,同时控制台一闪一闪的,对玩家来说体验感极差,这也就是我们为什么要学习easyx图形库。
242 1
|
C++ 开发者 Windows
C++实现贪吃蛇(含源代码)—基于easyx图形库
C++实现贪吃蛇(含源代码)—基于easyx图形库