如何插入非等比例的图块?
C#开发|冯美娟|2019-03-13 11:11
-
回答:
主要用到函数说明:
_DMxDrawX::InsertBlock
向控件数据库中插入一个图块,不用它插入匿名块。详细说明如下:
参数 说明 BSTR pszDwgFileName
图块定义的dwg 文件,支持http://开头的网络路径
BSTR pszBlockName
新插入的图块名,图块为空时,就把文件中所有图块都引进到当前图纸中
_DMxDrawX::DrawBlockReference
绘制块引用对象。详细说明如下:
参数 说明 DOUBLE dPosX
插入点的X坐标
DOUBLE dPosY
插入点的Y坐标
BSTR pszBlkName
图块名
DOUBLE dScale
图块缩放比例
DOUBLE dAng
图块的旋转角度
C#中实现代码说明:
String sBlkPath = axMxDrawX1.GetOcxAppPath() + "\\Blk\\树.dwg"; axMxDrawX1.InsertBlock(sBlkPath, "MyBlkName"); Int64 iID = axMxDrawX1.DrawBlockReference(100, 100, "MyBlkName", 0.2, 0); MxDrawBlockReference blkRef = (MxDrawBlockReference) axMxDrawX1.ObjectIdToObject(iID); MxDrawScale3d scale = new MxDrawScale3d(); scale.sx = 1; scale.sy = 2; scale.sz = 1; blkRef.ScaleFactors = scale;