QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 4093|回复: 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 | 显示全部楼层 来自: 中国辽宁营口
参考下面例程:
, x6 a- M/ W" l( P; V
  T5 T" k( S' Y  k: L+ ~打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”& y/ H' e# s& `
1.gif
3 U, x6 R3 l2 D; q2 Z) ?
0 C) b5 y6 _- D; W9 o在VBA编辑器中写如下代码4 C! \0 c( A4 c6 I
---------------------------------------------------
6 B8 ?$ X' ?, e2 f9 u+ j7 HSub A()
8 P2 J) U: U& P    Dim F As Integer, P(2) As Double
, Q, b* d4 e+ R& d. C' r    F = FreeFile()  f# n1 K' W3 n8 c4 H0 ^
    Open "E:\1.txt" For Input As F
9 n$ e; s" @0 J6 \/ g) `! N! N        Do Until EOF(F)
8 L1 S7 H# z! t; @. W( K            Input #F, P(0), P(1), P(2)
; n) H- i0 w6 b7 v# S% s& r            ThisDrawing.ModelSpace.AddPoint P9 |" ~' |/ o5 o  U
        Loop
' |$ z2 L5 m4 c' ?3 Y    Close F
5 z" k! J, `8 z9 [) p1 XEnd Sub; z" q8 V+ V; x. E, I) h0 l7 i. W# ^
---------------------------------------------------
' R+ G) B" X% V, c
; ]# p+ H% U% s+ }2 S& Y7 q下面的代码也可以0 M- Z% Q, M/ m( l1 [/ ^) U$ F. t2 q
---------------------------------------------------) ]. I5 P( X! Q7 t* ?8 [, M* d
Sub B()6 ?5 v, t- E' G* F, [- y6 _. x1 U
    Dim F As Integer, S As String
6 Z* b4 X8 D* P- p; Q% Y  \% \    ThisDrawing.ActiveSpace = acModelSpace. l8 Y9 b, S# G) G6 Q8 C- f* u
    F = FreeFile()- }* q% n! s: N5 T: ~% i
    Open "E:\1.txt" For Input As F
) ]1 J  f3 A" W' b( Q! Q        Do Until EOF(F)7 Z: o  @' r( A# s
            Line Input #F, S! i. j6 ~) o, g; h6 H& [
            ThisDrawing.SendCommand "point " & S & vbCr8 \) B0 n* o* O
        Loop( W: Q1 o, i3 W
    Close F
! t5 e/ }% E  w  JEnd Sub
) ]! c/ I1 }0 p# V* S2 x---------------------------------------------------
 楼主| 发表于 2008-9-11 21:45:46 | 显示全部楼层 来自: 中国四川成都

回复 3# 的帖子

太厉害了,佩服!佩服!!没想到回的这么快,谢谢!
! u* K2 F! t" ]* I3 x我还想再深入的问问:还是txt中的许多点的坐标值,并且每个点都有唯一的编号与之对。我要问的是,如何在modelspace里用vba程序生成一个个球体零件,每个零件的编号与点的编号对应,球的中心就是点的坐标值?
 楼主| 发表于 2008-9-11 21:57:47 | 显示全部楼层 来自: 中国四川成都
哦,刚才忘了说了,是在mdt里,而不是在autocad里生成与点一一对应的零件
发表于 2010-7-17 19:23:43 | 显示全部楼层 来自: 中国浙江温州
参考下面例程:  t; S+ J! D3 l0 \9 k2 l
- z" R7 u( X* ?" q5 q- @' p8 S1 _
打开Windows记事本,写入点坐标(如下图)并保存为“E:\1.txt”2 P8 }. C5 r: L9 s4 O6 v
974246+ g- d! f0 Q3 d' H' h

& o: a; H. a2 I6 n8 v5 H! t在VBA编辑器中写如下代码/ I+ U; j2 Z% \2 o  h- I% L5 A
---------------------------------------------------
3 b7 u: V' c# P6 @4 j; Q+ Y" A. ISub A()
  l2 E6 f3 q- q. `    Dim F As Integer, P( ...: c9 w8 H! B: W# ^0 p) {! o
woaishuijia 发表于 2008-9-11 08:29 http://www.3dportal.cn/discuz/images/common/back.gif
8 \* V7 t) |. z) C5 L  O6 F
非常佩服您,非常感谢您的无私指导。7 P9 z6 \' G8 I7 F( p5 U3 _& ^0 p
想再请教一下:如果三维点数据不是来自文本文件“E:\1.txt”,而是来自Excel文件“E:\1.xls”中的Sheet1;那么,VBA代码要作如何的修改呢?
发表于 2010-7-18 05:43:38 | 显示全部楼层 来自: 中国辽宁铁岭
6# bsese + {' {! ]! F8 P. p( U: D2 l( C
参考这个帖子 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 )

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