QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
3天前
查看: 4137|回复: 7
收起左侧

[已答复] 如何用vba编程将txt文档中存有点的三维坐标值(有很多点)读出并画在modelspace中?

[复制链接]
发表于 2008-9-10 22:03:01 | 显示全部楼层 |阅读模式 来自: 中国四川成都

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
如何用vba编程将txt文档中存有点的三维坐标值(有很多点)读出并画在modelspace中?
头像被屏蔽
发表于 2008-9-10 22:51:47 | 显示全部楼层 来自: 中国上海
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2008-9-11 08:29:57 | 显示全部楼层 来自: 中国辽宁营口
参考下面例程:! Q/ c6 ?+ O1 b8 f
# P, |: I& b3 R! ]
打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”
' I3 f  `- n9 X3 l( E 1.gif , J+ X, |# c9 v

4 _8 R  o& N( ~1 b) Y" u( S+ y在VBA编辑器中写如下代码- B' u2 o8 e* h1 B7 i1 @# w
---------------------------------------------------6 @: ^4 K6 F9 B$ P) J
Sub A()$ N- Y" L1 Y* ^0 a: h
    Dim F As Integer, P(2) As Double
& D' y) c( m7 l2 p% P6 ], i6 `, r    F = FreeFile()
& K# |" h8 }1 z9 I/ |; z    Open "E:\1.txt" For Input As F
% Y+ F& F5 @9 I) ?) V% q$ A        Do Until EOF(F)
0 ?+ R% D: w1 `5 H3 e& L            Input #F, P(0), P(1), P(2)6 b: A( h( N7 N+ K1 \
            ThisDrawing.ModelSpace.AddPoint P
* W0 _  H" W: k/ d, W6 ^        Loop2 @: c3 Z' p0 A3 N' G
    Close F3 H2 W+ k8 c. h+ N- ]$ P
End Sub
' \" g4 J6 x; e/ v7 B, P) h0 p---------------------------------------------------# s! [# a, m0 y! v* {) t5 _

1 z. U9 f$ z# D1 q, U( b+ B5 ^7 o3 |下面的代码也可以
0 g- [8 a4 p& m% \---------------------------------------------------
& h6 v9 {6 }; ~% I8 V  }% CSub B()
& P  L# p: R* y+ j  ]3 j- t    Dim F As Integer, S As String' {# D5 E$ H5 F" Y7 k/ B
    ThisDrawing.ActiveSpace = acModelSpace7 j$ v' a) M6 ~: s$ M7 h4 @- ^
    F = FreeFile()( P" Z9 J5 ]" h2 b: w
    Open "E:\1.txt" For Input As F3 x. C0 c' S0 ?# C
        Do Until EOF(F)9 M# Q! S% e3 _4 q
            Line Input #F, S2 W6 X1 m' ]; R2 _* [5 T. K
            ThisDrawing.SendCommand "point " & S & vbCr" t! T% T7 ~* {+ Q3 z8 t
        Loop
1 W, \$ g3 `  V1 Y3 j, ~    Close F
$ ?* M: s- ^  ?: oEnd Sub6 q- N: K: L7 [1 ]  g- }
---------------------------------------------------
 楼主| 发表于 2008-9-11 21:45:46 | 显示全部楼层 来自: 中国四川成都

回复 3# 的帖子

太厉害了,佩服!佩服!!没想到回的这么快,谢谢!
0 _( _, W1 h4 ^- I' Q我还想再深入的问问:还是txt中的许多点的坐标值,并且每个点都有唯一的编号与之对。我要问的是,如何在modelspace里用vba程序生成一个个球体零件,每个零件的编号与点的编号对应,球的中心就是点的坐标值?
 楼主| 发表于 2008-9-11 21:57:47 | 显示全部楼层 来自: 中国四川成都
哦,刚才忘了说了,是在mdt里,而不是在autocad里生成与点一一对应的零件
发表于 2010-7-17 19:23:43 | 显示全部楼层 来自: 中国浙江温州
参考下面例程:; Q& V1 @: b6 l

' k1 \' v4 ], x8 s" h" a打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”6 q5 t* `" ^3 G7 v9 F) r& a- V7 U
9742463 @6 v* p2 \& Q, {& ], d# p8 r4 r- H

. ?1 U7 I# X0 ]5 w在VBA编辑器中写如下代码) v- I# e: K  w
---------------------------------------------------
' i4 Y( b' y$ _3 P: n+ u6 u7 DSub A()- ]# J6 s) D, B8 t: q
    Dim F As Integer, P( ...
; D5 C& h6 u8 }' @" D: `woaishuijia 发表于 2008-9-11 08:29 http://www.3dportal.cn/discuz/images/common/back.gif

! Z# S( O$ F8 X6 m7 l3 i非常佩服您,非常感谢您的无私指导。/ t3 \! `% B; Z4 o: S" j
想再请教一下:如果三维点数据不是来自文本文件“E:\1.txt”,而是来自Excel文件“E:\1.xls”中的Sheet1;那么,VBA代码要作如何的修改呢?
发表于 2010-7-18 05:43:38 | 显示全部楼层 来自: 中国辽宁铁岭
6# bsese
7 H+ l: Q9 j* ]+ _* [, ?参考这个帖子 VBA讀寫EXCEL文檔的方法
发表于 2011-7-19 22:16:24 | 显示全部楼层 来自: 中国上海
正好需要,谢谢了!
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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