- 积分
- 2058
- 明经币
- 个
- 注册时间
- 2007-7-8
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
楼主 |
发表于 2014-2-20 14:41:25
|
显示全部楼层
控件2014.02.18最新更新
下载地址:
http://www.mxdraw.com/index.php?m=content&c=index&a=show&catid=41&id=24
1.完善对2013 DWG 文件格式支持
2.增加64位版本
3.升级到VC2010开发,控件不再需要安装VC运行库,就能使用
4. 增加使用COM接口,写自定义实体的功能
参数 说明
BSTR pszGuid 用来标识自定义实体的id
BSTR pszBlkRecName 把自定义实体的加到块表记录的名称,如果为空,就加入到当前空间。- 例如: JS代码
- var ent = mxOcx.DrawCustomEntity("TestMxCustomEntity", "");
- ent.SetPoint("spt", frstPt);
- ent.SetPoint("ept", secondPt);
复制代码 5.增加使用COM接口,写动态拖放功能
动态拖放时的绘制事件
void DynWorldDraw(DOUBLE dX, DOUBLE dY, IDispatch* pWorldDraw, IDispatch* pData, LONG* pRet);
6.增加水印功能
例如:设置文件名d:mxcad.jpg,透明度为70,居中显示,x方向距离为5,y方向距离为5,如下
ocx.Watermark = "d:mxcad.jpg,70,5,5,1"
7.增加对组的支持,如创建组,删除组,得到组等函数
8.增加实体超连接功能,点击实体,可以跳到一指定的网页
9.增加右键弹出菜单功能
10.增加绘制动画功能
11.完善打印接口,新增IMxDrawPrint组件,可以实现,调用打印窗口打印,直接打印,批量打印,多个控件内容组合打印,与网页内容一同打印,指定范围打印,当前显示内容打印等功能
12.完善读写扩展数的COM接口,读写扩展数据变成非常方便。
如:- function WriteXData() {
- var selEnt = mxOcx.NewComObject("IMxDrawUiPrEntity");
- selEnt.message = "选择要写扩展数据的对象";
- if (selEnt.go() != 1)
- return;
- var ent = selEnt.Entity();
- if (ent == null)
- return;
- if (ent.SetxDataString("ExDataName", 0, "ExDataValue")) {
- alert("写扩展数据成功");
- }
- else {
- alert("写扩展数据失败");
- }
- }
- function ReadXData() {
- var selEnt = mxOcx.NewComObject("IMxDrawUiPrEntity");
- selEnt.message = "选择要读取扩展数据的对象";
- if (selEnt.go() != 1)
- return;
- var ent = selEnt.Entity();
- if (ent == null)
- return;
- var val = ent.GetxDataString2("ExDataName", 0);
- if (mxOcx.IsOk()) {
- alert(val);
- }
- else {
- alert("没有扩展数!");
- }
- }
复制代码 13.增加一堆的与用户交互的COM接口组件,如:- IMxDrawUiPrPoint,IMxDrawUiPrAngle,IMxDrawUiPrDist,IMxDrawUiPrDouble,IMxDrawUiPrEntity,IMxDrawUiPrInt,IMxDrawUiPrKeyWord,IMxDrawUiPrString
- 例如: 与用户交互取点:
- var getPt = mxOcx.NewComObject("IMxDrawUiPrPoint");
- getPt.message = "点取打印范围第一点";
- if (getPt.go() != 1) {
- return;
- }
- var frstPt = getPt.value();
- if (frstPt == null)
- return;
复制代码 14.增加带参数执行命令函数,和把命令当着函数调用的功能- // -------------------------------------------------------------------------
- // Summary:
- // 执行一个命令,可以传参数.
- // Parameters:
- // pszExecute - 命令名
- // pParam - 命令参数,IMxDrawResbuf对象
- // -------------------------------------------------------------------------
- [id(187), helpstring("method SendStringToExecuteEx")] VARIANT_BOOL SendStringToExecuteEx(BSTR sCmdName, IDispatch* pParam);
- // -------------------------------------------------------------------------
- // Summary:
- // 把命令当着函数执行,可以传参数.
- // Parameters:
- // pszExecute - 命令名
- // pParam - 命令参数,IMxDrawResbuf对象
- // -------------------------------------------------------------------------
- [id(188), helpstring("method SendStringToExecuteFun")] VARIANT_BOOL SendStringToExecuteFun(BSTR sCmdName, IDispatch* pParam);
- 15.增加动态绘制失量圆,失量线功能,视区移动后会自动消失
-
- // -------------------------------------------------------------------------
- // Summary:
- // 绘制失量圆
- // Parameters:
- // dCenX - 失量圆中心点X,文档坐标
- // dCenY - 失量圆中心点Y,文档坐标
- // dR - 失量圆半径,,文档坐标
- // lColor - 颜色
- // Remarks:
- // 例如: JS
- //
- // mxOcx.PutEntityInView(ent.ObjectID, 300);
- //
- //
- // var dLen = mxOcx.ViewLongToDocCoord(80);
- //
- // // 绘制一个标记圆.
- // mxOcx.DrawVectorCircle(ent.Position.x,
- // ent.Position.y,
- // dLen, 65280);
- //
- // -------------------------------------------------------------------------
- [id(235), helpstring("method DrawVectorCircle")] VARIANT_BOOL DrawVectorCircle(DOUBLE dCenX, DOUBLE dCenY, DOUBLE dR,LONG lColor);
- // -------------------------------------------------------------------------
- // Summary:
- // 绘制失量线
- // Parameters:
- // dX1 - 开始点X值
- // dY1 - 开始点Y值
- // dX2 - 结束点X值
- // dY2 - 结束点Y值
- // lColor - 颜色
- // -------------------------------------------------------------------------
- [id(236), helpstring("method DrawVectorLine")] VARIANT_BOOL DrawVectorLine(DOUBLE dX1, DOUBLE dY1, DOUBLE dX2, DOUBLE dY2,LONG lColor);
复制代码 16.增加控件浏览模式切换功能
例如: js代码- var isBrowner = false;
- function BrownerMode() {
- isBrowner = !isBrowner;
- mxOcx.BrowseMode = isBrowner;
- mxOcx.ShowMenuBar = !isBrowner;
- mxOcx.ShowPropertyWindow = !isBrowner;
复制代码 17.把常用的自定义事件导出,如:- void MxKeyDown(LONG lVk, LONG* pRet);
- void MxKeyUp(LONG lVk, LONG* pRet)
- void ObjectGripEdit(LONGLONG lId, LONG iGridIndex)
- void OpenFileComplete(void)
- void InitComplete(void)
- void SysVarChanged(BSTR sVarName)
- void HyperlinkClick(IDispatch* pEntity, DOUBLE dX, DOUBLE dY, LONG* pRet)
复制代码 18.把常用的自定义函数导出,如:
- VARIANT_BOOL PrintHtml(VARIANT_BOOL isShowPrintDialog, VARIANT_BOOL isPrintLineWidth);
- void ClearUndoData(void)
- DrawEntityToJpg(LONGLONG lId, BSTR sJpgFilePath, LONG iWidth, LONG iHeight, LONG lBkColor)
- BSTR GetMTextContent(LONGLONG lId);
- VARIANT_BOOL ExprotPdf(BSTR sPdfFileName, DOUBLE dPaperH, DOUBLE dPaperW, BSTR pszTitle, VARIANT_BOOL isExportLayout);
- VARIANT_BOOL SendStringToExecuteEx(BSTR sCmdName, IDispatch* pParam);
- VARIANT_BOOL SendStringToExecuteFun(BSTR sCmdName, IDispatch* pParam);
- IDispatch* GetEntitysLastCmd(void);
- LONGLONG DrawHatchFromPoint(DOUBLE dX, DOUBLE dY, DOUBLE dPatternScale);
- VARIANT_BOOL IsRuningCommand(BSTR* sCmdName);
- IDispatch* ScreenToDocCoord(DOUBLE dX, DOUBLE dY);
- IDispatch* DocToScreenCoord(DOUBLE dX, DOUBLE dY);
- VARIANT_BOOL IsIniting(void);
- VARIANT_BOOL IsModifyed(void);
- VARIANT_BOOL SetIsModifyed(VARIANT_BOOL isModifyed);
- VARIANT_BOOL IsModelSpace(void);
- VARIANT_BOOL StopAllCommand(void);
- VARIANT_BOOL Regen(void);
- BSTR GetCurrentLayout(void);
- LONGLONG DrawImageMark(DOUBLE dPosX, DOUBLE dPosY, DOUBLE dScale, DOUBLE dAng, BSTR pszFileName, BSTR pszTwinkeImageFiles,VARIANT_BOOL isSaveData);
- //….
复制代码 19.完善控件COM接口,在网页更加方便调用控件功能 ,增加了一堆的函数
20.修改控件在网页调用的一堆细节问题 |
|