CADVBA,删除多段线重复节点,并生成新数组
时间:2011-07-07
来源:互联网
写了,不完善,有时成功,有时失败,高手看看,是不是还有简单的办法?
For i = 0 To j - 3 Step 2
Δx = pp(i) - pp(i + 2)
Δy = pp(i + 1) - pp(i + 3)
If i + 3 = j And Δx < 0.00000001 And Δy < 0.00000001 Then '''最后两个节点为重合点时,m加1并跳出循环
pp(i) = pp(i): pp(i + 1) = pp(i + 1)
m = m + 1
Exit For
End If
If Δx < 0.00000001 And Δy < 0.00000001 Then
pp(i + 2) = pp(i + 4): pp(i + 3) = pp(i + 5)
m = m + 1
If i + 5 = j Then ''''''''当最后一个节点被赋值给pp(i+2)和pp(i+3)时,循环停止
Exit For
End If
End If
Next
n = j - 2 * m ''''''''m记录重合点数,n为新数组的最大下标
ReDim Preserve pp(0 To n)
For i = 0 To j - 3 Step 2
Δx = pp(i) - pp(i + 2)
Δy = pp(i + 1) - pp(i + 3)
If i + 3 = j And Δx < 0.00000001 And Δy < 0.00000001 Then '''最后两个节点为重合点时,m加1并跳出循环
pp(i) = pp(i): pp(i + 1) = pp(i + 1)
m = m + 1
Exit For
End If
If Δx < 0.00000001 And Δy < 0.00000001 Then
pp(i + 2) = pp(i + 4): pp(i + 3) = pp(i + 5)
m = m + 1
If i + 5 = j Then ''''''''当最后一个节点被赋值给pp(i+2)和pp(i+3)时,循环停止
Exit For
End If
End If
Next
n = j - 2 * m ''''''''m记录重合点数,n为新数组的最大下标
ReDim Preserve pp(0 To n)
作者: thormars 发布时间: 2011-07-07
超爽吃喝玩乐,白给,白送,白拿,免费好东东,总有一个适合你
精品免费,礼品,奖品,赠品,折扣,优惠券,赚钱,一切免费好东东
尽在豆包网精品站,赶快行动吧!!
精品免费,礼品,奖品,赠品,折扣,优惠券,赚钱,一切免费好东东
尽在豆包网精品站,赶快行动吧!!
作者: hc2008a 发布时间: 2011-07-17
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28