EasyX 图形库学习笔记
课程链接:EasyX 快速入门
文章目录
- EasyX 坐标和设备
- EasyX 图形编程
- 窗口函数
- 图形绘制函数
- 文字绘制函数
EasyX 是针对 C++ 的图形库,源文件只能是 .cpp 文件。
EasyX 坐标和设备
- 坐标默认远点在左上角,X 轴向右为证,Y 轴向下为正,度量单位是像素点
- 设备:绘图表面
- 默认的绘图窗口
- IMAGE 对象
EasyX 图形编程
窗口函数
initgraph(int width, int height, int flag = NULL); // flag 是窗口样式,默认为 NULL
closegraph(); // 关闭绘图窗口
cleardevice(); // 清空绘图设备
图形绘制函数
绘图函数样式可分为无填充、有边框填充、无边框三种。
以画圆为例:
- 无填充:
circle(int x, int y, int radius);
- 有边框填充:
fillcircle(int x, int y, int radius);
- 无边框填充:
solidcircle(int x, int y, int radius);
画圆 circle()
,画椭圆 ellipse()
,画扇形 pie()
,画多边形 polygon()
,画矩形 rectangle()
,画圆角矩形 roundrect()
,画线 line()
,画点 putpixel()
。
- 设置填充颜色
void setfillcolor(COLORREF color);
- 设置边框颜色
void setlinecolor(COLORREF color);
- 设置线条样式
void setlinestyle(int style, int thickness = 1, const DWORD *puserstyle = NULL, DWORD userstylecount = 0);
- 设置背景颜色
void setbkcolor(COLORREF color);
- 清屏
void cleardevice();
文字绘制函数
- 在指定位置输出字符串:
void outtextxy(int x, int y, LPCTSTR str);
- 由于字符集错误导致找不到对应函数的解决方式
- 在字符串前面加上大写的 L
- 将字符串放入 TEXT(),_T()
- 进 项目->属性->配置属性->常规->字符集 改为多字节字符集
- 由于字符集错误导致找不到对应函数的解决方式
- 设置当前文字颜色:
void settextcolor(COLORREF color);
- 设置字体样式:
settextstyle(int nHeight, int nWidth, LPCTSTR IpszFace);
- nHeight 指定高度
- nWidth 字符的平均宽度。如果为 0,则比例自适应
- IpszFace 字体名称
- 获取字符串实际占用的像素高度:
textheight(LPCTSTR str);
- 获取字符串实际占用的像素宽度:
textwidth(LPCTSTR str);
- 设置背景混合模式:
void setbkmode(int mode);
,setbkmode(TRANSPARENT);
背景透明。