明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1103|回复: 1

split+Array的应用

[复制链接]
发表于 2009-6-23 10:24:00 | 显示全部楼层 |阅读模式
"aa|Mirr0|X600Y30ArrayX3Y4"主要是简化Array输入的一大堆数据.
采用split,将上面数据进行数组转换.程序如下.

  1. Sub ls1()
  2.   aa = "aa|Mirr0|X600Y30ArrayX3Y4"
  3.   ss = Split(aa, "|")
  4.   
  5.   Dim xDist, yDist, numberOfRows, numberOfColumns
  6.   Dim Pt1(2) As Double, Pt2(2) As Double
  7.   Dim objLine As AcadLine, Ent As AcadEntity
  8.   Pt1(0) = 0: Pt1(1) = 10
  9.   Pt2(0) = 400: Pt2(1) = 10
  10.   Set objLine = ThisDrawing.ModelSpace.AddLine(Pt1, Pt2)
  11.   Dim xCopyPt(2) As Double, basePt(2) As Double
  12.   For ii = 0 To UBound(ss)
  13.     Debug.Print ss(ii)
  14.     If InStr(ss(ii), "Array") > 0 Then
  15.       bb = Split(ss(ii), "Array")
  16.       
  17.         bbb = Split(bb(0), "Y")
  18.         xDist = Val(Mid(bbb(0), 2))
  19.         yDist = Val(bbb(1))
  20.         bbb = Split(bb(1), "Y")
  21.         numberOfColumns = Val(Mid(bbb(0), 2))
  22.         numberOfRows = Val(bbb(1))
  23.     Dim retObj As Variant
  24.       retObj = objLine.ArrayRectangular(numberOfRows, numberOfColumns, 1, yDist, xDist, 1)
  25.         
  26.         
  27.       
  28.     End If
  29.   Next ii
  30. End Sub
发表于 2009-6-23 21:48:00 | 显示全部楼层

这种方法不错,主要是简化了人工输入的一些工作,以前经常用到。一般来说,象我们写的小程序,速度并不是我们首先考虑的东西,实际上split对于大数据来说会比较慢。

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

本版积分规则

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

GMT+8, 2024-11-26 02:44 , Processed in 0.161185 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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