QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 4216|回复: 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 | 显示全部楼层 来自: 中国辽宁营口
参考下面例程:
3 J# y: {; {3 Z8 U& {/ b7 A
' c& O" p, X2 |* R0 p打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”& s. m+ n" w6 {: @: `, ?# m2 t) M' [
1.gif
! V7 |; c0 A: E0 N+ g( |, L
5 e1 I) U  _  r1 a在VBA编辑器中写如下代码. \* z' }. |4 H$ E) Z
---------------------------------------------------+ O2 w, U; S+ |% ?) \
Sub A()
  A/ C& n4 T! P$ I9 c' s! l& P    Dim F As Integer, P(2) As Double
5 K) r/ Q- T. ?% U# d    F = FreeFile()
0 S3 J. N6 P+ v- a  {% ]    Open "E:\1.txt" For Input As F
2 c! F) W/ e9 V        Do Until EOF(F)
1 s4 |: }3 O9 s- K& M            Input #F, P(0), P(1), P(2)
6 T- T1 J0 h0 Y/ U$ P1 H            ThisDrawing.ModelSpace.AddPoint P
% i1 g" O3 W+ `0 v9 ~        Loop
' d$ \! `4 _9 F' [0 s: x& V% e    Close F  D* m+ h, M& Y& `  _1 j
End Sub/ x+ u% @3 q# L3 [9 ?
---------------------------------------------------
# b* u( z! e, t' j  h6 P
$ w4 P2 `& r8 f8 Y; E下面的代码也可以
2 |# k: ^0 a, d& X  i---------------------------------------------------
5 @5 r) B/ U) G: ]& q9 USub B()
' k' ]4 T# X  j* h5 j2 N    Dim F As Integer, S As String
# p" z( Z0 K8 O: }    ThisDrawing.ActiveSpace = acModelSpace
8 M" d# ?4 R/ n- u    F = FreeFile()
* s" R8 Y6 [  Y6 d1 k  F    Open "E:\1.txt" For Input As F
$ L/ s5 i$ i( E* W( `$ E# r        Do Until EOF(F)
7 Q7 g" Y3 S6 y$ y+ e1 B% }            Line Input #F, S6 m6 n9 k. o% `( P
            ThisDrawing.SendCommand "point " & S & vbCr
0 D9 ?% x9 l9 T, q" G& x  J        Loop
2 j# ]5 |9 Y, o3 e4 }3 Z    Close F/ M: C9 J$ z$ o2 T. Z7 B1 T
End Sub( D" v* e, T# _# q/ q* c  w. H+ Z
---------------------------------------------------
 楼主| 发表于 2008-9-11 21:45:46 | 显示全部楼层 来自: 中国四川成都

回复 3# 的帖子

太厉害了,佩服!佩服!!没想到回的这么快,谢谢!
: D, _! e7 \# R' ]- R我还想再深入的问问:还是txt中的许多点的坐标值,并且每个点都有唯一的编号与之对。我要问的是,如何在modelspace里用vba程序生成一个个球体零件,每个零件的编号与点的编号对应,球的中心就是点的坐标值?
 楼主| 发表于 2008-9-11 21:57:47 | 显示全部楼层 来自: 中国四川成都
哦,刚才忘了说了,是在mdt里,而不是在autocad里生成与点一一对应的零件
发表于 2010-7-17 19:23:43 | 显示全部楼层 来自: 中国浙江温州
参考下面例程:. A# n: P8 e5 S  y/ N7 `: g

% t1 u- y/ o5 E0 Z& \打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”% T% c$ L, G" c" X. I9 N7 ^* P" M
974246
$ J; M( G! g8 T# K
& x& ~+ Z& S1 \. ^在VBA编辑器中写如下代码
$ r& v# T+ K* h---------------------------------------------------
/ q+ ^) H$ O/ V# i2 U; bSub A()( \$ D  O6 [" g' `, M( _+ O
    Dim F As Integer, P( .... [) k0 G) H- ?. P8 Z$ @& o6 A7 U: C
woaishuijia 发表于 2008-9-11 08:29 http://www.3dportal.cn/discuz/images/common/back.gif

/ c2 P  b4 F. \1 Q9 ~非常佩服您,非常感谢您的无私指导。* S- A4 c' q9 v; o: h- i% L
想再请教一下:如果三维点数据不是来自文本文件“E:\1.txt”,而是来自Excel文件“E:\1.xls”中的Sheet1;那么,VBA代码要作如何的修改呢?
发表于 2010-7-18 05:43:38 | 显示全部楼层 来自: 中国辽宁铁岭
6# bsese
7 R: X. G" O) V参考这个帖子 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 )

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