明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4775|回复: 8

悬赏求图层切换工具,(类似变色插件)欢迎各位高手赐教!

[复制链接]
发表于 2012-9-12 15:40:18 | 显示全部楼层 |阅读模式
1明经币
求一插件  最好是LSP(源码给我,加上天非专用插件www.tifchina.com版权信息 )
*图层切换功能(类似变色插件原理)
功能要求:我们做图只有十二种图层
例如A1命令就可以使”墙体图层“置为当前,选中图形后用A1命令还可以把选中的图形放在”墙体图层“ 去。
(最好带图块归0效果,例如我有一个图块,我用命令放到“墙体图层”要求这个图层内的所有文件都在墙体图层里面,不要我把这个图块放在“墙体图层”,结果我隐藏“墙体图层”,这个图层还没有被隐藏。)

我们的图层对应的命令如下,请参考以下内容进行编写程序。
图层名称                   命令
1-TIF-原墙体             11
2-TIF-FF-jiaju             12
2-TIF-FF-jiajuDW       13
2-TIF-FF-jieju             14
2-TIF-FF-men             15
2-TIF-FF-menxian     16
2-TIF-FF-完成面      17
3-TIF-ARDW          18
4-TIF-RC               21
4-TIF-RC-DW        22
4-TIF-RCdengju    23
5-TIF-fc                 24
7-TIF-IE                25
8-TIF-DS             26
9-TIF-布局标注    27
9-TIF-布局图框   28
Defpoints           31


最佳答案

查看完整内容

(defun c:11 ( / ) (to-lay "1-TIF-原墙体") (princ) ) (defun c:12 ( / ) (to-lay "2-TIF-FF-jiaju") (princ) ) (defun c:13 ( / ) (to-lay "2-TIF-FF-jiajuDW") (princ) ) (defun c:14 ( / ) (to-lay "2-TIF-FF-jieju") (princ) ) (defun c:15 ( / ) (to-lay "2-TIF-FF-men") (princ) ) (defun c:16 ( / ) (to-lay "2-TIF-FF-menxian") (princ) ) (defun c:17 ( / ...
发表于 2012-9-12 15:40:19 | 显示全部楼层
(defun c:11 ( / )
  (to-lay "1-TIF-原墙体")
  (princ)
  )
(defun c:12 ( / )
  (to-lay "2-TIF-FF-jiaju")
  (princ)
  )
(defun c:13 ( / )
  (to-lay "2-TIF-FF-jiajuDW")
  (princ)
  )
(defun c:14 ( / )
  (to-lay "2-TIF-FF-jieju")
  (princ)
  )
(defun c:15 ( / )
  (to-lay "2-TIF-FF-men")
  (princ)
  )
(defun c:16 ( / )
  (to-lay "2-TIF-FF-menxian")
  (princ)
  )
(defun c:17 ( / )
  (to-lay "2-TIF-FF-完成面")
  (princ)
  )
(defun c:18 ( / )
  (to-lay "3-TIF-ARDW")
  (princ)
  )
(defun c:21 ( / )
  (to-lay "4-TIF-RC")
  (princ)
  )
(defun c:22 ( / )
  (to-lay "4-TIF-RC-DW")
  (princ)
  )
(defun c:23 ( / )
  (to-lay "4-TIF-RCdengju")
  (princ)
  )
(defun c:24 ( / )
  (to-lay "5-TIF-fc")
  (princ)
  )
(defun c:25 ( / )
  (to-lay "7-TIF-IE")
  (princ)
  )
(defun c:26 ( / )
  (to-lay "8-TIF-DS")
  (princ)
  )
(defun c:27 ( / )
  (to-lay "9-TIF-布局标注")
  (princ)
  )
(defun c:28 ( / )
  (to-lay "9-TIF-布局图框")
  (princ)
  )
(defun c:27 ( / )
  (to-lay "Defpoints")
  (princ)
  )


(defun to-lay (lay / I LAYS LAY_OBJ SS SS_OBJS X)
  (vl-load-com)
  (setq ss (cadr (ssgetfirst)))
  (setq lays (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))))
  (if (vl-catch-all-error-p
        (setq lay_obj (vl-catch-all-apply 'vla-item (list lays lay)))
      )
    (setq lay_obj (vla-add lays lay))
  )
  (vla-put-Freeze lay_obj :vlax-false)
  (vla-put-Lock lay_obj :vlax-false)
  (vla-put-LayerOn lay_obj :vlax-true)
  (vla-put-ActiveLayer (vla-get-ActiveDocument (vlax-get-acad-object)) lay_obj)
  (if ss
    (progn
      (setq i -1 ss_objs '())
      (repeat (sslength ss)
        (setq ss_objs (cons (ssname ss (setq i (1+ i))) ss_objs))
        )
      (setq ss_objs (mapcar 'vlax-ename->vla-object ss_objs))
      (mapcar '(lambda(x) (vla-put-Layer x lay)) ss_objs)
      )
    )
  (princ)
  )
回复

使用道具 举报

发表于 2012-9-12 15:43:42 | 显示全部楼层
源码给我,加上天非专用插件www.tifchina.com版权信息???
大笑三声
回复

使用道具 举报

 楼主| 发表于 2012-9-12 15:46:41 | 显示全部楼层
CTC 发表于 2012-9-12 15:43
源码给我,加上天非专用插件www.tifchina.com版权信息???
大笑三声

按我上面的要求编写。至于版权信息,必须的,因为我是悬赏贴。这个图层也是我们专用的。
回复

使用道具 举报

 楼主| 发表于 2012-9-12 15:48:07 | 显示全部楼层
本帖最后由 天非深化设计 于 2012-9-12 15:51 编辑

以下是变色插件的源码,大家可以参考一下!

;;IDSPA.CN颜色及线型数字快捷键

;--------------------------------------------------------- `
(defun c:Y(/ ent)
(setq ent (ssget))
(command "change" ent "" "p" "c" "bylayer" "")
)
(defun c:cy()
(command "-color" "bylayer" )
)
;--------------------------------------------------------- 0
(defun c:0(/ ent)
(setq ent (ssget))
(command "change" ent "" "p" "c" "byblock" "")
)
(defun c:c0()
(command "-color" "byblock" )
)
;--------------------------------------------------------- 1
(defun c:1(/ ent)
(setq ent (ssget))
(command "change" ent "" "p" "c" "1" "")
)
(defun c:c1()
(command "-color" "1" )
)
;--------------------------------------------------------- 2
(defun c:2(/ ent)
(setq ent (ssget))
(command "change" ent "" "p" "c" "2" "")
)
(defun c:c2()
(command "-color" "2" )
)
;--------------------------------------------------------- 3
(defun c:3(/ ent)
(setq ent (ssget))
(command "change" ent "" "p" "c" "3" "")
)
(defun c:c3()
(command "-color" "3" )
)
;--------------------------------------------------------- 4
(defun c:4(/ ent)
(setq ent (ssget))
(command "change" ent "" "p" "c" "4" "")
)
(defun c:c4()
(command "-color" "4" )
)

回复

使用道具 举报

发表于 2012-9-12 16:41:57 | 显示全部楼层
这版权肯定不可能给你,楼主还是不要多想了。
回复

使用道具 举报

 楼主| 发表于 2012-9-12 16:44:34 | 显示全部楼层
yokees 发表于 2012-9-12 16:41
这版权肯定不可能给你,楼主还是不要多想了。

恩,行吧,给我把他编写成LSP吧!
回复

使用道具 举报

发表于 2012-10-24 11:12:44 | 显示全部楼层
lijiao 发表于 2012-9-12 15:40
(defun c:11 ( / )
  (to-lay "1-TIF-原墙体")
  (princ)

怎么不好用啊   求指教
回复

使用道具 举报

发表于 2024-2-12 15:25:53 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-18 08:23 , Processed in 0.190166 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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