p2 ' (a2 b2) ;;这一段错了,应该是(list a2 b2)
‘() 里面是不能有变量的,只能用常量,即数,字符等。
另外,你的程序也可以这样写:
(defun c:bom()
(if (setq p1 (getpoint "\n请选择插入点: "))
(progn
(command "_.rectang" p1 "@200,100")
(command "_.rectang" (mapcar '+ p1 (list 10 10)) "@180,80")
)
)
)
(mapcar '+ p1 (list 10 10)) 此段为依次向表 p1 的各个元素进行 '+ 相应的表 (list 10 10)元素的运算。
p2 ' (a2 b2) ;;这一段错了,应该是(list a2 b2)
‘() 里面是不能有变量的,只能用常量,即数,字符等。
另外,你的程序也可以这样写:
(defun c:bom()
(if (setq p1 (getpoint "\n请选择插入点: "))
(progn
(command "_.rectang" p1 "@200,100")
(command "_.rectang" (mapcar '+ p1 (list 10 10)) "@180,80")
)
)
)
(mapcar '+ p1 (list 10 10)) 此段为依次向表 p1 的各个元素进行 '+ 相应的表 (list 10 10)元素的运算。