主要用到函数说明:

 

_DMxDrawX::DrawImageMark

 

绘图制一个图象标记对象。详细说明如下:

 

参数 说明

BSTR pszName

图层名

DOUBLE dPosX

绘制位置,是图片的中心点X

DOUBLE dPosY

绘制位置,是图片的中心点y

DOUBLE dScale

缩放比例,如果输入负数时,表示图片随视区大小缩放,负数的决对值表示图片的高度,图片宽度自动计算

DOUBLE dAng

图片旋转角度

BSTR pszFileName

图片显示文件名

BSTR pszTwinkeImageFiles

闪烁时使用的ImageFile.,设置该文件后,调用MxDraw::TwinkeEnt后将交替闪烁显示。 可以同时设置多个闪烁文件,文件间用逗号隔开,比如: 1.jgp,2.jpg,3.jpg

VARIANT_BOOL isSaveData

图片数据,是否随图保存

 

MxDraw::TwinkeEnt

 

闪烁实体。详细说明如下:

 

参数 说明

McDbObjectId id

被闪烁的实体对象id

long lCount = -1

闪烁次数,默认为-1表示不限闪烁次数

 

js中实现代码说明:

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

function  DrawGif()

{

    //新建一个COM组件对象 参数为COM组件类名

    var getPt = mxOcx.NewComObject("IMxDrawUiPrPoint");

    getPt.message = "点取图片的插入中点";

    if (getPt.go() != 1) {

        return;

    }

    var frstPt = getPt.value();

    if (frstPt == null) {

        return;

    }

    //控件程序在磁盘的文件路径

    var sImageFile1 = mxOcx.GetOcxAppPath() + "\\1.png";

    var sImageFile2 = mxOcx.GetOcxAppPath() + "\\2.png";

    var sImageFile3 = mxOcx.GetOcxAppPath() + "\\3.png";

    // 绘图制一个图象标记对象

    //参数一为绘制位置,是图片的中心点X ;参数二为绘制位置,是图片的中心点Y;参数三为缩放比例;参数四为旋转角度;

    //参数五为图片显示文件名;参数六为闪烁文件设置;参数七为图片数据是否随图保存

    var lId = mxOcx.DrawImageMark(frstPt.x, frstPt.y, -20, 0, sImageFile1,

        sImageFile1 + "," + sImageFile2 + "," + sImageFile3, true);

    //闪烁实体

    //参数一为被闪烁的实体对象id;参数二为闪烁次数,默认为-1表示不限闪烁次数,成功返回true

    mxOcx.TwinkeEnt(lId);

}

 

效果展示:

 

用户可以通过点击制作动画按钮,触发DrawGif()事件,将在js代码设置的图片制作成动画显示到控件视区中。如下图所示:

 

CAD利用闪烁制作动画

相关文章: