悬赏,求大神开发个把外部参照一键修改为某个图层
1、要求把外部参照整体的图层(注意是壳,就是外部参照块,不是内部的各个图层,外部参照内部不变),一键改为图层“0-0-参照图层”;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;将文件中全部外部参照归置于"0-0-参照图层"图层
;命令:XCC
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(Defun C:XCC ( )
(vl-load-com)
;--------------------------------------------------------------------------------------
(setq Nme (getstring "\n请输入图层名称:<0-0-参照图层>"))
(if (or (= 33 (ascii Nme))(= 0 (ascii Nme)))
(setq Nme "0-0-参照图层")
)
(if (= (tblsearch "layer" Nme) nil)
(entmake (list
'(0 . "LAYER")
'(100 . "AcDbSymbolTableRecord")
'(100 . "AcDbLayerTableRecord")
'(70 . 4)
'(290 . 1)
(cons 2 Nme)
(cons 62 8)
)
)
)
(setvar "clayer" Nme)
(if (setq ss (ssget "x" '((0 . "insert"))))
(progn
(setq sl (sslength ss))
(while (setq e (ssname ss (setq sl (1- sl))))
(if (vlax-property-available-p
(setq obj (vlax-ename->vla-object e))
'Path
)
(progn
(vl-catch-all-apply 'vla-put-layer (list obj Nme))
;(print (vla-get-name obj))
)
)
)
)
)
;--------------------------------------------------------------------------------------
(prin1)
)
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
本帖最后由 ssyfeng 于 2023-9-16 15:13 编辑
应该是这样吧.....
ssyfeng 发表于 2023-9-15 21:08
不太明白什么意思.....
外部参照,不是一个整块吗,整块会在某个图层上,我需要的是把整块外部参照所有的,改到一个图层上,比如10个外部参照,一次性改图层到”0-0-参照图层”上。
下面的这个BT0是把块(含外部参照,并当成块)归到"0-0-块图层"这个图层
,我希望的是我只改变外部参照的图层
;;25-图块归0图层BT0
(defun c:BT0 ( )
(alert "天神提醒:
请先用插件进行 外部参照块图层整理。
命令【BR0】外部参照图层整理,所有外部参照归入图层【0-0-参照图层】。
然后锁定参照图层,即可不改变参照图层,否则外部参照也会被归入本图层。
有图层0-0-块图层,则加入本图层;无0-0-块图层,则自动建立0-0-块图层。
继续执行 请空格!!!")
(if (setq ss (ssget "_A" (list (cons 0 "INSERT"))))
(progn
(setq i 0)
(repeat (sslength ss)
(setq ent (ssname ss i))
(setq dxf (entget ent))
(entmod (subst (cons 8 "0-0-块图层")(assoc 8 dxf) dxf))
(entupd ent)
(setq i (1+ i))
)
)
)
)
ssyfeng 发表于 2023-9-15 21:08
应该是这样吧.....
可以,不过比楼上慢了一点,明天给你评2个币,还有就是稍微比楼上卡一点 ssyfeng 发表于 2023-9-15 21:08
应该是这样吧.....
谢谢,老总的插件 本帖最后由 菜鸟初来乍到 于 2024-4-13 11:34 编辑
845245015 发表于 2023-9-15 16:55
大神,能帮忙修改一下吗?就是参照图层建立好放好参照之后,自动改回到原来的图层为当前图层 感谢作者的分享!
页:
[1]