(网页直接编辑 DWG)在线 CAD 配置属性的使用教程
一、前言
Mxcad SDK 能够在线预览编辑 CAD 图纸,用户可根据项目需求选择不同的实现方式,如通过 Vite、CDN、webpack 分别使用 mxcad。如果不清楚 mxcad 实现在线预览编辑 CAD 图纸的方法,可参考 mxcad 开发文档:https://www.mxdraw3d.com/mxcad_docs/zh/。
成功创建 mxcad 对象后,在后续的开发过程中可能会遇到设置图纸操作习惯、监听图纸完全打开、设置图纸多选等一系列配置,mxcad 内部为了方便用户的操作实现了上述一些类配置相关的方法或属性 API,用户可自定义设置相关配置来满足自己项目的需求。本章就为大家介绍 mxcad 中与图纸操作相关的配置属性。
二、配置属性
Mxcad 在创建初始就可以直接设置配置属性,在创建 mxcad 对象的时候配置的属性将作为 CAD 项目加载的默认设置。下面以在 vue3+ts 构建的项目中创建 mxcad 对象并设置初始属性为例。
1、createMxCad()
在创建 mxcad 对象的时候,可以在 createMxCad()方法内设置配置属性。
createMxCad 方法中的初始必要属性:
A. canvas:canvas 画布实例的 id 名
B. locateFile:mxcad 的核心依赖 mxcad 库中/mxcad/dist/wasm
目录下对应分类(2d
|2d-st
)中的 wasm 文件(该文件是 c++编译生成的),其中 2d 目录下为多线程程序、2d-st 目录下为单线程程序,该参数用来指定 wasm 程序的网络路径。
C. fontspath:指定 cad 图纸中的字体文件加载路径。默认路径为dist/fonts
,你可以在该目录中添加打开图纸需要的各种字体文件。
D. fileUrl:指定打开 mxweb 图纸的网络路径。
初始运行效果演示:

其他属性
1.1、openParameter:设置打开文件的参数,可以设置打开文件是否使用缓存,或者是否使用工作线程打开文件等。
1.2、onOpenFileComplete:监听打开文件成功的回调事件,在图纸打开完成后进行的操作可在该方法内执行。
1.3、viewBackgroundColor:设置视区背景颜色,值为 rgb。
1.4、browse:是否设置为浏览模式,值为 true 或 1 时启用浏览模式,且 CAD 对象不能选中;值为 2 时启用浏览模式,CAD 对象能选中,但不能夹点编辑;值为 false 时启用编辑模式。
1.5、middlePan:设置移动视区的操作方式。设置为 0,点击鼠标左键移动视区;设置为 1,点击鼠标中键移动视区;设置为 2,点击鼠标中键和鼠标左键均可移动视区。
1.6、enableUndo:是否启用回退功能。设置为 true 则可以调用 Mx_Undo 命令回退操作;设置为 false 则禁用回退命令。默认设置为 false。
1.7、enableIntelliSelect:是否启用对象选择功能。设置为 true 则启用;设置为 false 则不启用。
1.8、multipleSelect:是否启用多选。设置为 true 则启用;设置为 false 则不启用。
更多 createMxCad 方法内部的属性设置可参考:https://www.mxdraw3d.com/mxcad_docs/zh/api/interfaces/2d.MxCadConfig.html。
2.MxFun.setIniset()
由于 mxcad 是依赖于 mxdraw 去显示的图纸,因此 mxdraw 中也提供了实现各种初始配置的方法:MxFun.setIniset(),我们可以在该方法中配置更多 CAD 项目的初始配置,其调用方法如下:
常用 iniConfig 参数
2.1、 EnableIntelliSelect:是否启用智能选择。设置为 true 则启用;设置为 false 则不启用。
2.2、EnableGripEdit:是否启动夹点编辑。设置为 true 或 1 表示启用,设置为 0 或 fase 表示禁用,设置为 2 表示选中对象后只显示夹点,但不响应响应夹点编辑。
2.3、multipleSelect: 是否启动多选,启动多选设置后用户一次选择多个实体。设置为 true 则启用;设置为 false 则不启用,其默认值是 false。
2.4、IntelliSelectType:多选方式控制。设置为 1:多选,但不支持连续多选,设置为 2:多选,并支持连续多选,默认值为 1。该设置生效的前提是要先启动多选。
2.5、autoResetRenderer:是否启用自动重置渲染器。设置为 true 则启用;设置为 false 则不启用
2.6、ForbiddenDynInput:是否禁用动态输入框。设置为 true 为禁用;设置为 false 则启用。
2.7、inputRectWidth:设置夹点和拾取框的宽度,其单位是屏幕上的像素。
2.8、gripPointColor: 设置夹点颜色,其值为十六机制颜色值,如:0xFFFFFFFF,0xNRGB 等。
2.9、EnableDrawingViewAngle:是否使用图纸中的视区角度设置,默认为 true 。
更多 MxFun.setIniset()方法内部的属性设置可参考:https://mxcad.github.io/mxdraw_api_docs/interfaces/iniConfig.html
3.McObject 对象方法 API
处理了上面介绍的两种方式外,mxcad 中的 McObject 对象里也提供了设置 CAD 项目配置参数的方法。下面以常用的几种设置方法为例:
3.1、McObject.setBrower():是否设置为浏览模式。
3.2、McObject.setViewBackgroundColor():设置视区的背景色。
3.3、McObject.setAttribute():设置 mxcad 对象的一些属性设置。
更多 McObject 方法设置可参考:https://www.mxdraw3d.com/mxcad_docs/zh/api/classes/2d.McObject.html
三、在线演示
用户可在我们提供的在线 demo 的编辑器中直接运行设置,查看实时效果。在线 demo 地址:https://demo2.mxdraw3d.com:3000/mxcad/,实时运行效果演示:
如下图:

评论