不一样的戏 发表于 2011-10-20 23:58 
不是,我想知道我错哪了,刚学,所以想把它搞懂。
代码错误很多,请仔细对照检查。
 - (defun c:hpl (/ A D DMIN NUM PT PT1)
- (setq pt (getpoint "\n 输入图形的中心点:"))
- (setq pt1 (getpoint pt "\n 输入第一个正方形的起始角点:"))
- (initget 7)
- (setq num (getint "\n输入画正方形的个数:"))
- (setq d (distance pt pt1))
- (setq a (angle pt pt1))
- (setq dmin (/ d (expt 2 (/ (1- num) 2))))
- (defun box (d a)
- (draw d a)
- (cond ((> d dmin)
- (box (/ d 1.4142) (+ a (/ pi 4.0)))
- )
- ) ;End cond
- ) ;End defun box
- (defun draw (d a)
- (command "pline"
- (polar pt a d)
- "w"
- 0.6
- 0.6
- (polar pt (+ a (/ pi 2.0)) d)
- (polar pt (+ a pi) d)
- (polar pt (- a (/ pi 2.0)) d)
- "c"
- ) ;End Command
- ) ;End draw
- (box d a)
- ) ;end
|