查看单个帖子
旧 2009-04-27, 01:49 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 谁能帮忙看下如何实现这个功能

谁能帮忙看下如何实现这个功能
www.dimcax.com
谁能帮忙看下如何实现这个功能
就是选择一个图块后。让程序自动选择图中所有同名的图块

(ssget "x" (list (assoc 2 (entget (car (entsel))))))

图片:

.下面是一个程序,输入嗯要求的块名,它把相同的名放到一个kk表中.例:图中的块名为chuang 它的kk为("2582" "2e8b" "2e8c")
例:输入块名为hxx 它的kk ("3486" "3487" "3488" "3489") 表中是它的聚柄号
(setq a (handent (nth i kk))) i 从0开始.
你用list !a就能看到了
你将下面的程序考到嗯的cad下给一个名qkui.lsp在命令下用(load"qkui")回车就可使用,在命令下输入qkui回车就行.
(defun c:qkui ()
(prompt "输入要求的块名: ")
(setq aa (getstring) kk nil)
(setq een (ssget "x" '((0 . "insert"))))
(setq n (sslength een) i 0)
(repeat n
(setq en (entget (ssname een i)) a (cdr (assoc 2 en)) b (cdr (assoc 5 en)))
(if (= aa a)
(progn
(if (= kk nil)(setq kk (list b))(setq kk (cons b kk)))
))
(setq i (+ i 1))
)
)
gbg
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)