表提重复
下表请帮忙提重复:第一项坐标系相同,第二项图层名相同,第三项数值相同
满中以上3个要求移除此项
(
((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9bac0>)
((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9b980>)
((-1739.11 -1629.18 0.0) "STRIP" 2.81 <图元名: 7fffef9bxx0>)
)
得到结果
(
((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9bac0>)
((-1739.11 -1629.18 0.0) "STRIP" 2.81 <图元名: 7fffef9bxx0>)
)
本帖最后由 fan_zh 于 2016-3-18 17:16 编辑
返回的最后一项图元名还需要吗,冒失没有用
去除最后一项后,用下面函数
(defun delsame(l1 / l2);;表中去除重复元素(重复过的取第一次出现)
(while(setq l2(cons(car l1)l2)l1(vl-remove(car l1)(cdr l1))))
(reverse l2))
莫名其妙的点评 ,发个公开函数又怎么了?
发布些对初学者有用的东西却老受到一些人的排斥
总有些心理阴暗的人却在做着为人师表的行径
fan_zh 发表于 2016-3-18 16:38 static/image/common/back.gif
返回的最后一项图元名还需要吗,冒失没有用
去除最后一项后,用下面函数
(defun delsame(l1 / l2);;表中 ...
就是要保留图元名,不然早完成了
得到结果
(
((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9bac0>)
((-1739.11 -1629.18 0.0) "STRIP" 2.81 <图元名: 7fffef9bxx0>)
)
那你保留哪个图元名呢,第一个?
fan_zh 发表于 2016-3-18 17:05 static/image/common/back.gif
那你保留哪个图元名呢,第一个?
同坐标,同图层,同大小 这3个约束条件下,保留第一个或是随意哪个,没关系 我不想回复了,到时可能会有人说,autolisp也是他的版权了 (setq lst '(((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9bac0>)
((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9b980>)
((-1739.11 -1629.18 0.0) "STRIP" 2.81 <图元名: 7fffef9bxx0>)
)
)
;; (aaa lst)
(defun aaa (lst / lst1 lst2 a b)
(setq lst1 '()
lst2 '()
)
(foreach a lst
(setq b (list (car a) (cadr a) (caddr a)))
(if (not (member b lst1))
(setq lst1 (cons b lst1)
lst2 (cons a lst2)
)
)
)
(reverse lst2)
) 本帖最后由 llsheng_73 于 2016-3-20 17:09 编辑
xyp1964 发表于 2016-3-20 15:10 http://bbs.mjtd.com/static/image/common/back.gif
(defun delsameat(l1 n / l2 a)
(if n(setq l1(mapcar'(lambda(x)(cons(mapcar'(lambda(y)(nth y x))n)x))l1)))
(while(setq a(caar l1)l2(cons(cdar l1)l2)l1(vl-remove-if'(lambda(x)(equal(car x)a))(cdr l1))))
(reverse l2))
$(DELSAMEAT'(((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9bac0>)
((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7fffef9b980>)
((-1739.11 -1629.18 0.0) "STRIP" 2.81 <图元名: 7fffef9bxx0>))
'(0 1 2))
(((-1739.11 -1629.18 0.0) "STRIP" 2.79 <图元名: 7FFFEF9BAC0>)
((-1739.11 -1629.18 0.0) "STRIP" 2.81 <图元名: 7FFFEF9BXX0>))
_$
感谢xyp1964版主,llsheng_73大大
页:
[1]