标题:如何找出指定条件的对象并输出
只看楼主
Mountisky
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-7-17
结帖率:100%
已结贴  问题点数:20 回复次数:3 
如何找出指定条件的对象并输出
程序代码:
 '需要中surfaceBodies.Face 中找出所有类型为kPlanesurFace的面,For语句应该如何用
        Dim i As Integer
        Dim oCylFace1(i) As Face
        oCylFace1(i) = Nothing
        For i = 0 To 2 Step 1
            For Each oFace In oCylinder1.SurfaceBodies(1).Faces
                If oFace.SurfaceType = SurfaceTypeEnum.kPlaneSurface Then
                    oCylFace1(i) = oFace
                End If
            Next
        Next


我希望能在oCylinder1.SurfaceBodies(1).Faces ,找出SurfaceType 为kPlaneSurface 的面,我知道有3个面。,应该如何找出来,,不是应该用for next语句么。请大家帮我看看哪里不对。
异常信息为

“System.IndexOutOfRangeException”类型的未经处理的异常在 TEST3.exe 中发生
其他信息: 索引超出了数组界限。
搜索更多相关主题的帖子: 指定 条件 输出 For Next 
2017-10-16 21:16
HVB6
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:15
帖 子:320
专家分:561
注 册:2013-10-30
得分:7 
回复 楼主 Mountisky
       Dim i As Integer=2'这样试试。
        Dim oCylFace1(i) As Face
        oCylFace1(i) = Nothing
        For i = 0 To 2 Step 1
            For Each oFace In oCylinder1.SurfaceBodies(1).Faces
                If oFace.SurfaceType = SurfaceTypeEnum.kPlaneSurface Then
                    oCylFace1(i) = oFace
                End If
            Next
        Next
2017-10-17 11:08
紫金山
Rank: 1
等 级:新手上路
帖 子:6
专家分:7
注 册:2017-6-20
得分:7 
回复 2楼 HVB6
是把错误排除了,但是还是找不到面,所有oCylFace1(i)的值是一样的
2017-10-20 09:45
HVB6
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:15
帖 子:320
专家分:561
注 册:2013-10-30
得分:0 
回复 3楼 紫金山
oCylFace1(i)的值是啥东东?
2017-10-21 15:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-481479-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.094553 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved