用thisdrawing.sendcommand画的CAD图元能返回给一个变量吗?
如题.用thisdrawing.sendcommand(_circle 2,2,0 4 )画的圆能返回给一个变量吗? 用SelSet.Select acSelectionSetLast,构造新选择集SelSet,然后将选择集的第一个实体赋给实体变量即可。 通过比较模型空间的实体的数目差异来判断。Sub test()
' 返回当前模型空间的实体数目
Dim n As Long
n = ThisDrawing.ModelSpace.Count
' 调用Circle命令绘制圆
ThisDrawing.SendCommand "circle 2,2,0 4 "
' 如果执行成功,则会生成新的实体
Dim circleObj As AcadCircle
If ThisDrawing.ModelSpace.Count > n Then
Set circleObj = ThisDrawing.ModelSpace.Item(ThisDrawing.ModelSpace.Count - 1)
circleObj.Color = acRed
End If
End Sub
个人看法,efan2000兄的方法更好。 我个人认为直接使用vba的画线功能更好。不会在命令行留下痕迹。
页:
[1]