EasyX指导手册(8)

2019-08-17 13:14

{

//绘图环境初始化 initgraph(640,480); //定义图像 IMAGEimg1,img2;

//从文件加载图像

loadimage(&img1,_T(\//旋转图像30度(PI/6)

rotateimage(&img2,&img1,PI/6);

//显示旋转后的图像 putimage(0,0,&img2); //按任意键退出 getch(); closegraph(); }

2.5.10saveimage

这个函数用于保存绘图内容至图片文件。

voidsaveimage(LPCTSTRstrFileName,IMAGE*pImg=NULL); 参数:

strFileName指定文件名。pImg指向的图片将保存到该文件中,图片以BMP格式保存,已存在的文件将被覆盖。

pImg指向IMAGE对象的指针。如果为NULL,表示绘图窗口。 示例:

以下示例保存绘图窗口的内容为\: #include #include voidmain() {

//绘图环境初始化 initgraph(640,480); //绘制图像

outtextxy(100,100,\

//保存绘制的图像

saveimage(\//按任意键退出

getch(); closegraph(); }

2.5.11SetWorkingImage

这个函数用于设定当前的绘图设备。 voidSetWorkingImage(IMAGE*pImg=NULL); 参数:

pImg绘图设备指针。如果为NULL,表示绘图设备为默认绘图窗口。 说明:

如果需要对某个IMAGE做绘图操作,可以通过该函数将其设置为当前的绘图设备,之后所有的绘图语句都会绘制在该IMAGE上面。将参数置为NULL可恢复对默认绘图窗口的绘图操作。

示例:

#include #include voidmain() {

//初始化绘图窗口 initgraph(640,480); //创建200x200的img对象 IMAGEimg(200,200);

//设置绘图目标为img对象 SetWorkingImage(&img);

//以下绘图操作都会绘制在img对象上面 line(0,100,200,100); line(100,0,100,200); circle(100,100,50); //设置绘图目标为绘图窗口 SetWorkingImage();

//将img对象显示在绘图窗口中 putimage(220,140,&img); //按任意键退出 getch(); closegraph(); }

2.5.12三元光栅操作码

这篇补充文档列出了putimage函数支持的所有三元光栅操作码。

三元光栅操作码定义了源图像与屏幕图像的位合并形式,这个合并形式是以下三个操作数对应像素的布尔运算:

操作数

D P S 操作

含义 屏幕图像 当前填充颜色

源图像

布尔运算符包括以下几种:

含义

位的AND运算(双目

a

运算)

位的NOT运算(单目n

运算) o 算)

位的OR运算(双目运位的XOR运算(双目

x

运算)

所有的布尔操作都采用逆波兰表示法,例如,“当前填充颜色or源图像”可表示为:PSo。(当然SPo也是等价的,这里只列举出了其中一种等价格式)

三元光栅操作码是__int32类型,其高位字是布尔操作索引,低位字是操作码。布尔操作索引的16个位中,高8位用0填充,低8位是当前填充颜色、源图像和屏幕的布尔操作结果。例如,PSo和DPSoo的操作索引如下:

P S D

So

P

DPSoo

0 1 1 1 1 1 1 1 0

0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 操作索引:

0

0FCh 0FEh

上例中,PSo的操作索引是00FC(从下往上读),DPSoo的是00FE。这些值定义了相应的三元光栅操作码在“三元光栅操作码”表格中的位置,PSo在252(00FCh)行,DPSoo在254(00FEh)行。常用的三元光栅操作码已经定义了常量名,程序中可以直接使用。

三元光栅操作码 布尔功能(16进制)

00 光栅操作(16进制)

00000042 布尔功能的逆波兰表示法

0 常量名 BLACKNE01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A

00010289 00020C89 000300AA 00040C88 000500A9 00060865 000702C5 00080F08 00090245 000A0329 000B0B2A 000C0324 000D0B25 000E08A5 000F0001 00100C85 001100A6 00120868 001302C8 00140869 001502C9 00165CCA 00171D54 00180D59 00191CC8 001A06C5

DPSoon DPSona PSon SDPona DPon PDSxnon PDSaon SDPnaa PDSxon DPna PSDnaon SPna PDSnaon PDSonon Pn PDSona DSon SDPxnon SDPaon DPSxnon DPSaon PSDPSanaxx SSPxDSxaxn SPxPDxa SDPSanaxn PDSPaox

SS

NOTSRCERASE

1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C

001B0768 001C06CA 001D0766 001E01A5 001F0385 00200F09 00210248 00220326 00230B24 00240D55 00251CC5 002606C8 00271868 00280369 002916CA 002A0CC9 002B1D58 002C0784 002D060A 002E064A 002F0E2A 0030032A 00310B28 00320688 00330008 003406C4 00351864 003601A8 00370388 0038078A 00390604 003A0644 003B0E24 003C004A

SDPSxaxn PSDPaox DSPDxaxn PDSox PDSoan DPSnaa SDPxon DSna SPDnaon SPxDSxa PDSPanaxn SDPSaox SDPSxnox DPSxa PSDPSaoxxn DPSana SSPxPDxaxn SPDSoax PSDnox PSDPxox PSDnoan PSna SDPnaon SDPSoox Sn SPDSaox SPDSxnox SDPox SDPoan PSDPoax SPDnox SPDSxox SPDnoan PSx

NOTSRCCOPY


EasyX指导手册(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:六(上)《比的认识》集体评课

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: