首页 > 编程语言 >梦想云图Node.JS服务 (网页CAD,在线CAD )

梦想云图Node.JS服务 (网页CAD,在线CAD )

时间:2023-01-04 10:25:34浏览次数:63  
标签:Node Bin res cmd JS MxDrawServer dwg file CAD

说明

后台提供梦想Node.JS服务,方便调用控件后台功能,Windows服务程序所在目录:Bin\MxDrawServer\Windows,Linux服务程序所在目录:Bin\Linux\MxDrawServer

ws.png

 

ws2.png

    启动服务

Windows:进入Bin\MxDrawServer\Windows目录,运行start.bat启动服务,如下图:

图片2.png

Linux: 进入Bin\Linux\MxDrawServer,

执行如下命令,增加文件的执行权限

su root
chmod -R 777 *

如下:

linuserver.png

运行: ./node app.js 启动服务

服务启动后,默认会在1337端口监听,目录下有个ini.js文件,编辑该文件,配置服务参数,如下图:

图片4.png

    服务使用

A.上传文件,DWG文件格式转换

服务接口说明:

直接调用POST对服务器上的文件进行转换:

服务接口说明:

*  POST users { cmd: "convert", file: "O:/1.dwg" }

*  file:  需要转的cad文件路径

如下代码:

 $.ajax({
            url: 'http://localhost:1337/users',
            data: { cmd: "convert", file: "O:/1.dwg" },
            method: 'post'
        }).success(function (res) {
            console.log(res);
        })

  

前端上传文件转换如下: 

POST convert file;file是<input id="input" type="file"> 选择的文件.

该接口后台源码在Bin\MxDrawNode\MxDrawNode\src\mxconvert\MxConvert.ts 中的CadToMx

参考例子:Bin\MxDrawServer\Test\sample.html

代码如下:

图片5.png

默认文件转换后存放位置如下图:

图片6.png

B. 保存批注到DWG文件

服务接口说明:

*  POST savecomment {filename:保存到的DWG文件;savefile :保存后的dwg, userConvertPath:false}

*  userConvertPath: 默认值是false,把当前图上的批注内容保存到指定的dwg文件中

*  filename: 是个相对路径,默认是相对于后台程序所在目录Bin\Release(windows),Bin\Linux\Bin(linux)

*  如果userConvertPath为接true,相对于Bin\Release\ini.json [linux:Bin\Linux\Bin\ini.json] 中的nodeConvert.path设置值 

*  savefile: 也是个相对路径,同filename。该接口后台源码在Bin\MxDrawNode\MxDrawNode\src\mxconvert\SaveCommentToDwg.ts 中的SaveCommentToDWG.do 

参考例子:SRC\sample\Browse\VueBrowse,代码如下:

图片7.png

demo运行后,点击“保存到DWG文件”,查看接口调用效果:

图片8.png

C. 得到到DWG文件中信息 

参考例子: Bin\MxDrawServer\Test\sample.html 

服务接口说明:

POST users {cmd:"getcaddata",cadfile:"1.dwg",outfile:"1.dwg.json"} 

 代码如下:

  function TestPost(){
        $.ajax({
            url:'http://localhost:1337/users',
            data:{cmd:"getcaddata",cadfile:"1.dwg",outfile:"1.dwg.json"},
            method:'post'
        }).success(function (res){
            console.log(res);
		})
	}

 

getcaddata的实现,参见“梦想控件2-后台读写CAD文件.doc”执行结果如下:  

图片10.png

 

D.  DWG文件转成PDF

参考例子: Bin\MxDrawServer\Test\sample.html 

服务接口说明:

POST tools { cmd: "cadtopdf", param: "file=O:/1.dwg" },

 代码如下:

    $.ajax({
            url: 'http://localhost:1337/users/tools',
            data: { cmd: "cadtopdf", param: "file=O:/1.dwg" },
            method: 'post'
        }).success(function (res) {
            console.log(res);
        })

  



E.  DWG文件转成JPG

参考例子: Bin\MxDrawServer\Test\sample.html 

服务接口说明:

POST tools { cmd: "cadtopdf", param: "file=O:/1.dwg" },

 代码如下:

   $.ajax({
            url: 'http://localhost:1337/users/tools',
            data: { cmd: "cadtojpg", param: "file=O:/1.dwg" },
            method: 'post'
        }).success(function (res) {
            console.log(res);
        })

  


 F.  对CAD图纸剪切,剪切输出pdf,dwg

参考例子: Bin\MxDrawServer\Test\sample.html

服务接口说明:

POST tools { cmd: "cutcad", param: "file=O:/hhhh.dwg out=O:/1.pdf lbx=60009.152793 lby=42457.503649 rtx=120145.567345 rty=85507.693766"},

out传的值扩展名是pdf输出pdf文件,是dwg时输出dwg

代码如下:

$.ajax({
            url: 'http://localhost:1337/users/tools',
            data: { cmd: "cutcad", param: "file=O:/hhhh.dwg out=O:/1.pdf lbx=60009.152793 lby=42457.503649 rtx=120145.567345 rty=85507.693766"},
            method: 'post'
        }).success(function (res) {
            console.log(res);
        })

  

 G. 根据图框,折分pdf

参考例子: Bin\MxDrawServer\Test\sample.html

服务接口说明:

POST tools { cmd: "cadtopdf", file: "tk.dwg"},

调用代码如下:

 $.ajax({
            url: 'http://localhost:1337/users',
            data: { cmd: "cadtopdf", file: "O:/tk.dwg"},
            method: 'post'
        }).success(function (res) {
            console.log(res);
        })

该功能的源码在:Bin\MxDrawNode\MxDrawNode\src\mxconvert\CADToPDF.ts

 

标签:Node,Bin,res,cmd,JS,MxDrawServer,dwg,file,CAD
From: https://www.cnblogs.com/yzy0224/p/17024086.html

相关文章

  • ExtJS-所有组件的简写(Xtype值)
    ExtJS教程汇总:https://www.cnblogs.com/cqpanda/p/16328016.html转载请注明出处:https://www.cnblogs.com/cqpanda/p/16587500.html更新记录2023年1月3日从笔记迁移到......
  • mysql5.7对json字段查询
    {"data":{"shipper":{"address":"No.236QianwangangRoad,WestCoastNewArea","province":"SHANDONG","cit......
  • CAD标注样式设置怎么保存?
    CAD设计过程中,标注的应用十分广泛,设计师为了保证图面的清晰明了,通常会对CAD标注样式进行设置。如果下次想要直接调用当前标注样式,你知道CAD标注样式设置怎么保存?本文就和小......
  • CAD中如何设置自动替换字体?
    CAD字体丢失的问题十分常见,每次都要手动替换非常麻烦,那么,是否可以设置一种默认的替换CAD字体呢?回答是肯定的!本文小编就来给大家分享一下浩辰CAD软件中设置自动替换CAD字体......
  • 拖动图纸至CAD中无法打开怎么办?
    有些设计师小伙伴喜欢通过拖动方式打开CAD图纸,可是今天拖动图纸至CAD中竟然打不开了,这是什么情况呢?本文小编就来给大家分享一下无法拖动打开CAD图纸的原因以及解决办法吧!......
  • CAD打印出来线条很淡怎么办?
    有些设计师小伙伴在打印时发现CAD打印出来线条很淡,看不清楚,这是什么原因?又该如何解决这个问题呢?本文小编就以浩辰CAD软件为例来给大家分享一下CAD打印出来线条很淡的原因以......
  • CAD图块如何批量重命名?
    当用CAD软件打开从其他软件输出的图纸时,会发现图纸中有大量的同名但定义不同的CAD图块,如果一个个手动重命名的话十分麻烦。那么,该如何批量选择和重命名这些CAD图块?下面就和......
  • CAD线型比例怎么调?CAD线型比例调整步骤
    在CAD绘图过程中,当图纸中某一线段显示不合理时便需要调整CAD线型比例。那么,你知道CAD线型比例怎么调吗?本文就和小编一起来了解一下浩辰CAD软件中调整CAD线型比例的具体操作......
  • JS手写
    applyfunctionmyApply(obj,args){/*1.this指向调用者2.使用隐式绑定obj.fn=this3.obj.fn()4.调用完以后删除fn*///确保obj......
  • js手写缓存累积
    //实现累乘缓存//缓存输出1,2,3下次2,3,1也能直接获取结果functionmultiplicationCatch(){letmap={}returnfunction(...params){//排序之后,内......