|
|
发表于 2010-1-23 22:03:55
|
显示全部楼层
来自: 中国辽宁营口
圆心(点)是数组,得分别比较三个坐标才行.- 1 _6 _* g+ D }" L: D
- Dim SS As AcadSelectionSet, FT(0) As Integer, FD(0) As Variant, C1 As AcadCircle, C2 As AcadCircle, I As Long, J As Long' ]% L# A' j0 v) D+ J4 X
- FT(0) = 0: FD(0) = "Circle"; A: W. l9 p" P$ `
- Set SS = ThisDrawing.SelectionSets.Add("SS")2 z, a5 l# y! }! t6 M" U6 Q
- SS.Select acSelectionSetAll, , , FT, FD
3 N% u+ t6 \. k \* J( X - If SS.Count > 1 Then
2 m5 y& S# n- G* `$ O4 s% F( M - For I = SS.Count - 1 To 1 Step -1
5 |& U/ t. o0 U! q$ s& W - Set C1 = SS.Item(I)
5 B2 I( u5 T( {: O/ C# r h. f% u - For J = I - 1 To 0 Step -1
1 _' N' X5 n6 ?, c- W; ~+ | - Set C2 = SS.Item(J)7 d. s8 Q9 D( d0 G! v9 E2 _5 F
- If C1.Center(0) = C2.Center(0) And C1.Center(1) = C2.Center(1) And C1.Center(2) = C2.Center(2) And C1.Radius = C2.Radius Then& |, i, }! K3 k- i: z, |
- C1.Delete
3 ^% j- o6 _ d, a' N$ ?- o- y6 c - Exit For+ }; F; V) ^7 U3 V9 F4 {
- End If
5 D4 q2 ]* Y8 f, j+ k7 \3 R - Next! g4 k3 X) v, k0 r/ f. j) P* P
- Next
8 M( E& l9 Q n6 W V% ~" q* X - End If$ p, `7 `4 a5 M! C
- SS.Delete# X8 D0 d4 Z' |5 Y6 d
复制代码 |
|