|
|
各位大侠,小弟初学AutoCAD的二次开发lsp,发现我编好了一个lsp程序,但是在使用的过程之中,老是不稳定,有时候可以顺顺利利的画出来想要的图形,但又有时候却有问题,画的不正确,能画出来就说明程序本身没有问题的吧?但为何执行的时候不稳定呢?是不是还需要有什么其他编注的呀??以下是一个例子,供哪位大侠不吝指点一下,非非常常感谢不尽!!!!
% q' M/ w+ b9 n! Z. t! r( @, o
/ [7 ?9 u- N+ X3 l(defun C:5test5()
/ ^$ G) a+ W- u. _(setvar "cmdecho" 0)$ {- \& I/ `- Y8 C+ b
;;以下为用户输入值
# Y% x3 [" t$ q6 P0 _(setq pa (getpoint "输入阶梯的左下角点:"))3 j. p7 y1 }0 [0 v- |3 r
(setq ww (getreal "\n输入阶梯的宽度:"))
' @: Y0 V1 |$ o3 ?$ ^: H8 O5 X(setq hh (getreal "\n输入阶梯的高度:"))
& V' W1 n- G$ [' B/ [( @3 |2 ?(setq n (getint "\n输入阶梯的数目:"))
2 o8 p" {$ O# Y1 l;;以下为所求各值
8 k1 ~/ z$ d; W; p(setq pb (polar pa 0 ww))
, t+ {2 [. E: l. _8 X. o1 W(setq pc (polar pb (/ pi 2) hh))
0 k" V* W8 W6 T, H(setq dw (/ ww n)) H2 e% C5 r' T) S
(setq dh (/ hh n))
) g" B' J, z6 s, b3 w0 C: H! `1 V7 @0 e(setq pp pa)2 g% I* n7 I) {( u9 ?( a
;;先画阶梯的底线5 k* Z8 m5 P) w( A. r% R
(command "line" pa pb pc "")
5 q% }% b. P( s! } J- y+ O;;画台阶的阶梯
' t3 n8 Q2 n* B ^- w" B(command "pline")) |) n% Z' j; {2 j" A3 S: Y4 ?
(repeat n
( A3 c% K- M# ~ t1 b" V7 s(setq p1 (polar pp (/ pi 2) dh))
$ b7 w# b$ ^. V9 g! T(setq p2 (polar p1 0 dw))) {3 _* \* y- {: u3 |0 A% i/ }
(command pp p1 p2)
9 \9 k" ]4 I" h, y: I7 y6 |5 G(setq pp p2)4 N6 F) J, x- |& I8 v7 u! C
) s! b6 J* y) e+ D
(command "")
/ D" G- F' F0 F* f$ R& y& A(prin1)
/ x& ?3 r9 x5 c: `- h, U) |
|