主要用到函数说明:
_DMxDrawX::InsertBlock
向控件数据库中插入一个图块,不用它插入匿名块,详细说明如下:
参数 | 说明 |
---|---|
BSTR pszDwgFileName |
图块定义的dwg 文件,支持http://开头的网络路径 |
BSTR pszBlockName |
新插入的图块名,图块为空时,就把文件中所有图块都引进到当前图纸中 |
js代码实现如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
var mxOcx = document.all.item( "MxDrawXCtrl" ); mxOcx.focus(); if (mxOcx.InsertBlock( "http://www.mxdraw.com/downland/test.dwg" , "MyBlkName" ) != 0) { var point = mxOcx.GetPoint( false ,0,0, "n 点插入点:" ); if (point == null ) { return ; } mxOcx.DrawBlockReference(point.x,point.y, "MyBlkName" ,1.0,0.0); mxOcx.ZoomAll(); alert( "插入成功" ); } else { alert( "插入失败" ); } |
c#代码实现如下,把dwg文件所有图块引入到当前图纸中.. axMxDrawX1.InsertBlock("G:\pt1000.dwg", "");只需要调一次,把pt1000.dwg中的所有图块都插进来了,不要重复多次调用:
1
2
3
|
axMxDrawX1.InsertBlock( "G:\pt1000.dwg" , "" ); axMxDrawX1.DrawBlockReference(0, 0, "地测1000_探峒a" , 1.0, 0.0); axMxDrawX1.ZoomAll(); |
CAD把一个DWG文件中的多个图框一次性全部插入到打开的DWG文件中
原文:https://www.cnblogs.com/yzy0224/p/10983778.html