雪山飞狐_lzh 发表于 2004-5-19 10:25:00

获取旋转图块的最小包装盒(VBA)

Sub GetBound()<BR>Dim i As AcadEntity<BR>Dim obj As AcadBlockReference, pBlock As AcadBlock<BR>Dim dot(2) As Double<BR>ThisDrawing.Utility.GetEntity obj, pnt<BR>Set pBlock = ThisDrawing.Blocks(obj.Name)<BR>pRotation = obj.Rotation<BR>For Each i In pBlock<BR>i.Rotate dot, pRotation<BR>Next i<BR>obj.Rotation = 0<BR>obj.Update<BR>obj.GetBoundingBox pMin, pMax<BR>For Each i In pBlock<BR>i.Rotate dot, -pRotation<BR>Next i<BR>obj.Rotation = pRotation<BR>obj.Update<BR>ThisDrawing.SendCommand "_.RECTANG " &amp; pMin(0) &amp; "," &amp; pMin(1) &amp; vbCr &amp; pMax(0) &amp; "," &amp; pMax(1) &amp; vbCr<BR>End Sub<BR>

hnfsf 发表于 2009-8-1 14:38:00

包围盒也是旋转了的?不懂vba,有没有vlisp的?

monkeylzx 发表于 2011-2-25 10:23:30

感谢分享,继续学习大作

清风明月名字 发表于 2013-6-28 19:27:38

谢谢楼主代码分享!
页: [1]
查看完整版本: 获取旋转图块的最小包装盒(VBA)