[求助]关于创建面域的问题
我需要在VB的程序界面打开一张图,图上已经有大量的图形元素,然后进入AUTOCAD界面,用鼠标选取一个三角形(由三条直线构成的封闭的三角形),然后又重新进入VB界面,由VB程序将这个三角形创建一个面域,请问如何用程序来实现?最好给出实例。 你三条直线构成的三角形是否首尾相连的? 三条直线是首尾相连的,三角形是封闭的。 以下程序只考虑你的要求,没有增加一些错误的判断,自己加吧:Sub MakeRegion()
Dim Ent(2) As AcadEntity
Dim Pnt As Variant
On Error Resume Next
ThisDrawing.Utility.GetEntity Ent(0), Pnt, "选择第一条线:"
ThisDrawing.Utility.GetEntity Ent(1), Pnt, "选择第二条线:"
ThisDrawing.Utility.GetEntity Ent(2), Pnt, "选择第三条线:"
Dim Regs As Variant
Regs = ThisDrawing.ModelSpace.AddRegion(Ent)
If Err Then
Err.Clear
ThisDrawing.Utility.Prompt vbCrLf & "选定的对象不能生成面域"
Else
'Dim Reg As AcadRegion
If IsArray(Regs) Then
ThisDrawing.Utility.Prompt vbCrLf & "生成的面域数量:" & UBound(Regs) + 1
'Set Reg = Regs(0)
Ent(0).Delete: Ent(1).Delete: Ent(2).Delete
Else
ThisDrawing.Utility.Prompt vbCrLf & "选定的对象不能生成面域"
End If
End If
End Sub
对于mccad的热情帮助,我表示十二分感谢!
页:
[1]