|
各位大侠,小弟初学AutoCAD的二次开发lsp,发现我编好了一个lsp程序,但是在使用的过程之中,老是不稳定,有时候可以顺顺利利的画出来想要的图形,但又有时候却有问题,画的不正确,能画出来就说明程序本身没有问题的吧?但为何执行的时候不稳定呢?是不是还需要有什么其他编注的呀??以下是一个例子,供哪位大侠不吝指点一下,非非常常感谢不尽!!!!
- ~7 n2 H: p( Z/ |) g2 P4 d9 ^) P2 r6 `) k; ?) \) Z
(defun C:5test5()3 M3 Z9 Q# \$ O( F
(setvar "cmdecho" 0)
% D7 ]3 F, j1 C9 W; Y+ k' s4 {;;以下为用户输入值# T: x+ S! D$ C- X( d: ]& `, Y+ m2 l
(setq pa (getpoint "输入阶梯的左下角点:"))
; O$ J8 [5 }, l) U(setq ww (getreal "\n输入阶梯的宽度:"))
4 D( X8 I5 z* r6 _1 D; m; N(setq hh (getreal "\n输入阶梯的高度:"))
6 D& h. R2 r: ?5 x* a(setq n (getint "\n输入阶梯的数目:"))
6 P+ e. j7 {6 }0 Y& ?;;以下为所求各值
- `0 d* y# \4 ]# J E(setq pb (polar pa 0 ww))8 x- \1 ^: k6 Z/ [4 Q
(setq pc (polar pb (/ pi 2) hh))
5 l4 u+ K. v4 z1 b' N. n4 w4 ](setq dw (/ ww n))* p1 |8 w6 C$ R) \4 j- y5 d& |
(setq dh (/ hh n)); ?% O0 U- v. o1 }* w: @
(setq pp pa)% c% O6 Q4 \7 N a7 E, k
;;先画阶梯的底线
l3 F' I( _! ~4 }/ S2 i- C( x(command "line" pa pb pc "")
3 x9 _* {0 d; ?/ v' s. [1 };;画台阶的阶梯
( E& c9 A4 D) H(command "pline")( B/ L7 H3 R7 w! d8 o9 |; _7 i J+ d
(repeat n
6 @4 X, C, k: @( ~% E6 j(setq p1 (polar pp (/ pi 2) dh))
; z8 P/ R" a: B' B$ W! _(setq p2 (polar p1 0 dw))$ I6 Z" G# b. d& w# x
(command pp p1 p2)
/ c# R! C# ]* E8 }# V! F! Q! ?(setq pp p2)
* h4 t4 M/ B1 F# m8 N- G)
! S1 k# M$ V- y. r7 @% B9 ?(command "")
# F; R. e; l |* @8 v% J5 M% u/ b3 q(prin1). O5 B" f9 ^% K3 x; J8 P
) |
|