找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1865|回复: 6

[LISP函数]:如何选中所有的阵列出的块,并把他们炸开?

[复制链接]
发表于 2006-3-18 21:43:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
如何选中所有的阵列出的块,并把他们炸开?
用lisp 调用inster 插入了一个块,然后用阵列出了几个这样的块。
问题是如何用选择集ssget 把上面的这些块选中,并把他们炸开?
我想用ssget做选择集,然后炸开上面所有的块,可是不成功。
想问下 大虾们该怎么做才能选中所有阵列出的块,并把他们炸开
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 8157个

财富等级: 富甲天下

发表于 2006-3-18 22:10:50 | 显示全部楼层
(ssget "X" '((2 . "块名称")))    ; 全选

or

(ssget '((2 . "块名称")))        ; 手动选
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-3-18 22:31:01 | 显示全部楼层
选中所有块很容易,要选择出阵列出的块就不那么容易了。因为从插入块的数据里得不到和其他块的阵列关系。所以必须要有一个判断程序来判断所选择的块是不是在某个阵列的点上。这个判断程序还要考虑矩形阵列和圆形阵列的不同情况,最好还要考虑到三维的情况。

如果块是用“minsert”插入的, “explode”命令是炸不开的, 不过编程序比较容易解决。因为插入块的数据里有阵列的信息。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-3-19 13:25:17 | 显示全部楼层
(defun c:abc()
  ;先注释掉直接用块名c1插 (setq aaa "c1")
  (setq bbb (getpoint "\n 插入点"))
  (command "insert" "c1" bbb 1 1 0)
  (setq ccc (ssget "x" '(( 2 . "c1")) ))
)
为什么 ccc为空?没有任何块被选进选择集?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 8157个

财富等级: 富甲天下

发表于 2006-3-19 14:00:17 | 显示全部楼层
2004 上的驗證

Command: (setq bbb (getpoint "\n 插入点"))
插入点(148.112 191.958 0.0)

Command: (command "insert" "c1" bbb 1 1 0)
insert Enter block name or [?] <aaa>: c1 Specify insertion point or
[Scale/X/Y/Z/Rotate/PScale/PX/PY/PZ/PRotate]:
Enter X scale factor, specify opposite corner, or [Corner/XYZ] <1>: 1 Enter Y
scale factor <use X scale factor>: 1 Specify rotation angle <0>: 0
Command: nil

Command: (setq ccc (ssget "x" '(( 2 . "c1")) ))
[Selection set: 7]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-3-20 22:28:44 | 显示全部楼层
xplode命令
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-3-20 22:39:23 | 显示全部楼层
  1. [FONT=courier new]
  2. (setq ss1(ssget "X" '((2 . "块名称"))))
  3. ;;;阵列
  4. ;;;
  5. (setq ss2(ssget "X" '((2 . "块名称"))))
  6. (command"select" ss2 "r" ss1 "")
  7. (setq ss (ssget"p"))
  8. (command"explode" ss "")
  9. [/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-29 05:30 , Processed in 0.365620 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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