EasyX新手初级使用

Easyx基本说明:

EasyX是一个针对Visual C++的免费绘图库。EasyX Graphics Library作为一款广受欢迎的图形库,为Visual C++提供了强大的绘图支持,使得在C/C++环境下的图形编程变得简单高效。下面将深入探讨EasyX的特点、安装过程、学习成本、应用场景以及发布过程等多个方面:

1. EasyX的特点
   简易性:EasyX设计的初衷就是简化绘图流程,让用户能够"下载 -> 安装 -> 使用",整个过程极为便捷。这种设计理念大大降低了用户的入门门槛,使得即使是没有图形编程经验的初学者也能快速上手。

2. EasyX的学习成本
   易于理解的文档:EasyX提供了丰富的在线参考手册,这些文档详细解释了每个函数的用法,使得用户能够快速理解和使用库中的功能
   面向教学的设计:EasyX的简单性使得它成为教学的理想选择,学生可以更容易地掌握图形编程的基本概念和技术

3. EasyX的应用场景
   C/C++学习:EasyX可以帮助C/C++语言的初学者快速理解图形编程的基本概念,通过实践提高编程技能Θic-1Θ。
   游戏开发:对于想要进入游戏开发领域的开发者来说,EasyX提供了一个简单的方式来创建和测试基本的游戏玩法和图形效果。

4. EasyX的发布过程
   静态编译:EasyX采用静态编译的方式,不依赖于任何动态链接库(dll),这使得发布过程更加简洁,不会因为引入EasyX而增加发布的负担
   单文件运行:如果将Visual C++的运行时库改为静态链接模式,编译后的程序可以单文件运行,这对于发布和分发软件极为方便

综上所述,Easy以其简易性、低学习成本、广泛的应用场景和便捷的发布过程,成为了C/C++开发者在图形编程领域的强大工具。EasyX为用户提供了一个高效、便捷的解决方案,帮助用户轻松实现图形绘制和处理的需求。 

EasyX安装:

1.系统支持:

操作系统:Windows XP(sp3) 及以上操作系统。
编译环境:Visual C++ 6.0,Visual Studio 2008 至 Visual Studio 2022 (x86 & x64)。

2.安装:

https://easyx.cn/  进入官网直接下载EasyX文件

安装完成后在VS中建立新的空项目需要在文件中加入头文件

#include <easyx.h>提供了当前最新版本的接口

#include<graphics.h>在easyx.h的基础上,保留了一些旧接口

EasyX 文档 - 设备

可以查看关于easyx的相关说明和函数原型,对使用easyx学习的新手有许多益处

EasyX基本使用:

1.绘图窗口:

在easyx中多数关键词,函数名功能通过它的英文名称都能有一个大概的判断

1.默认窗口 2.IMAGE对象,通过SetWorkingmage()函数可以设置当前用于绘图的设备
 初始化绘图窗(窗口宽度,窗口高度,)单位像素

HWND  inttgraph(int width,int height,int flag=NULL);第三个参数为窗口样式(以下三种)
 #define SHOWCONSOLE  创建图形窗口时保留控制台显示
 #define NOCLOSE       //没有关闭功能
 #define NOMINIMIZE    //没有最小化功能

void  closegraph();关闭绘图窗口函数

void  cleardevice();清空绘图设备

EasyX中有俩类坐标(以窗口左上角原始坐标原点,y轴向下):

1.物理坐标:坐标原点和方向不能修改,度量单位为像素

2.逻辑坐标:坐标原点和方向可以修改,度量单位为点

移动逻辑坐标:void setorigin(int x,int y);

翻转逻辑坐标:void setaspectratioc(float xasp,float yasp)

2.图形函数:

(1)绘图函数从填充样式可分为三类:

 以画圆为例:circle()无填充;fillcircle()有边框填充;solidcircle()无边框填充;

(2)绘图函数使用:


设置填充颜色 setfillcolor();
设置线条颜色 setlinecolor();
设置线条样式 setlinestyle(线型,线条宽度,样式,);

一个简单的绘图项目的基本要素就如下图所示:
 

#include <stdio.h>
#include <math.h>
#include <graphics.h>
#define  flag SHOWCONSOLE
#define PI 3.1415926
int main()
{
	//1.默认窗口 2.IMAGE对象,通过SetWorkingmage()函数可以设置当前用于绘图的设备
	//初始化绘图窗(窗口宽度,窗口高度,)单位像素
	//#define SHOWCONSOLE  创建图形窗口时保留控制台显示
	//#define NOCLOSE       没有关闭功能
	//#define NOMINIMIZE    没有最小化功能
	initgraph(800, 600);
	//移动逻辑坐标
	setorigin(400, 300);
	//修改y轴正方向
	setaspectratio(1, -1);
	//设置背景颜色
	 setbkcolor(BLUE);
	 cleardevice();

    
    //书写绘图函数


	//暂时阻塞程序,等待用户按键再关闭
	getchar();
	//关闭绘图窗体函数
	void closegraph();
	//清空绘图设备
	void cleardevice();
	return 0;
}

​​这是我使用蓝色背景随便绘制了一些简单的图形,希望可以引起还没有使用过EasyX同学的好奇心,可以积极去探索这个绘图工具

文字绘制函数用于窗口上绘制
    void outtextxy(int x, int y, LPCTSTR str);//在指定位置输出字符串

    void settextcolor(COLORREF color);//设置当前文字颜色
    settextcolor(RGB(, , ,));

    void setbkmode(TRANSPARENT); //设置背景模式 transparent 透明  OPAQUE 不透明  
                                //bkmode_LAST 不透明(将文本的背景模式设置为最后一个可用的模式)

    void settextstyle(int nHeight, int nWidth, LPCTSTR lpszFace);//设置字样样式
                    //(指定高度,字符的平均宽度如果为零则比列自适应,字体名称)
    settextstyle(50,0,'楷体');

    //用于文本的垂直和水平居中显示
    void textheight(LPCTSTR str);//获取字符串实际占用的像素高度
    void textwidth(LPCTSTR str);//获取字符串实际占用的像素宽度

结语:

在EasyX中还有许许多多的绘图函数和一些我上文未提及的使用和操作方法,也希望同学们可以去抱着学习的心态,充满好奇心的去积极探索未知的知识世界,让自己充实起来,去掌握知识,学会运用知识。

如果喜欢,请点个赞吧!


  • 25
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值