 - Dim Czxx As New Dictionary
- Private Sub AcadDocument_ObjectModified(ByVal Object As Object)
- Dim Str As String
- Dim ptC As Variant
- Dim ptC1(2) As Double
- Dim ptC2(2) As Double
- Dim Obj As Object
- Dim Jubc As String
- Dim Jubl1 As String
- Dim Jubl2 As String
- Str = Object.ObjectName
- If StrComp(Str, "AcDbCircle", vbTextCompare) = 0 Then
- Jubc = Object.Handle
- If Czxx.Exists(Jubc) Then
- Dim Val As Variant
- Str = Czxx.Item(Jubc)
- Val = Split(Str, "|")
- Set Obj = ThisDrawing.HandleToObject(Val(0))
- Obj.Delete
- Set Obj = ThisDrawing.HandleToObject(Val(1))
- Obj.Delete
- Czxx.Remove (Jubc)
- If Object.radius = 5 Then
- ptC = Object.Center '»ñè¡Ô2DÄ×ø±ê
- ptC1(0) = ptC(0) - 8: ptC1(1) = ptC(1): ptC1(2) = ptC(2)
- ptC2(0) = ptC(0) + 8: ptC2(1) = ptC(1): ptC2(2) = ptC(2)
- Set Obj = ThisDrawing.ModelSpace.Addline(ptC1, ptC2) 'ÖDDÄÏß1 oá
- Jubl1 = Obj.Handle
- ptC1(0) = ptC(0): ptC1(1) = ptC(1) + 8: ptC1(2) = ptC(2)
- ptC2(0) = ptC(0): ptC2(1) = ptC(1) - 8: ptC2(2) = ptC(2)
- Set Obj = ThisDrawing.ModelSpace.Addline(ptC1, ptC2) 'ÖDDÄÏß2 êú
- Jubl2 = Obj.Handle
- Set Czxx = CreateObject("Scripting.Dictionary")
- Czxx(Jubc) = Jubl1 & "|" & Jubl2
- End If
- Else
- If Object.radius = 5 Then
- Jubc = Object.Handle
- ptC = Object.Center
- ptC1(0) = ptC(0) - 8: ptC1(1) = ptC(1): ptC1(2) = ptC(2)
- ptC2(0) = ptC(0) + 8: ptC2(1) = ptC(1): ptC2(2) = ptC(2)
- Set Obj = ThisDrawing.ModelSpace.Addline(ptC1, ptC2)
- Jubl1 = Obj.Handle
- ptC1(0) = ptC(0): ptC1(1) = ptC(1) + 8: ptC1(2) = ptC(2)
- ptC2(0) = ptC(0): ptC2(1) = ptC(1) - 8: ptC2(2) = ptC(2)
- Set Obj = ThisDrawing.ModelSpace.Addline(ptC1, ptC2)
- Jubl2 = Obj.Handle
- Set Czxx = CreateObject("Scripting.Dictionary")
- Czxx(Jubc) = Jubl1 & "|" & Jubl2
- End If
- End If
- End If
- End Sub
|