也许:
- (defun c:lz (/ pt1 z1 pt2 z2 pt3 z3)
- (if (and (setq pt1 (getpoint "\nSpecify First Point: "))
- (or (setq z1 (getdist "\nSpecify Z <0.0>: ")) (setq z1 0.0))
- (setq pt2 (getpoint (if pt2 pt2 pt1) "\nSpecify Next Point: "))
- (or (setq z2 (getdist "\nSpecify Z <0.0>: ")) (setq z2 0.0)))
- (progn
- (command "_.line" "_non"
- (list (car pt1) (cadr pt1) z1) "_non"
- (list (car pt2) (cadr pt2) z2) "")
- (while (and (setq pt3 (getpoint pt2 "\nSpecify Next Point: "))
- (or (setq z3 (getdist "\nSpecify Z <0.0>: ")) (setq z3 0.0)))
- (command "_.line" "_non"
- (list (car pt2) (cadr pt2) z2)
- (list (car pt3) (cadr pt3) z3) "")
- (setq z2 z3 pt2 pt3))))
- (princ))
|