onlyonewolf 发表于 2011-4-27 18:00:58

请指点一下 为什么会出现参数太少呢

(defun c:rect2(/w h alf p1 p2 p3 p4)
        (setq p1 (getpoint "输入矩形一个角点")
              w(getdist p1 "输入矩形的宽")
            h(getdist p1 "输入矩形的高")
            alf (getangle p1 "输入矩形的旋转角")
      )
      (setq p2 (polar p1 alf w))
      (setq p3 (polar p2 (+ alf (* 0.5 pi)) h))
      (setq p4 (polar p3 (+ alf pi) w))
      (command "pline" p1 p2 p3 p4 "c")
      (princ)
)
我是新手在lisp编辑器中 我进行语法检查 并没有说参数太少呀 为什么在cad运行中就会出现参数太少

MaKaiJin 发表于 2011-4-27 18:32:40

当然少了,你要明确确定坐标的用法,建议看看坐标函数的定义.

zml84 发表于 2011-4-27 18:47:25

(defun c:rect2 (/ w h alf p1 p2 p3 p4)
(setq        p1(getpoint "输入矩形一个角点")
        w   (getdist p1 "输入矩形的宽")
        h   (getdist p1 "输入矩形的高")
        alf (getangle p1 "输入矩形的旋转角")
)
(setq p2 (polar p1 alf w))
(setq p3 (polar p2 (+ alf (* 0.5 pi)) h))
(setq p4 (polar p3 (+ alf pi) w))
(command "_.pline" p1 p2 p3 p4 "c")
(princ)
)

Andyhon 发表于 2011-4-27 19:53:35

(/w h alf p1 p2 p3 p4)
==>
(/ w h alf p1 p2 p3 p4)       这个空格不能 漏

onlyonewolf 发表于 2011-4-28 09:43:27

学习了谢谢各位的指导
页: [1]
查看完整版本: 请指点一下 为什么会出现参数太少呢