- 积分
- 5
UID822412
主题
在线时间 小时
注册时间2008-10-31
|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
按照AUTOCAD VBA的学习资料,我把二维的改成三维的之后出现如图错误,哪位大大能帮忙指正一下 非常感谢
& l* O5 [$ b, H- Y# i, H8 h- O
& p5 K0 N/ R+ g" A# z0 V# Z改过后程序为:" |+ Z& C5 a" U" u8 R4 Y) j- o8 ^' B
! w9 I" \/ u8 y) i; u
Public Sub move()
3 T& Q" L. g2 ^8 `% A! [Dim p0(2) As Variant '起点坐标" D) ~5 l0 t7 l' c1 ~
Dim p1(2) As Variant '终点坐标; Z7 G7 E- k' d) |' {, h p
Dim pc(2) As Variant '移动时起点坐标9 u! I# [, H4 u$ w. P$ v
Dim pe(2) As Variant '移动时终点坐标. t; W. F) A( R. |
Dim movx As Variant 'x轴增量* v8 t" A" X7 p# [" S2 P5 E3 ]5 c. Q- Y
Dim movy As Variant 'y轴增量9 P3 \" K# t! [
Dim movz As Variant 'z轴增量
2 S9 A# y% E1 ?8 C( sDim getobj As Object '移动对象
% ^. ]+ t& ?, o' ]! V4 t9 eDim movtimes As Integer '移动次数
! _3 g' F! h+ @; g4 i |ThisDrawing.Utility.GetEntity getobj, po, "请选择移动对象". m: w5 T. c V, s- a c, _3 X
p0(2) = ThisDrawing.Utility.GetPoint(, "起点:"). u/ M2 T: H; O. ~2 ^
p1(2) = ThisDrawing.Utility.GetPoint(p0, "终点:")4 u% n! H7 M! \' Y+ A2 S
pe(2) = p0(2)
4 \. J# p, r- v$ L4 B4 |pc(2) = p0(2)- k1 Z" E$ w' {7 e3 A
movtimes = 30
! y2 A9 i" O8 T9 l1 p# \movx = (p1(0) - p0(0)) / movtimes6 x; [9 F% r' @
movy = (p1(1) - p0(1)) / movtimes
* @8 R% W( F2 G0 X) Rmovz = (p1(2) - p0(2)) / movtimes% s! a. y0 u% I% P6 T! w( V
For i = 1 To movtimes
3 C" [- ?4 I P, T pe(0) = pc(0) + movx
+ ?8 o) i n, O* @) e2 d pe(1) = pc(1) + movy; b3 {9 n0 i8 V8 E: m. R
pe(2) = pc(2) + movz
' f6 X, z$ f5 s* R1 g, G n getobj.move pc, pe '移动一段7 S( I( `' y+ [" f" S+ T
getobj.Update '更新对象
8 L# y8 u+ H. X* DNext( h4 v% H0 t! p, }
End Sub
0 g/ d2 b/ d$ N1 E8 H# [8 e# f8 v7 K2 D7 E) n% s+ I
M- N; a. ]& ]. T, ]: ?; x
程序编译执行都没有错误,但是在选择完移动对象,选择起点的时候就报错(如图)
$ U6 i1 K5 H" E8 [& C0 E4 E8 H% Z+ H ?% R" E
[ 本帖最后由 jasmine126 于 2008-10-31 15:17 编辑 ] |
-
|