QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 4217|回复: 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 | 显示全部楼层 来自: 中国辽宁营口
参考下面例程:
0 F. G  m. N! D8 D# M1 d! z* N2 i+ n) i( B/ ?7 M. `0 e
打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”
2 l+ W, a1 r9 P9 T6 S4 ]3 P 1.gif 3 K# A2 V  B& }( `5 r- W
4 C4 d" v6 i2 H6 v
在VBA编辑器中写如下代码2 [! b# U& A$ h0 m. l/ V
---------------------------------------------------
( z# E  e- ]7 a3 W* m7 lSub A()/ L: }4 S( @4 [$ [
    Dim F As Integer, P(2) As Double& Z* R- A/ X$ V) Z4 E
    F = FreeFile()$ G" }- q5 p# @" I
    Open "E:\1.txt" For Input As F
, e' U" t- o3 e: f& A5 i- m0 P        Do Until EOF(F)
8 g. r. K/ @4 f$ @  H            Input #F, P(0), P(1), P(2)" |' i3 v6 y2 U& v& `8 C4 b
            ThisDrawing.ModelSpace.AddPoint P$ _5 ?, G  P# ]! e
        Loop
' C& C7 K, k' ~0 V8 Y9 B( Q    Close F' U! j1 O+ z- _6 S" k# H' O* n+ h* A
End Sub
: S% L' @6 q! y7 L! X3 v---------------------------------------------------# i5 r  L' x. q2 A: _5 p2 {

, f  y# ^+ Q, e* ~* R! l( {下面的代码也可以" U+ P! `; _; n' y/ B
---------------------------------------------------
# {$ F" R2 _5 [2 VSub B()4 n9 S- L+ R/ f
    Dim F As Integer, S As String0 p( \5 W* L  c2 n1 v0 {
    ThisDrawing.ActiveSpace = acModelSpace1 b3 e5 ?/ x  k1 L  R: ^
    F = FreeFile()2 K- L5 \9 v+ J5 r$ q& S
    Open "E:\1.txt" For Input As F
4 Z9 }/ Q# X8 o: T0 ^        Do Until EOF(F)& F8 @: l2 A; y  g' ~" x
            Line Input #F, S
- [7 U7 B. O  `! e2 H            ThisDrawing.SendCommand "point " & S & vbCr
# n) S! g% r) X! Y        Loop
0 z0 D+ Q, L8 Q/ Y    Close F+ ]- A9 v5 ~( h# H! ?9 k! j+ c
End Sub( ~8 t+ L( F5 [# l: F% L' ^/ N3 ^' t
---------------------------------------------------
 楼主| 发表于 2008-9-11 21:45:46 | 显示全部楼层 来自: 中国四川成都

回复 3# 的帖子

太厉害了,佩服!佩服!!没想到回的这么快,谢谢!
: d+ \" s% }0 _9 z& }我还想再深入的问问:还是txt中的许多点的坐标值,并且每个点都有唯一的编号与之对。我要问的是,如何在modelspace里用vba程序生成一个个球体零件,每个零件的编号与点的编号对应,球的中心就是点的坐标值?
 楼主| 发表于 2008-9-11 21:57:47 | 显示全部楼层 来自: 中国四川成都
哦,刚才忘了说了,是在mdt里,而不是在autocad里生成与点一一对应的零件
发表于 2010-7-17 19:23:43 | 显示全部楼层 来自: 中国浙江温州
参考下面例程:6 ^# r/ @! o+ l% `0 S) @
3 m9 ~6 t# f% j) ?6 H0 q
打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”& E! s# b7 X& E, m
974246' Q! B2 V. U  l0 `- D
6 x) f2 B, L- |  F1 l! h
在VBA编辑器中写如下代码; ]/ w8 q5 ^, [' k5 y
---------------------------------------------------
2 u: M$ g+ G8 S3 X0 v( [0 `' lSub A()
7 y4 J' n  g/ M, j: ]' l    Dim F As Integer, P( ...
& L7 z2 s: s8 fwoaishuijia 发表于 2008-9-11 08:29 http://www.3dportal.cn/discuz/images/common/back.gif
$ y/ C) C' K. M% E3 P! j7 D
非常佩服您,非常感谢您的无私指导。
8 q7 ?. ^' F8 |. \3 a8 S想再请教一下:如果三维点数据不是来自文本文件“E:\1.txt”,而是来自Excel文件“E:\1.xls”中的Sheet1;那么,VBA代码要作如何的修改呢?
发表于 2010-7-18 05:43:38 | 显示全部楼层 来自: 中国辽宁铁岭
6# bsese
1 E' C4 x2 f0 j; \. L参考这个帖子 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 )

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