求编程CAD,VBA选择集,排序 25
在CAD的VBA编译环境中我setcrossing了有5条样条曲线的选择集,因为这5条样条曲线是随便画的,没有顺序,但是我想让它们排个顺序,就画了条直线。依据直线和5样条...
在CAD的VBA编译环境中我setcrossing了有5条样条曲线的选择集,因为这5条样条曲线是随便画的,没有顺序,但是我想让它们排个顺序,就画了条直线。依据直线和5样条曲线的交点到下面端点的距离(用圆标出)的大小来排序以下是我编的程序,用了一个冒泡的小程序,但是没有效果?????急!!!
Dim pls as new collection
Dim pps as new collection
Set line1 = ThisDrawing.ModelSpace.AddLine(ptst, pten)
For k = 1 To n
pp = line1.IntersectWith(sset.Item(k - 1), acExtendNone)
pls.Add sset.Item(k - 1)
pls(k) = sset.Item(k - 1)
pps.Add pp
ll(k) = getdistance(ptst, pps(k))
For j = 2 To n
For i = n To j Step -1
If ll(i) < ll(i - 1) Then
mpl = pls(i)
pls(i) = pls(i - 1)
pls(i - 1) = mpl
End If
Next i
Next j
Next k
line1.Delete
结果集合pls中的排序还是和选择集的排序是一样的,没有发生变化 展开
Dim pls as new collection
Dim pps as new collection
Set line1 = ThisDrawing.ModelSpace.AddLine(ptst, pten)
For k = 1 To n
pp = line1.IntersectWith(sset.Item(k - 1), acExtendNone)
pls.Add sset.Item(k - 1)
pls(k) = sset.Item(k - 1)
pps.Add pp
ll(k) = getdistance(ptst, pps(k))
For j = 2 To n
For i = n To j Step -1
If ll(i) < ll(i - 1) Then
mpl = pls(i)
pls(i) = pls(i - 1)
pls(i - 1) = mpl
End If
Next i
Next j
Next k
line1.Delete
结果集合pls中的排序还是和选择集的排序是一样的,没有发生变化 展开
2个回答
展开全部
没有cad,无法调试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我才不管你说什么,我只是回复过任务。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |