明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 200|回复: 8

[提问] 请问论坛高手这个创建集合的问题

[复制链接]
发表于 昨天 09:24 | 显示全部楼层 |阅读模式
请问下已知有几个图元名字,怎么用LISP把他们创建为一个集合呢,我自己查到用ssadd,但好像只能一个一个加进去。
回复

使用道具 举报

发表于 昨天 10:04 | 显示全部楼层
一个个加入不是很正常嘛,有什么问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 10:07 | 显示全部楼层
ssyfeng 发表于 2024-12-25 10:04
一个个加入不是很正常嘛,有什么问题

觉得有点麻烦,有没有一次就建好的方法呢
回复 支持 反对

使用道具 举报

发表于 昨天 10:33 | 显示全部楼层
用ssget选择对象就一次性了,不要怕麻烦,事要一件一件做
回复 支持 反对

使用道具 举报

发表于 昨天 10:53 | 显示全部楼层
如果把那那些图元全部转成对象放到安全数组里边,那就可以通过selection对象的additems方法一次性把这个数组放进去,不过这个转换还是得一个个来转,除非它们本来就是对象
回复 支持 反对

使用道具 举报

发表于 昨天 11:59 | 显示全部楼层
做成表 一个循环就进去了

评分

参与人数 1明经币 +1 收起 理由
薄荷微光 + 1 赞一个!

查看全部评分

回复 支持 反对

使用道具 举报

发表于 昨天 22:00 | 显示全部楼层
  1. (setq ss (ssadd))
  2. (mapcar '(lambda (x) (ssadd x ss)) lst)
回复 支持 反对

使用道具 举报

 楼主| 发表于 17 小时前 | 显示全部楼层
飞雪神光 发表于 2024-12-25 11:59
做成表 一个循环就进去了

请问下怎么做成表呢,我试了下用括号括3个图元名,提示参数类型错误
  1. (defun c:kkk()
  2.   (setq e11 (car (entsel)))
  3.   (setq e22 (car (entsel)))
  4.   (setq e33 (car (entsel)))
  5.   (setq lst '(e11 e22 e33))
  6.   (setq n (length lst))
  7.   (setq ss (ssadd))
  8.   (while (> n 0)
  9.     (ssadd (nth (1- n) lst) ss)
  10.     (setq n (- n 1))
  11.   )
  12. )
回复 支持 反对

使用道具 举报

发表于 4 小时前 | 显示全部楼层
薄荷微光 发表于 2024-12-26 00:19
请问下怎么做成表呢,我试了下用括号括3个图元名,提示参数类型错误

要用list
  1. (setq lst (list e11 e22 e33))
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-12-26 17:45 , Processed in 0.187612 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表