aaacjh 发表于 2011-11-20 12:47:27

“判断组码增加减少”源码

本帖最后由 aaacjh 于 2011-11-22 11:22 编辑

以下源码有两处疑惑,求助!
1.(setq add_lst (add *ent ent))该语句是什么结构,实现怎样的功能?
2.add是qq的嵌套函数吗?起什么作用呢?


;组码增加减少的判断
(defun c:qq( / *ent add_lst del_lst ent)
(setq ent (entget (car (entsel "\n请选择一个图元"))))
(setq add_lst (add *ent ent))
(setq del_lst (add ent *ent))
(setq *ent ent)
(print "增加的组码是:")(print add_lst)
(print "减少的组码是:")(print del_lst)
(princ)
)
;用于判断表增加
(defun add (ent1 ent2 / i modify_lst)
(setq modify_lst nil)
(if (and ent1 (eq (cdr (assoc -1 ent2)) (cdr (assoc -1 ent1))))
(progn
   (setq i 0)
   (repeat (length ent2)
    (if (not (assoc (car (nth i ent2)) ent1))
   (setq modify_lst (append modify_lst (list (nth i ent2))))
    )
    (setq i (1+ i))
   )
)
)
modify_lst
)

vlisp2012 发表于 2011-11-28 21:46:54

等待高手出现。
页: [1]
查看完整版本: “判断组码增加减少”源码