明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1435|回复: 1

大家帮我看一下

[复制链接]
发表于 2006-10-31 15:24:00 | 显示全部楼层 |阅读模式

我现在有个问题:

   就是我单选图形中的一个圆,如它和其它实体相交有三个交点的话就用红色将它显示出来,代码如下:

    ThisDrawing.Utility.GetEntity cir, pt, "Pick a text"   '单选一个圆

   For Each objPolys In selpoints                            ‘遍历selpoints选择集中的实体
               intPoints = cir.IntersectWith(objPolys, acExtendNone)  '相交
                If UBound(intPoints) <> -1 Then
                    For l = LBound(intPoints) To UBound(intPoints)
                      l = l + 2
                      n = n + 3
                      k = k + 1
                    Next
                End If
          Next objPolys
         
            If k > 2 Then                                 '判断有2个以上交点的圆
               cir.Color = acRed
            End If

  单选个圆,然后上面的结果都正确,有二个交点以上时就显示为红色,如没有则不变

  那好,现在我想在这个基础上,想遍历一个圆选择集而不是一个个的去单选

   'ThisDrawing.Utility.GetEntity cir, pt, "Pick a text"    '这一句注销
    
     For Each cir In selcir                                             '遍历selcir选择集中的圆
         For Each objPolys In selpoints
           'For Each cir In selcir
              intPoints = cir.IntersectWith(objPolys, acExtendNone)
                If UBound(intPoints) <> -1 Then
                    For l = LBound(intPoints) To UBound(intPoints)
                      l = l + 2
                      n = n + 3
                      k = k + 1
                    Next
                End If
          Next objPolys
         
            If k > 2 Then                                 '判断有2个以上交点的圆
               cir.Color = acRed
            End If
            
        Next cir

   运行的结果:所有的圆都为红色了,而不是只有相交点2个以上的才显示为红色!不知是错在那里,大家帮忙看一下

发表于 2006-11-1 12:58:00 | 显示全部楼层

for循环怪怪的,不用它,直接判断UBound(intPoints)的值,

k=(UBound(intPoints)+1)/3

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 22:49 , Processed in 0.164698 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表