明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 924|回复: 6

[提问] 如何对(ssget)得到的集合进行复制命名?

[复制链接]
发表于 2015-9-19 22:22 | 显示全部楼层 |阅读模式
现在尝试写一个小程序
(setq ss (ssget))
现在想做的事就是将这个集合内的内容复制出来进行填充。
通过command命令来处理
(command "_copy" ss "" "d" "0,-1000,0")
这个时候集合ss仍然是原来位置的实体集,我不想对原实体集进行填充,想对复制后的新实体集进行填充。这里就需要对复制后新的选择集命名。
(setq ss2   (entlast))
这个命令只能对command copy命令产生的最后一个实体命名为ss2,这里是否有办法将ss2命名为复制后的新实体集?



本帖被以下淘专辑推荐:

  • · 学习|主题: 95, 订阅: 7
发表于 2015-9-19 22:56 来自手机 | 显示全部楼层
查一下entlast和entnext的用法,论坛里也有现成代码!复制前先用entlast获取最后图元名,复制后再用while循环entnext找到所有新增加的图元!
发表于 2015-9-19 23:38 | 显示全部楼层
(setq ss (ssget))                     
(setq en (entlast))
(setq sss (ssadd))
(command "_copy" ss "" "d" "0,-1000,0")
(while (setq en (entnext en)) (ssadd en sss))
 楼主| 发表于 2015-9-19 23:56 | 显示全部楼层
springwillow 发表于 2015-9-19 22:56
查一下entlast和entnext的用法,论坛里也有现成代码!复制前先用entlast获取最后图元名,复制后再用while循 ...

谢谢,明白了。
 楼主| 发表于 2015-9-20 00:11 | 显示全部楼层
lht 发表于 2015-9-19 23:38
(setq ss (ssget))                     
(setq en (entlast))
(setq sss (ssadd))

谢谢详细的解答,看明白了。
发表于 2015-9-20 01:08 来自手机 | 显示全部楼层
试试(ssget"p")
 楼主| 发表于 2015-9-20 08:00 | 显示全部楼层
edata 发表于 2015-9-20 01:08
试试(ssget"p")

谢谢你的帮助。
(ssget"p")这个功能只能选择P 最后一个创建的选择集。
但我最后一次创建的选择集是(ssget),对这个集合进行复制后,复制后的内容系统并不认为是最后创建的选择集。
采用(ssget"p")命令得到的仍然是没有复制的原选择集。
谢谢你的回答,2楼和3楼给的语句可以实现我需要的功能。

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

本版积分规则

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

GMT+8, 2024-4-28 15:08 , Processed in 0.257747 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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