- 积分
- 5
UID822412
主题
在线时间 小时
注册时间2008-10-31
|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
按照AUTOCAD VBA的学习资料,我把二维的改成三维的之后出现如图错误,哪位大大能帮忙指正一下 非常感谢
- _% k) B m" ^% v+ }5 m8 x( i3 D1 C, T
改过后程序为:
5 r0 |6 c* A! o3 k' h. {. f* n
, y- h( F1 }" F* HPublic Sub move()
: O7 z6 P5 W# @% X% |( ~9 cDim p0(2) As Variant '起点坐标
% h/ W7 ^4 I+ k3 w+ WDim p1(2) As Variant '终点坐标: p. s P, E& j# d' u& ^; ]
Dim pc(2) As Variant '移动时起点坐标
) Q9 k& ~% ]* U) p! cDim pe(2) As Variant '移动时终点坐标
5 L' G. K. ^ E9 F. YDim movx As Variant 'x轴增量
( J/ T' S7 {& Q7 `1 N. N. sDim movy As Variant 'y轴增量- O9 F% |; V+ M
Dim movz As Variant 'z轴增量
8 s' U+ I; E# l$ ]( B( e2 hDim getobj As Object '移动对象
( G4 \9 k3 }; B h% D# s$ u% bDim movtimes As Integer '移动次数
1 m3 h T3 Q0 c& ]ThisDrawing.Utility.GetEntity getobj, po, "请选择移动对象"
4 E, y+ M# Q) i' L% h! G; C: z0 Mp0(2) = ThisDrawing.Utility.GetPoint(, "起点:")+ j+ _2 z9 m& S' ~, H8 H+ i0 T% K
p1(2) = ThisDrawing.Utility.GetPoint(p0, "终点:")
1 Z; ~, r& T" b. ]* j. Ype(2) = p0(2)
4 t$ i W/ ~: |% P4 xpc(2) = p0(2)# Z9 ~( I7 W( p% w5 ?
movtimes = 30% z O) C' m( v, B. {: B, z% b5 V
movx = (p1(0) - p0(0)) / movtimes- h2 p1 T' o% z
movy = (p1(1) - p0(1)) / movtimes- X1 `$ k0 a, O$ m, p( y0 [
movz = (p1(2) - p0(2)) / movtimes S( u: d( V. S+ q
For i = 1 To movtimes
1 a+ T' V9 f# T pe(0) = pc(0) + movx r- S+ t! J; H2 p
pe(1) = pc(1) + movy
! F! \1 P1 o7 F, ]4 }1 v% S pe(2) = pc(2) + movz; B6 S6 {0 E% f( \! a5 E
getobj.move pc, pe '移动一段3 \3 s t. I2 o
getobj.Update '更新对象. W5 w( _7 C4 b6 @4 n& d
Next
0 R% @$ z" ?7 V/ e# J0 B) ?/ TEnd Sub
/ w; o: j$ ]4 V7 l
- A+ Y: t8 T/ C5 _3 N6 b9 J' o; F- e& m; m/ x$ Z
程序编译执行都没有错误,但是在选择完移动对象,选择起点的时候就报错(如图)
- K' _$ l% ~# t0 z2 }1 P6 f" l5 }$ U& }2 e
[ 本帖最后由 jasmine126 于 2008-10-31 15:17 编辑 ] |
-
|