mxdraw 前端库预览图纸 1)新建工程 这里我们就用vite来创建一个前端工程化的项目 先创建一个目录vite-mxdraw 然后进入命令行输入以下命令: - # 初始化项目
- npm init -y
- # 创建vite 项目
- npm create vite@latest
- # 安装mxdraw库
- npm install mxdraw
复制代码2)使用mxdraw 在vite创建的项目中你选择了其中一种框架,而mxdraw它是不依赖于任何框架的,所以我们只需要在canvas元素创建完成后就可以直接使用mxdraw提供的方法,在页面中直接显示转换后的图纸文件。 一般情况下我们不要只使用一个canvas元素,而是定义一个父级元素,并且这个父级的高度一定需要是固定的(不能使用百分比单位),宽度也必须有(可以是百分比单位),像下面这样: - <div style="width: 100%;height: 90vh"><canvas id="myCanvas"></canvas></div>
复制代码然后我们可以在js/ts文件(根据前端框架的不同写的位置也不一样,但是只要canvas元素创建挂载,那么就可以使用下面的代码),输入如下代码: - import { MxFun } from "mxdraw"
- MxFun.createMxObject({
- canvasId: "myCanvas", // canvas元素的id
- cadFile: "./demo/buf/$hhhh.dwg",
- useWebsocket: false,
- });
复制代码mxcad 在线编辑图纸 如果只是在网页中显示、批注图纸,mxdraw就足够了,如果需要直接修改源图纸,就必须用到mxcad这个库,mxcad依赖mxdraw库,为mxdraw库赋予了编辑图纸的能力。 1)先初始化项目和创建vite项目 - import { defineConfig } from "vite"
- export default defineConfig({
- server: {
- headers: {
- "Cross-Origin-Opener-Policy": "same-origin",
- "Cross-Origin-Embedder-Policy": "require-corp",
- }
- }
- })
复制代码2)编辑CAD图纸 安装好mxcad后,我们就可以直接使用可以在页面中显示并编辑cad图纸,输入如下代码: - import { createMxCad } from "mxcad"
- createMxCad({
- canvas: "#myCanvas",
- locateFile: (fileName)=> new URL(`/node_modules/mxcad/dist/wasm/2d/${fileName}`, import.meta.url).href,
- fileUrl: new URL("../assets/test.mxweb", import.meta.url).href
- }).then((mxcad)=> {
- // 我想换一个文件显示?
- // mxcad.openWebFile(new URL("../assets/test2.mxweb", import.meta.url).href)
- // 保存文件?必须放在用户操作的事件(如点击)中调用它,因为这个行为必须是用户操作去触发
- // mxcad.saveFile()
- })
复制代码使用示例源码合集 如果你仍然无法完成图纸展示或者编辑,建议在github上看我们写好的对应示例源码,然后直接git clone 我们在github上提供的示例代码来参考或者进行开发。
|