easy-x常用函数

news/2024/11/24 14:01:26/
   ## easy-x库常用函数

(1):与设备相关的函数
1.void clearcliprgn():用于清除种植区域。

2.void cleardevice():此功能用于清除绘图设备。具体地说,绘图设备将以当前背景色清空,并将当前点移动到(0,0)。

3.void closegraph();用于关闭图形窗口

4.void getaspectratio(float *pxasp,float *pyasp):用于获取当前的长宽比

5.void graphdefaults():用于将视图、当前点、绘图颜色、背景颜色、线条样式、填充样式、字体样式重置为默认。

6.HWND initgraph(int width,int height,int flag = NULL):此函数用于初始化图形窗口

7.void setaspectratio(float xasp, float yasp):本功能用于设置当前长宽比。

8.void setcliprgn(HRGN hrgn);此功能用于设置当前绘图设备的剪切区域。

9.void setorigin(int x, int y);该函数用于设置坐标原点。x
原点的x坐标(使用物理坐标)。y 原点的y坐标(使用物理坐标)。

(2):颜色模型相关函数
10.COLORREF BGR(COLORREF color):BGR宏用于交换红色和蓝色。

11.BYTE GetB(G|R)Value(COLORREF rgb):宏GetB(G|R)Value用于返回指定颜色的蓝(绿|红)色值。

12.COLORREF HSLtoRGB( float H, float S, float L):用于将HSL颜色转换为RGB颜色

13.COLORREF HSVtoRGB( float H, float S, float V):此函数用于将HSV颜色转换为RGB颜色

14.COLORREF RGB( BYTE Red,BYTE Green, BYTE Blue ):以三原色色彩体系定义一种颜色

15.COLORREF RGBtoGRAY(COLORREF rgb):用于返回与指定颜色对应的灰度颜色。

16.void RGBtoHSL(COLORREF rgb, float *H, float,*S,float *L):用于将RGB颜色转换为HSL颜色。

17.void RGBtoHSV(COLORREF rgb,float *H,float *S,float *V):用于将RGB颜色转换为HSV颜色

(3):画图相关函数
18.void arc( int left,int top, int right, int bottom, double stangle,double endangle):用来画弧线的
参数:
left
弧的外切矩形的左上纵坐标。
top
弧的外切矩形的左上纵坐标。
right
弧的外切矩形的右下x坐标。
bottom
弧的外切矩形的右下y坐标。
stangle
弧的起始角的弧度。
endangle
弧终止角的弧度。

19.void circle( int x,int y, int radius):画一个不填充的圆
参数:
x
圆心的x坐标。
y
圆心的y坐标。
radius
圆的半径。

20.void clearcircle( int x,int y, int radius):使用背景色清除圆形区域。
参数:
x
圆心的x坐标。
y
圆心的y坐标。
radius
圆的半径。

21.void clearellipse(int left, int top, int right,int bottom):使用背景色清除一个椭圆形区域
参数:
left
椭圆外切矩形的左上角x坐标。
top
椭圆外切矩形的左上角y坐标。
right
椭圆外切矩形的右下角x坐标。
bottom
椭圆外切矩形的右下角y坐标。

22.void clearpie( int left, int top, int right, int bottom,double stangle,double endangle):使用背景色清除扇区。
参数:
left
扇子所在的椭圆形的外切矩形的左上角x坐标。
top
风扇所在的椭圆形的外切矩形的左上纵坐标。
right
风扇所在的椭圆的外切矩形的右下x坐标。
bottom
风扇所在的椭圆的外切矩形的右下x坐标。
stangle
风扇的起始角度的弧度。
endangle
风扇端角的弧度。

23.void clearpolygon( const POINT *points, int num):使用背景色清除多边形区域。
参数:
points
每个点的坐标,数组元素的数量为num。
该函数自动将多边形连接到末端。
num
多边形顶点的数目。

24.void clearrectangle(int left, int top, int right, int bottom):使用背景色清除矩形区域。
参数:
left
矩形左边的x坐标。
top
矩形上端的y坐标。
right
矩形右边的x坐标。
bottom
矩形下端的y坐标。

25.void clearroundrect(int left,int top,int right,int bottom,int ellipsewidth,int ellipseheight):使用背景色清除圆角矩形区域。
参数:
left
矩形左边的x坐标。
top
矩形上端的y坐标。
right
矩形右边的x坐标。
bottom
矩形下端的y坐标
ellipsewidth
构成圆角矩形的椭圆的宽度。
ellipseheight
构成圆角矩形的椭圆的高度。

26.void ellipse( int left, int top, int right, int bottom):用于绘制不填充的椭圆。
参数:
left
椭圆外切矩形的左上角x坐标。
top
椭圆外切矩形的左上角y坐标。
right
椭圆外切矩形的右下角x坐标。
bottom
椭圆外切矩形的右下角y坐标。

27.void fillcircle(int x, int y, int radius):用于绘制带边框的填充圆。
参数:
x
中心的x坐标。
y
圆心的y坐标。
radius
圆的半径

28.void fillellipse( int left, int top, int right, int bottom):用于绘制带有边框的填充椭圆。
参数:
left
椭圆外切矩形的左上角x坐标。
top
椭圆外切矩形的左上角y坐标。
right
椭圆外切矩形的右下角x坐标s/he。
bottom
椭圆外切矩形的右下角y坐标s/he。

29.void fillpie( int left, int top, int right, int bottom, double stangle,double endangle):用于绘制带边框的填充扇区。
参数:
left
扇区所在的椭圆形的外切矩形的左上角x坐标。
top
y坐标位于扇区所在的椭圆形外切矩形的左上角。
right
扇区所在的椭圆的外切矩形的右下x坐标。
bottom
y坐标位于扇区所在的椭圆形外切矩形的右下角。
stangle
扇区的起始角度的弧度。
endangle
扇区端角的弧度。

30.void fillpolygon( const POINT *points, int num):该函数用于绘制带有边框的填充多边形。
参数:
points
每个点的坐标,数组元素的数量为num。
该函数自动将多边形连接到末端。
num
多边形顶点的数目。

31.void fillrectangle( int left, int top, int right, int bottom):用于绘制带有边框的已填充矩形。
参数:
left
矩形左边的x坐标。
top
矩形上端的y坐标。
right
矩形右边的x坐标。
bottom
矩形下端的y坐标。

32.void fillroundrect( int left, int top, int right, int bottom, int ellipsewidth, int ellipseheight):绘制一个带边框的已填充圆角矩形。
参数:
left
矩形左边的x坐标。
top
矩形上端的y坐标。
right
矩形右边的x坐标。
bottom
矩形下端的y坐标。
ellipsewidth
构成圆角矩形的椭圆的宽度。
ellipseheight
构成圆角矩形的椭圆的高度。

33.void floodfill( int x, int y, COLORREF color, int filltype = FLOODFILLBORDER):用于填充区域。
参数:
x
要填满的区域内任意点的x坐标。
y
要填满的区域内任意点的y坐标。
color
要填充的边界或区域的颜色。确切的解释取决于参数filltype的值。
filltype
要执行的填充操作的类型。这可以是以下宏或值:
宏 value 描述
FLOODFILLBORDER 0 填充动作被填充在一个被颜色参数color包围的封闭区域中。
FLOODFILLSURFACE 1 填充动作由颜色参数color指定的连续颜色表面填充。

34.int getheight():用于获取绘制区域的高度

35.int getwidth():用于获取绘图区域的宽度

36.COLORREF getpixel(int x,int y):用于获取点的颜色。
参数:
x
x坐标来获得颜色。
y
y坐标来得到颜色。

37.void line( int x1, int y1, int x2, int y2):此函数用于绘制直线。函数linerel和lineto也可以用来绘制直线。
参数:
x1
直线起始点的x坐标。
日元
直线起始点的y坐标。
x2
直线端点的x坐标。
y2
直线端点的y坐标。

38.void pie( int left, int top, int right, int bottom, double stangle, double endangle):用于绘制未填充的扇区。
参数:
left
扇子所在的椭圆形的外切矩形的左上角x坐标。
top
风扇所在的椭圆形的外切矩形的左上纵坐标。
right
风扇所在的椭圆的外切矩形的右下x坐标。
bottom
风扇所在的椭圆形的外切矩形的右下y坐标。
stangle
风扇的起始角度的弧度。
endangle
风扇端角的弧度。

39.void polybezier( const POINT *points, int num):用于绘制三条方形贝塞尔曲线
参数:
points
描述三条方形贝塞尔曲线的坐标点。坐标为:起点、控制点1、控制点2、终点(起点)、控制点1、控制点2、终点(起点)、…,控制点2,终点2,终点。
num
坐标点的个数。由于描述一条三边Bezier曲线需要4个点,且后一条Bezier曲线的起点与前一条曲线的终点相同,因此确保(num - 1) 3 s 0是很重要的。

40.void polygon( const POINT *points, int num):用于绘制不填充的多边形
参数:
points
每个点的坐标,数组元素的数量为num。
该函数自动将多边形连接到末端。
num
多边形顶点的数目。

41.void polyline( const POINT *points, int num):用于绘制多条连续的直线。
参数:
points
每个点的坐标,数组元素的数量为num。
num
多个段的顶点数。

42.void putpixel( int x, int y, COLORREF color):用于绘制点
参数:
x
点的x坐标。
y
点的y坐标。
color
点的颜色。

43.void rectangle( int left, int top, int right, int bottom):用于绘制矩形
参数:
left
矩形左边的x坐标。
top
矩形上端的y坐标。
right
矩形右边的x坐标。
bottom
矩形下端的y坐标。

44.void roundrect( int left, int top, int right, int bottom, int ellipsewidth, int ellipseheight):用于绘制不填充的圆角矩形。
参数:
left
矩形左边的x坐标。
top
矩形上端的y坐标。
right
矩形右边的x坐标。
bottom
矩形下端的y坐标。
ellipsewidth
构成圆角矩形的椭圆的宽度。
ellipseheight
构成圆角矩形的椭圆的高度

45.void solidcircle( int x, int y, int radius):用于绘制一个没有边框的填充圆。

46.void solidellipse( int left, int top, int right, int bottom):用于绘制一个填充的没有边框的椭圆。

47.void solidpie( int left, int top, int right, int bottom, double stangle, double endangle):用于绘制一个没有边框的填充扇区。

48.void solidpolygon( const POINT *points, int num):用于绘制填充的无边框多边形。

49.void solidrectangle( int left, int top, int right, int bottom):用于绘制一个填充的、没有边框的矩形。

50.void solidroundrect( int left, int top, int right, int bottom, int ellipsewidth, int ellipseheight):用于绘制没有边框的填充圆角矩形。

(4)颜色和样式设置相关函数
51.class FILLSTYLE():填充样式对象

52.COLORREF getbkcolor():获取当前设备背景颜色

53.int getbkmode():用于获得打印图案和文本输出时的背景模式

54.COLORREF getfillcolor():获取当前填充色

55.void getfillstyle( FILLSTYLE* pstyle):获取当前填充样式
参数:
pstyle
返回当前填充样式。详情请参阅setfillstyle函数

56.COLORREF getlinecolor(): 获取当前设备画线颜色。

57.void getlinestyle( LINESTYLE* pstyle):获取当前设备划线颜色

58.int getpolyfillmode():用于获取当前设备的多边形填充图案。

59.int getrop2():用于获取当前前景混合模式。

60.class LINESTYLE():画线方式对象

61.void setbkcolor(COLORREF color):用于设置当前绘图的背景颜色

62.void setbkmode(int mode):用于设置当前设备文本输出时的背景模式。

63.void setfillcolor(COLORREF color):设置填充颜色

64.void setfillstyle( FILLSTYLE* pstyle)
void setfillstyle( int style, long hatch = NULL, IMAGE* ppattern = NULL)
void setfillstyle( BYTE* ppattern8x8):用于设置当前设备填充样式

65.void setlinecolor(COLORREF color):用于设置当前行的颜色。

66.void setlinestyle( const LINESTYLE* pstyle)
void setlinestyle( int style, int thickness = 1, const DWORD *puserstyle = NULL, DWORD userstylecount = 0):用于设置当前设备画线样式。

67.void setpolyfillmode(int mode):用于设置当前设备的多边形填充模式。

(5)文本相关函数
68.int drawtext( LPCTSTR str, RECT* pRect, UINT uFormat)
int drawtext( TCHAR c, RECT* pRect, UINT uFormat):用于在指定区域内以指定格式输出字符串。
参数:
str
要输出的字符串。
pRect
指向指定矩形区域的指针。一些uFormat标志使用这个矩形区域来生成一个返回值。稍后查看详细信息。
uFormat
指定如何格式化输出文本。稍后查看详细信息。
c
要输出的字符。

69.COLORREF gettextcolor():用于获取当前文本的颜色。

70.void gettextstyle(LOGFONT *font):用于获取当前文本样式。
参数:
字体指向LOGFONT结构的指针。

71.void outtextxy( int x, int y, LPCTSTR str)
void outtextxy( int x, int y, TCHAR c):用于在指定位置输出字符串。
参数:
x
字符串输出时x轴上第一个字母的坐标值。
y
字符串输出时第一个字母y轴的坐标值。
str
指向要输出字符串的指针。
c
要输出的字符。

72.void settextcolor(COLORREF color):用于设置当前文本的颜色。

73.void settextstyle(const LOGFONT *font)
void settextstyle( int nHeight, int nWidth, LPCTSTR lpszFace):用于样式化当前字体

74.int textheight(LPCTSTR str)
int textheight(TCHAR c):用于获取字符串实际占用的像素高度。

75.int textwidth(LPCTSTR str)
int textwidth(TCHAR c):用于获取字符串实际占用的像素的宽度。

(6)图像相关函数
76.void getimage( IMAGE* pDstImg, int srcX,int srcY, int srcWidth, int srcHeight):用于从当前绘图设备获取图像。
参数:
pDstImg
保存图像的图像对象指针。
srcX
获取图像区域左上角的x坐标。
srcY
获取图像区域左上角的y坐标。
srcWidth
得到的面积的宽度。
srcHeight
得到的面积的高度。

77.DWORD* GetImageBuffer(IMAGE* pImg = NULL):用于获取绘图设备的显示缓冲区指针。
参数:
pImg
绘图设备指针。如果为空,表示默认图形窗口。

78.HDC GetImageHDC(IMAGE* pImg = NULL):用于获取绘图设备句柄(HDC)。

79.IMAGE* GetWorkingImage():用于获取当前的绘图设备。

80.class IMAGE(int width = 0, int height = 0):图像对象

81.void loadimage(
IMAGE* pDstImg, //保存图像的图像对象指针
LPCTSTR pImgFile, //图片文件名
int nWidth = 0, //图片的拉伸宽度
int nHeight = 0, //图片的拉伸高度
bool bResize = false //是否调整图像大小以适应图片
):用于从文件中读取图像

82.void putimage (
int dstX, //绘制位置的X坐标
int dstY, //绘制位置的Y坐标
IMAGE *pSrcImg, //图像对象指针绘制
DWORD dwRop = srccopy //三元光栅操作码
):用于在当前设备上绘制指定的图像。

83.void Resize(
IMAGE* pImg,
int width,
int height
):用于调整指定绘图设备的尺寸。
参数:
pImg
指定要调整大小的绘图设备。如果为空,则为默认图形窗口。
width
指定绘图设备的宽度。
height
指定绘图设备的高度。

84.void rotateimage(
IMAGE *dstimg,
IMAGE *srcimg,
double radian,
COLORREF bkcolor = BLACK,
bool autosize = false,
bool highquality = true
):用于在图像中旋转绘制的内容
参数:
dstimg
指定目标图像对象指针来保存旋转后的图像。
srcimg
指定指向原始图像对象的指针。
radian
指定旋转的弧度。
bkcolor
指定旋转后创建的空格的颜色。默认为黑色。
autosize
指定目标图像对象是否自动调整大小以完全适应旋转后的图像。默认为false。
highquality
指定是否使用高质量旋转。在追求绩效时使用低质量的轮换。默认为true。进入翻译页面

85.void saveimage(
LPCTSTR strFileName,
IMAGE* pImg = NULL
):用于将绘图内容保存到图片文件中。
参数
strFileName
指定文件名。文件扩展名表示保存的图片格式,支持bmp /gif/jpg/png/tif格式。现有文件将被覆盖。
pImg
指向IMAGE对象的指针。如果为空,表示图形窗口。

86.void SetWorkingImage(IMAGE* pImg = NULL):用于设置当前的绘图设备。
参数
pImg
绘图设备指针。如果为空,绘图设备是默认的图形窗口。

(7)鼠标相关函数
87.void FlushMouseMsgBuffer():用于清空鼠标消息缓冲区

88.MOUSEMSG GetMouseMsg():用于获取鼠标消息。如果鼠标消息队列为空,等待直到有鼠标消息。

89.bool PeekMouseMsg(MOUSEMSG *pMsg, bool bRemoveMsg):用于获取鼠标消息并立即返回。

90.bool MouseHit():用于检查鼠标消息

91.struct MOUSEMSG
{
UINT uMsg; //当前鼠标信息。
bool mkCtrl; //按下CTRL键。
bool mkShift; // SHIFT键为down。
bool mkLButton;//鼠标左键按下。
bool mkMButton;//鼠标中键是向下的。
bool mkRButton;//点击鼠标右键。
int x;//光标的x坐标。(物理坐标)
int y;//光标的y坐标。(物理坐标)
int wheel;//鼠标滚轮滚动值。
}:用于保存鼠标消息

(8):其他函数
92.void BeginBatchDraw():用于开始批量绘图模式。在执行之后,任何绘图操作将暂时不输出到图形窗口,直到调用函数flushBatchDraw或EndBatchDraw。

93.void EndBatchDraw()
void EndBatchDraw(
int left,
int top,
int right,
int bottom ):结束批量绘制模式,刷新未显示的图形
参数:
left
指定区域的左x坐标。
top
指定区域的顶部y坐标。
right
指定区域的右x坐标。
bottom
指定区域的底部y坐标

94.void FlushBatchDraw()
void FlushBatchDraw(
int left,
int top,
int right,
int bottom
):用于刷新未显示的图形
参数:
left
指定区域的左x坐标。
top
指定区域的顶部y坐标。
right
指定区域的右x坐标。
bottom
指定区域的底部y坐标

95.HWND GetHWnd():用于获取图形窗口的句柄

96.bool InputBox(
LPTSTR pString,
int nMaxCount,
LPCTSTR pPrompt = NULL,
LPCTSTR pTitle = NULL,
LPCTSTR pDefault = NULL,
int width = 0,
int height = 0,
bool bHideCancelBtn = true
):用于以对话框的形式获取用户输入。


http://www.ppmy.cn/news/766375.html

相关文章

[转帖]linux笔试题

一.填空题:1. 在Linux系统中,以 文件 方式访问设备 。2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统。3. Linux文件系统中每个文件用 i节点 来标识。4. 全部磁盘块由四个部分组成,分别为引导块 、专用…

方差概念及计算公式

一.方差的概念与计算公式 例1 两人的5次测验成绩如下: X: 50,100,100,60,50 E(X )72; Y: 73, 70, 75,72,70 E(Y )7…

投票管理平台达到投票平台投票平台平台投票

现在来说,公司、企业、学校更多的想借助短视频推广自己。 通过微信投票小程序,网友们就可以通过手机拍视频上传视频参加活动,而短视频微信投票评选活动既可以给用户发挥的空间激发参与的热情,又可以让商家和企业实现推广的目的&am…

新来的资深java不会lambda表达式,中级开发都笑拉了--lambda流这么难吗,教你怎么玩早学早吃香

因为一个人就全体 虽然没提名字但是说的意思和报身份证没区别, 我自己看着都尴尬… 标题就是事情的经过,和同事的聊天记录在最下面 前言 Lambda表达式是优化代码的工具,使得代码更简洁、易读,符合现代开发的趋势,以及推动函数式编程在Java开发中的流行…

微信小游戏文件大于4M处理方法

将res上传到服务器上,本地res删除,然后creator构建出来的build里有个game.js文件 该文件里有个属性REMOTE_SERVER_ROOT,赋值服务器的资源地址

centos 查找大文件,大于100M

centos 查找大于100M的文件 命令如下: ls -lh $(find / -type f -size 100M)

微信小程序上传文件

通过wx.chooseImage调用相册或者相机获取到本地文件路径,然后直接通过wx.uploadFile调取后端接口即可获取到这个接口返回的数据,而不是单独调用后端接口 wx.chooseImage( { count: 1, //默认9 sizeType: [compressed], //可以指定是原图还是压缩图&#…

传递大于100M的文件的方式

被控制端 1.下载TeamViewer 2.控制端的版本一定要大于被控制端的版本 3.被控制端刷新获取ID和密码给远程,即可控制 控制端 法一: 向联系人直接传输文件:通过右击传输文件而出现的Windows 上下文菜单或计算机 & 联系人列表将文件发送给联…