明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2031|回复: 11

求三个类似源泉图层、填充、线型的控制面板?

[复制链接]
发表于 2024-1-1 19:47:09 | 显示全部楼层 |阅读模式
本帖最后由 zilong136 于 2024-1-2 15:10 编辑

要求类似源泉这种图层面板样式,可自定义图层、颜色、线型、线宽、打印情况以及图层快捷键。要求通过双击面板或输入对应快捷键后,再去点击需要更改的对象都可以生效。

本帖子中包含更多资源

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

x
发表于 2024-1-31 13:48:15 | 显示全部楼层
1. 建图层列表(越详细越好),一个命令加载这些图层,一个命令恢复修改这些图层参数。
2. 建一个模版dwt图纸,在图纸空间分类好图层设定(layerstate),如颜色,线型。
使用上基本没烦恼


  1. (defun c:l1( / doc lay)
  2.         (vl-load-com)
  3.         (setq doc (Vlax-Get (Vlax-Get-Acad-Object) 'ActiveDocument))       
  4.    (foreach lt '("A-虚线" "A-双点划线" "A-三点划线" "A-点划线" "A-点线")
  5.      (if (not (tblsearch "ltype" lt))
  6.        (Vlax-Invoke-Method (Vlax-Get doc 'Linetypes) 'Load lt "x1.lin" )
  7.      )
  8.    )
  9.         (foreach lst '(
  10.                         ("DEFPOINTS" 164 "Continuous");;55
  11.                         ("0-PS-标注-尺寸" 127 "A-虚线");;88
  12.                         ("0-PS-标注-门编号" 2 "Continuous");;0drt
  13.                         ("0-PS-标注-软装编号" 21 "A-虚线");;
  14.                         ("0-PS-标注-索引" 127 "Continuous");;
  15.                         ("0-PS-标注-文字" 127 "A-虚线");;0t
  16.                         ("0-PS-标注-五金洁具" 127 "A-虚线");;
  17.                         ("0-PS-辅助线" 1 "A-虚线");;0w3
  18.                         ("0-管井" 251 "Continuous");;gj
  19.                         ("0-建筑标高" 3 "Continuous");;0bg
  20.                         ("0-建筑地漏" 1 "Continuous");;0dl
  21.                         ("0-建筑栏杆" 1 "Continuous");;0lg
  22.                         ("0-建筑立管" 1 "Continuous");;0wt
  23.                         ("0-梁位" 161 "Continuous");;
  24.                         ("0-梁位文字" 161 "Continuous");;
  25.                         ("0-文字" 1 "A-虚线");;
  26.                         ("0-消防层" 6 "Continuous");;
  27.                         ("0-消火栓" 1 "Continuous");;
  28.                         ("0-原建筑窗" 3 "Continuous");;0wd
  29.                         ("0-原建筑门" 3 "Continuous");;0dr
  30.                         ("0-建筑墙" 7 "Continuous");;0wa
  31.                         ("0-轴线" 1 "A-点划线");;zx
  32.                         ("LIFT" 3 "A-虚线");;
  33.                         ("STAIR" 3 "Continuous");;
  34.                         ("FIN" 1 "A-虚线");;
  35.                         ("COLUMN" 252 "Continuous");;0z
  36.                         ("COL_FILL" 252 "Continuous");;
  37.                         ("DOOR" 3 "Continuous");;
  38.                         ("DOOR-门套" 3 "Continuous");;
  39.                         ("WALL" 7 "Continuous");;waa
  40.                         ("WALL" 7 "Continuous");;waa
  41.                         ("WALL-不到顶间墙" 2 "Continuous");;
  42.                         ("WALL-新砌墙体" 7 "Continuous");;
  43.                         ("WALL-填充" 252 "Continuous");;
  44.                         ("WINDOW" 3 "Continuous");;
  45.                         ("P-玻璃间隔" 3 "Continuous");;wdd
  46.                         ("P-玻璃间隔" 1 "Continuous");;wddd
  47.                         ("WINDOW_TEXT" 8 "Continuous");;
  48.                         ("构造线层" 2 "Continuous");;
  49.                         ("BALCONY" 1 "Continuous");;0y阳台
  50.                         ("AREA" 6 "A-虚线");;
  51.                         ("AXIS" 8 "Continuous");;ax
  52.                         ("P-窗帘" 14 "Continuous");;
  53.                         ("P-固定家具(不落地不到顶);;" 3 "Continuous");;
  54.                         ("P-固定家具(不落地到顶);;" 3 "Continuous");;
  55.                         ("P-固定家具(落地);;" 3 "Continuous");;
  56.                         ("P-固定家具(落地到顶);;" 3 "Continuous");;
  57.                         ("P-固定家具(细);;(不落地不到顶);;" 251 "A-虚线");;
  58.                         ("P-固定家具(细);;(不落地到顶);;" 251 "A-虚线");;
  59.                         ("P-固定家具(细);;(落地);;" 251 "A-虚线");;
  60.                         ("P-固定家具(细);;(落地到顶);;" 251 "A-虚线");;
  61.                         ("P-活动家具" 3 "A-虚线");;
  62.                         ("P-活动家具(细);;" 251 "A-虚线");;
  63.                         ("P-洁具(不落地);;" 31 "Continuous");;
  64.                         ("P-洁具(落地);;" 41 "Continuous");;
  65.                         ("P-洁具(吸顶);;" 43 "Continuous");;
  66.                         ("P-洁具(细);;(不落地);;" 251 "Continuous");;
  67.                         ("P-洁具(细);;(落地);;" 251 "Continuous");;
  68.                         ("P-洁具(细);;(吸顶);;" 251 "Continuous");;
  69.                         ("P-栏杆" 1 "Continuous");;
  70.                         ("P-平面标高" 127 "Continuous");;
  71.                         ("P-文字(区域名称);;" 40 "Continuous");;
  72.                         ("P-文字(说明);;" 42 "A-虚线");;
  73.                         ("P-造型完成面" 6 "Continuous");;
  74.                         ("P-植物" 95 "Continuous");;
  75.                         ("P-植物(细);;" 252 "Continuous");;
  76.                         ("PL-壁灯" 41 "Continuous");;
  77.                         ("PL-平面灯具" 41 "Continuous");;
  78.                         ("PL-平面灯具编号" 1 "Continuous");;
  79.                         ("GLASS" 1 "Continuous");;
  80.                         ("B-拆除墙体" 1 "A-虚线");;
  81.                         ("B-拆除墙体填充" 251 "Continuous");;
  82.                         ("B-新起间墙填充" 251 "Continuous");;
  83.                         ("C-风口" 1 "Continuous");;
  84.                         ("C-天花" 2 "Continuous");;
  85.                         ("C-天花-(浅);;" 3 "Continuous");;
  86.                         ("C-天花-摄像头" 146 "Continuous");;
  87.                         ("C-天花-背景音乐" 104 "Continuous");;
  88.                         ("C-天花标高" 181 "Continuous");;
  89.                         ("C-天花灯具" 41 "A-双点划线");;
  90.                         ("C-天花灯具编号" 1 "A-双点划线");;
  91.                         ("C-天花风口" 3 "Continuous");;
  92.                         ("C-天花-监控" 86 "Continuous");;
  93.                         ("C-天花门线" 1 "Continuous");;
  94.                         ("C-天花-喷淋" 102 "Continuous");;
  95.                         ("C-天花填充" 251 "Continuous");;
  96.                         ("C-天花文字" 127 "A-虚线");;
  97.                         ("C-天花-消防广播" 104 "Continuous");;
  98.                         ("C-天花-烟感" 134 "Continuous");;
  99.                         ("C-天花造型大样" 144 "Continuous");;
  100.                         ("FL-地花" 3 "Continuous");;
  101.                         ("FL-地花-防水" 2 "A-虚线");;
  102.                         ("FL-地花填充" 251 "Continuous");;
  103.                         ("FL-地花造型大样" 144 "Continuous");;
  104.                         ("FL-文字" 127 "A-虚线");;
  105.                         ("DS-LX-插座(强电);;连线" 4 "A-三点划线");;
  106.                         ("DS-LX-插座(弱电);;连线" 4 "A-三点划线");;
  107.                         ("DS-LX-平面灯具连线" 4 "A-三点划线");;
  108.                         ("DS-LX-天花灯具连线" 4 "A-三点划线");;
  109.                         ("DS-插座(强电);;" 93 "Continuous");;
  110.                         ("DS-插座(弱电);;" 155 "Continuous");;
  111.                         ("DS-电箱层" 11 "Continuous");;
  112.                         ("DS-开关" 3 "Continuous");;

  113.                         ("SS-地漏" 251 "Continuous");;
  114.                         ("SS-给水" 3 "Continuous");;
  115.                         ("SS-给水(冷);;" 4 "Continuous");;
  116.                         ("SS-给水(热);;" 1 "Continuous");;
  117.                         ("SS-排水" 4 "Continuous");;
  118.                         ("SS-水点位" 2 "Continuous");;

  119.                         ("DT-壁纸&乳胶漆" 2 "A-虚线");;
  120.                         ("DT-玻璃&镜子" 2 "Continuous");;
  121.                         ("DT-玻璃&镜子填充" 237 "Continuous");;
  122.                         ("DT-基层" 1 "Continuous");;
  123.                         ("DT-基层填充" 237 "Continuous");;
  124.                         ("DT-结构" 7 "Continuous");;
  125.                         ("DT-结构填充" 252 "Continuous");;
  126.                         ("DT-金属" 2 "Continuous");;
  127.                         ("DT-金属填充" 237 "Continuous");;
  128.                         ("DT-木" 2 "Continuous");;
  129.                         ("DT-木饰面" 2 "Continuous");;
  130.                         ("DT-木填充" 237 "Continuous");;
  131.                         ("DT-皮布" 2 "Continuous");;
  132.                         ("DT-皮布填充" 237 "Continuous");;
  133.                         ("DT-砌筑" 4 "Continuous");;
  134.                         ("DT-砌筑填充" 252 "Continuous");;
  135.                         ("DT-石材" 2 "Continuous");;
  136.                         ("DT-石材填充" 237 "Continuous");;
  137.                         ("DT-石膏" 2 "Continuous");;
  138.                         ("DT-石膏填充" 237 "Continuous");;
  139.                         ("DT-粘胶" 252 "Continuous");;

  140.                         ("EL-结构" 7 "Continuous");;
  141.                         ("EL-结构填充" 128 "Continuous");;
  142.                         ("EL-立面机电" 135 "Continuous");;
  143.                         ("EL-立面填充" 251 "Continuous");;
  144.                         ("EL-立面造型" 1 "Continuous");;
  145.                         ("EL-砌筑" 4 "Continuous");;
  146.                         ("EL-砌筑填充" 128 "Continuous");;
  147.                         ("EL-完成面" 2 "Continuous");;
  148.                       )
  149.                 (setq lay (Vla-Add (Vlax-Get doc 'Layers) (car lst) ))
  150.                 (Vlax-Put-Property lay 'Color (cadr lst) )
  151.                 (Vlax-Put-Property lay 'Linetype (caddr lst) )
  152.    )
  153.    (princ)
  154. )

  155. (defun c:l2 ();;图层重调整
  156.       (change_layer_dxf "DEFPOINTS" '((62 . 164) (6 . "Continuous")))
  157.       (change_layer_dxf "0-PS-标注-尺寸" '((62 . 151) (6 . "A-虚线")))
  158.       (change_layer_dxf "0-PS-标注-门编号" '((62 . 2) (6 . "Continuous")))
  159.       (change_layer_dxf "0-PS-标注-软装编号" '((62 . 21) (6 . "A-虚线")))
  160.       (change_layer_dxf "0-PS-标注-索引" '((62 . 151) (6 . "Continuous")))
  161.       (change_layer_dxf "0-PS-标注-文字" '((62 . 151) (6 . "A-虚线")))
  162.       (change_layer_dxf "0-PS-标注-五金洁具" '((62 . 151) (6 . "A-虚线")))
  163.       (change_layer_dxf "0-PS-辅助线" '((62 . 1) (6 . "A-虚线")))
  164.       (change_layer_dxf "0-管井" '((62 . 251) (6 . "Continuous")))
  165.       (change_layer_dxf "0-建筑标高" '((62 . 3) (6 . "Continuous")))
  166.       (change_layer_dxf "0-建筑地漏" '((62 . 1) (6 . "Continuous")))
  167.       (change_layer_dxf "0-建筑栏杆" '((62 . 1) (6 . "Continuous")))
  168.       (change_layer_dxf "0-建筑立管" '((62 . 1) (6 . "Continuous")))
  169.       (change_layer_dxf "0-梁位" '((62 . 161) (6 . "Continuous")))
  170.       (change_layer_dxf "0-梁位文字" '((62 . 161) (6 . "Continuous")))
  171.       (change_layer_dxf "0-文字" '((62 . 1) (6 . "A-虚线")))
  172.       (change_layer_dxf "0-消防层" '((62 . 6) (6 . "Continuous")))
  173.       (change_layer_dxf "0-消火栓" '((62 . 1) (6 . "Continuous")))
  174.       (change_layer_dxf "0-原建筑窗" '((62 . 3) (6 . "Continuous")))
  175.       (change_layer_dxf "0-原建筑门" '((62 . 3) (6 . "Continuous")))
  176.       (change_layer_dxf "0-轴线" '((62 . 1) (6 . "A-点划线")))
  177.       (change_layer_dxf "LIFT" '((62 . 3) (6 . "A-虚线")))
  178.       (change_layer_dxf "STAIR" '((62 . 3) (6 . "Continuous")))
  179.       (change_layer_dxf "FIN" '((62 . 1) (6 . "A-虚线")))
  180.       (change_layer_dxf "COLUMN" '((62 . 252) (6 . "Continuous")))
  181.       (change_layer_dxf "COL_FILL" '((62 . 252) (6 . "Continuous")))
  182.       (change_layer_dxf "DOOR" '((62 . 3) (6 . "Continuous")))
  183.       (change_layer_dxf "DOOR-门套" '((62 . 3) (6 . "Continuous")))
  184.       (change_layer_dxf "WALL" '((62 . 7) (6 . "Continuous")))
  185.       (change_layer_dxf "WALL-不到顶间墙" '((62 . 2) (6 . "Continuous")))
  186.       (change_layer_dxf "WALL-新砌墙体" '((62 . 7) (6 . "Continuous")))
  187.       (change_layer_dxf "WALL-填充" '((62 . 252) (6 . "Continuous")))
  188.       (change_layer_dxf "WINDOW" '((62 . 3) (6 . "Continuous")))
  189.       (change_layer_dxf "WINDOW_TEXT" '((62 . 8) (6 . "Continuous")))
  190.       (change_layer_dxf "构造线层" '((62 . 2) (6 . "Continuous")))
  191.       (change_layer_dxf "BALCONY" '((62 . 1) (6 . "Continuous")))
  192.       (change_layer_dxf "AREA" '((62 . 6) (6 . "A-虚线")))
  193.       (change_layer_dxf "AXIS" '((62 . 8) (6 . "Continuous")))

  194.       (change_layer_dxf "P-窗帘" '((62 . 14) (6 . "Continuous")))
  195.       (change_layer_dxf "P-固定家具(不落地不到顶)" '((62 . 3) (6 . "Continuous")))
  196.       (change_layer_dxf "P-固定家具(不落地到顶)" '((62 . 3) (6 . "Continuous")))
  197.       (change_layer_dxf "P-固定家具(落地)" '((62 . 3) (6 . "Continuous")))
  198.       (change_layer_dxf "P-固定家具(落地到顶)" '((62 . 3) (6 . "Continuous")))
  199.       (change_layer_dxf "P-固定家具(细)(不落地不到顶)" '((62 . 251) (6 . "A-虚线")))
  200.       (change_layer_dxf "P-固定家具(细)(不落地到顶)" '((62 . 251) (6 . "A-虚线")))
  201.       (change_layer_dxf "P-固定家具(细)(落地)" '((62 . 251) (6 . "A-虚线")))
  202.       (change_layer_dxf "P-固定家具(细)(落地到顶)" '((62 . 251) (6 . "A-虚线")))
  203.       (change_layer_dxf "P-活动家具" '((62 . 3) (6 . "A-虚线")))
  204.       (change_layer_dxf "P-活动家具(细)" '((62 . 251) (6 . "A-虚线")))
  205.       (change_layer_dxf "P-洁具(不落地)" '((62 . 31) (6 . "Continuous")))
  206.       (change_layer_dxf "P-洁具(落地)" '((62 . 41) (6 . "Continuous")))
  207.       (change_layer_dxf "P-洁具(吸顶)" '((62 . 43) (6 . "Continuous")))
  208.       (change_layer_dxf "P-洁具(细)(不落地)" '((62 . 251) (6 . "Continuous")))
  209.       (change_layer_dxf "P-洁具(细)(落地)" '((62 . 251) (6 . "Continuous")))
  210.       (change_layer_dxf "P-洁具(细)(吸顶)" '((62 . 251) (6 . "Continuous")))
  211.       (change_layer_dxf "P-栏杆" '((62 . 1) (6 . "Continuous")))
  212.       (change_layer_dxf "P-平面标高" '((62 . 151) (6 . "Continuous")))
  213.       (change_layer_dxf "P-文字(区域名称)" '((62 . 40) (6 . "Continuous")))
  214.       (change_layer_dxf "P-文字(说明)" '((62 . 42) (6 . "A-虚线")))
  215.       (change_layer_dxf "P-造型完成面" '((62 . 6) (6 . "Continuous")))
  216.       (change_layer_dxf "P-植物" '((62 . 95) (6 . "Continuous")))
  217.       (change_layer_dxf "P-植物(细)" '((62 . 252) (6 . "Continuous")))
  218.       (change_layer_dxf "PL-壁灯" '((62 . 41) (6 . "Continuous")))
  219.       (change_layer_dxf "PL-平面灯具" '((62 . 41) (6 . "Continuous")))
  220.       (change_layer_dxf "PL-平面灯具编号" '((62 . 1) (6 . "Continuous")))
  221.       (change_layer_dxf "GLASS" '((62 . 1) (6 . "Continuous")))

  222.       (change_layer_dxf "B-拆除墙体" '((62 . 1) (6 . "A-虚线")))
  223.       (change_layer_dxf "B-拆除墙体填充" '((62 . 251) (6 . "Continuous")))
  224.       (change_layer_dxf "B-新起间墙填充" '((62 . 251) (6 . "Continuous")))

  225.       (change_layer_dxf "C-风口" '((62 . 1) (6 . "Continuous")))
  226.       (change_layer_dxf "C-天花" '((62 . 2) (6 . "Continuous")))
  227.       (change_layer_dxf "C-天花-(浅)" '((62 . 3) (6 . "Continuous")))
  228.       (change_layer_dxf "C-天花-摄像头" '((62 . 146) (6 . "Continuous")))
  229.       (change_layer_dxf "C-天花-背景音乐" '((62 . 104) (6 . "Continuous")))
  230.       (change_layer_dxf "C-天花标高" '((62 . 181) (6 . "Continuous")))
  231.       (change_layer_dxf "C-天花灯具" '((62 . 41) (6 . "A-双点划线")))
  232.       (change_layer_dxf "C-天花灯具编号" '((62 . 1) (6 . "A-双点划线")))
  233.       (change_layer_dxf "C-天花风口" '((62 . 3) (6 . "Continuous")))
  234.       (change_layer_dxf "C-天花-监控" '((62 . 86) (6 . "Continuous")))
  235.       (change_layer_dxf "C-天花门线" '((62 . 1) (6 . "Continuous")))
  236.       (change_layer_dxf "C-天花-喷淋" '((62 . 102) (6 . "Continuous")))
  237.       (change_layer_dxf "C-天花填充" '((62 . 251) (6 . "Continuous")))
  238.       (change_layer_dxf "C-天花文字" '((62 . 151) (6 . "A-虚线")))
  239.       (change_layer_dxf "C-天花-消防广播" '((62 . 104) (6 . "Continuous")))
  240.       (change_layer_dxf "C-天花-烟感" '((62 . 134) (6 . "Continuous")))
  241.       (change_layer_dxf "C-天花造型大样" '((62 . 144) (6 . "Continuous")))

  242.       (change_layer_dxf "FL-地花" '((62 . 3) (6 . "Continuous")))
  243.       (change_layer_dxf "FL-地花-防水" '((62 . 2) (6 . "A-虚线")))
  244.       (change_layer_dxf "FL-地花填充" '((62 . 251) (6 . "Continuous")))
  245.       (change_layer_dxf "FL-地花造型大样" '((62 . 144) (6 . "Continuous")))
  246.       (change_layer_dxf "FL-文字" '((62 . 151) (6 . "A-虚线")))

  247.       (change_layer_dxf "DS-LX-插座(强电)连线" '((62 . 4) (6 . "A-三点划线")))
  248.       (change_layer_dxf "DS-LX-插座(弱电)连线" '((62 . 4) (6 . "A-三点划线")))
  249.       (change_layer_dxf "DS-LX-平面灯具连线" '((62 . 4) (6 . "A-三点划线")))
  250.       (change_layer_dxf "DS-LX-天花灯具连线" '((62 . 4) (6 . "A-三点划线")))
  251.       (change_layer_dxf "DS-插座(强电)" '((62 . 93) (6 . "Continuous")))
  252.       (change_layer_dxf "DS-插座(弱电)" '((62 . 155) (6 . "Continuous")))
  253.       (change_layer_dxf "DS-电箱层" '((62 . 11) (6 . "Continuous")))
  254.       (change_layer_dxf "DS-开关" '((62 . 3) (6 . "Continuous")))

  255.       (change_layer_dxf "SS-地漏" '((62 . 251) (6 . "Continuous")))
  256.       (change_layer_dxf "SS-给水" '((62 . 3) (6 . "Continuous")))
  257.       (change_layer_dxf "SS-给水(冷)" '((62 . 4) (6 . "Continuous")))
  258.       (change_layer_dxf "SS-给水(热)" '((62 . 1) (6 . "Continuous")))
  259.       (change_layer_dxf "SS-排水" '((62 . 4) (6 . "Continuous")))
  260.       (change_layer_dxf "SS-水点位" '((62 . 2) (6 . "Continuous")))

  261.       (change_layer_dxf "DT-壁纸&乳胶漆" '((62 . 2) (6 . "A-虚线")))
  262.       (change_layer_dxf "DT-玻璃&镜子" '((62 . 2) (6 . "Continuous")))
  263.       (change_layer_dxf "DT-玻璃&镜子填充" '((62 . 237) (6 . "Continuous")))
  264.       (change_layer_dxf "DT-基层" '((62 . 1) (6 . "Continuous")))
  265.       (change_layer_dxf "DT-基层填充" '((62 . 237) (6 . "Continuous")))
  266.       (change_layer_dxf "DT-结构" '((62 . 7) (6 . "Continuous")))
  267.       (change_layer_dxf "DT-结构填充" '((62 . 252) (6 . "Continuous")))
  268.       (change_layer_dxf "DT-金属" '((62 . 2) (6 . "Continuous")))
  269.       (change_layer_dxf "DT-金属填充" '((62 . 237) (6 . "Continuous")))
  270.       (change_layer_dxf "DT-木" '((62 . 2) (6 . "Continuous")))
  271.       (change_layer_dxf "DT-木饰面" '((62 . 2) (6 . "Continuous")))
  272.       (change_layer_dxf "DT-木填充" '((62 . 237) (6 . "Continuous")))
  273.       (change_layer_dxf "DT-皮布" '((62 . 2) (6 . "Continuous")))
  274.       (change_layer_dxf "DT-皮布填充" '((62 . 237) (6 . "Continuous")))
  275.       (change_layer_dxf "DT-砌筑" '((62 . 4) (6 . "Continuous")))
  276.       (change_layer_dxf "DT-砌筑填充" '((62 . 252) (6 . "Continuous")))
  277.       (change_layer_dxf "DT-石材" '((62 . 2) (6 . "Continuous")))
  278.       (change_layer_dxf "DT-石材填充" '((62 . 237) (6 . "Continuous")))
  279.       (change_layer_dxf "DT-石膏" '((62 . 2) (6 . "Continuous")))
  280.       (change_layer_dxf "DT-石膏填充" '((62 . 237) (6 . "Continuous")))
  281.       (change_layer_dxf "DT-粘胶" '((62 . 252) (6 . "Continuous")))

  282.       (change_layer_dxf "EL-结构" '((62 . 7) (6 . "Continuous")))
  283.       (change_layer_dxf "EL-结构填充" '((62 . 128) (6 . "Continuous")))
  284.       (change_layer_dxf "EL-立面机电" '((62 . 135) (6 . "Continuous")))
  285.       (change_layer_dxf "EL-立面填充" '((62 . 251) (6 . "Continuous")))
  286.       (change_layer_dxf "EL-立面造型" '((62 . 1) (6 . "Continuous")))
  287.       (change_layer_dxf "EL-砌筑" '((62 . 4) (6 . "Continuous")))
  288.       (change_layer_dxf "EL-砌筑填充" '((62 . 128) (6 . "Continuous")))
  289.       (change_layer_dxf "EL-完成面" '((62 . 2) (6 . "Continuous")))
  290. )
 楼主| 发表于 2024-2-5 01:34:16 | 显示全部楼层
本帖最后由 zilong136 于 2024-2-5 02:35 编辑
alexmai 发表于 2024-1-31 13:48
1. 建图层列表(越详细越好),一个命令加载这些图层,一个命令恢复修改这些图层参数。
2. 建一个模版dwt ...  

  • 帮我看下这怎么改?

    • (defun c:w5( / doc lay)
    •   (vl-load-com)
    •   (setq doc (Vlax-Get (Vlax-Get-Acad-Object) 'ActiveDocument))        
    •   (foreach lt '("A-虚线" "A-双点划线" "A-三点划线" "A-点划线" "A-点线")
    •     (if (not (tblsearch "ltype" lt))
    •       (Vlax-Invoke-Method (Vlax-Get doc 'Linetypes) 'Load lt "D:\CAD线型\acadiso.lin");此处需要acadiso.lin线型文件
    •     )
    •   )
    •   (foreach lst (list
    •                  
    •                  '("0" 7 "Continuous"   25))
    •     '("Defpoints"   7   "Continuous"   25)
    •     '("0-轴线"   251   "DOTE"     5))
    •   '("0-标注"   3   "Continuous"   25))
    • '( "0-文字说明"   7   "Continuous"   25))
    • '("1-梁枋"   2   "Continuous"   25)
    • '( "1-梁枋-原有"   2   "Continuous"   25)
    • '("1-梁枋-新建"   2   "Continuous"   25)
    • '("2-墙体"   7   "Continuous"   25)
    • '( "2-墙体-原有"   7   "Continuous"   0.25)   
    • '("2-墙体-新建"   7   "Continuous"   0.25)      
    • '( "3-柱子"   7   "Continuous"   0.25)      
    • '("3-柱子-原有"   7   "Continuous"   0.25)      
    • '("3-柱子-新建"   7   "Continuous"   0.25)        
    • '("3-柱子-柱顶石"   136   "Continuous"   25)  
    • '("3-柱子-柱顶石-原有"   136   "Continuous"   25)   
    • '( "3-柱子-柱顶石-新建"   136   "Continuous"   25)
    • '("4-门窗"   4   "Continuous"   25)        
    • '( "4-门窗-原有"   4   "Continuous"   25)        
    • '( "4-门窗-新建"   4   "Continuous"   25)        
    • '("5-楼枕、楼板"   11   "Continuous"   25)
    • '("5-楼枕、楼板-原有"   11   "Continuous"   25)
    • '( "5-楼枕、楼板-新建"   11   "Continuous"   25)        
    • '( "6-檩条"   40   "Continuous"   25)
    • '( "6-檩条-原有"   40   "Continuous"   25)        
    • '("6-檩条-新建"   40   "Continuous"   25)        
    • '("7-木桷板"   30   "Continuous"   25)
    • '("7-木桷板-原有"   30   "Continuous"   25)        
    • '( "7-木桷板-新建"   30   "Continuous"   25)        
    • '( "8-屋面"   4   "Continuous"   25)
    • '( "8-屋面-原有"   4   "Continuous"   25)        
    • '( "8-屋面-新建"   4   "Continuous"   25)        
    • '("0-填充"   251   "Continuous"   5)
    • '( "0-填充-原有"   251   "Continuous"   5)        
    • '( "0-填充-新建"   251   "Continuous"   5)        
    • '("0-斗拱"   7   "Continuous"   25)
    • '( "0-斗拱-原有"   7   "Continuous"   25)        
    • '( "0-斗拱-新建"   7   "Continuous"   25)        
    • '( "0-椽条"   61   "Continuous"   25)
    • '("0-椽条-原有"   61   "Continuous"   25)        
    • '("0-椽条-新建"   61   "Continuous"   25)        
    • '("0-构件"   7  "Continuous"   25)
    • '( "0-构件-原有"   7   "Continuous"   25)
    • '("0-构件-新建"   7   "Continuous"   25)        
    • '("0-楼梯"   4   "Continuous"   25)
    • '("0-楼梯-原有"   4  "Continuous"   25)        
    • '( "0-楼梯-新建"   4   "Continuous"   25)        
    • '( "0-瓦"     251  "Continuous"   5)
    • '( "0-瓦-原有"   251  "Continuous"   5)      
    • '("0-瓦-新建"   251   "Continuous"   5)
    • ;按上面格式自行添加图层信息(图层名 颜色 线型 线宽),注:此处线宽需将真实线宽乘以100!
    • )
    • (setq lay (Vla-Add (Vlax-Get doc 'Layers) (car lst)))
    • (Vlax-Put-Property lay 'Color (cadr lst))
    • (Vlax-Put-Property lay 'Linetype (caddr lst))
    • (Vlax-Put-Property lay 'Lineweight (cadddr lst))
    • )
    • (princ)
    • )
    • ;;修改图层子函数
    • ;;2图层名,62颜色,6线型,370线宽,290打印标记为0时不打印此图层,
    • ;;70标准标记1=冻结图层,2=默认情况下在新视口中冻结图层,4=锁定图层
    • (defun change_layer_dxf ( layer_name   subst_lists / layer_en ent_list subst_list)
    •   (if (setq  layer_en(tblobjname  "layer"  layer_name))
    •     (progn   
    •       (setq  ent_list (entget layer_en))
    •       (foreach subst_list  subst_lists
    •         (setq ent_list(subst subst_list (assoc (car subst_list) ent_list) ent_list))
    •       )
    •       (entmod ent_list)
    •       (entupd layer_en)
    •     )
    •     (alert (strcat "未找到"  layer_name "图层"))
    •   )
    •   (princ)
    • )
    • (defun c:w6 ();;图层重调整
    •         (change_layer_dxf "0" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 1)))
    •        (change_layer_dxf "Defpoints" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))
    •        (change_layer_dxf "0-轴线" '((62 . 251) (6 . "DOTE")(370 . 25)(290 . 0)))  
    •        (change_layer_dxf "0-标注" '((62 . 3) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •       (change_layer_dxf "0-文字说明" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))
    •   
    •       (change_layer_dxf "1-梁枋" '((62 . 2) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •       (change_layer_dxf "1-梁枋-原有" '((62 . 2) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •      (change_layer_dxf "1-梁枋-新建" '((62 . 2) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •   
    •      (change_layer_dxf "2-墙体" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))
    •      (change_layer_dxf "2-墙体-原有" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))
    •      (change_layer_dxf "2-墙体-新建" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))
    •   
    •      (change_layer_dxf "3-柱子" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))
    •      (change_layer_dxf "3-柱子-原有" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "3-柱子-新建" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))        
    •   
    •     (change_layer_dxf "3-柱子-柱顶石" '((62 . 136) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "3-柱子-柱顶石-原有" '((62 . 136) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •     (change_layer_dxf "3-柱子-柱顶石-新建" '((62 . 136) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •   
    •     (change_layer_dxf "4-门窗" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •     (change_layer_dxf "4-门窗-原有" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •     (change_layer_dxf "4-门窗-新建" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •   
    •     (change_layer_dxf "5-楼枕、楼板" '((62 . 11) (6 . "Continuous")(370 . 25)(290 . 0)))         
    •     (change_layer_dxf "5-楼枕、楼板-原有" '((62 . 11) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •     (change_layer_dxf "5-楼枕、楼板-新建" '((62 . 11) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •   
    •     (change_layer_dxf "6-檩条" '((62 . 40) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "6-檩条-原有" '((62 . 40) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •     (change_layer_dxf "6-檩条-新建" '((62 . 40) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •   
    •     (change_layer_dxf "7-木桷板" '((62 . 30) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "7-木桷板-原有" '((62 . 30) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "7-木桷板-新建" '((62 . 30) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •   
    •     (change_layer_dxf "8-屋面" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "8-屋面-原有" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •    (change_layer_dxf "8-屋面-新建" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))      
    •   
    •     (change_layer_dxf "0-填充" '((62 . 251) (6 . "Continuous")(370 . 5)(290 . 0)))  
    •     (change_layer_dxf "0-填充-原有" '((62 . 251) (6 . "Continuous")(370 . 5)(290 . 0)))   
    •     (change_layer_dxf "0-填充-新建" '((62 . 251) (6 . "Continuous")(370 . 5)(290 . 0)))   
    •   
    •     (change_layer_dxf "0-斗拱" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "0-斗拱-原有" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "0-斗拱-新建" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •   
    •   
    •     (change_layer_dxf "0-椽条" '((62 . 61) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "0-椽条-原有" '((62 . 61) (6 . "Continuous")(370 . 25)(290 . 0)))   
    •     (change_layer_dxf "0-椽条-新建" '((62 . 61) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •   
    •     (change_layer_dxf "0-构件" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))      
    •     (change_layer_dxf "0-构件-原有" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))         
    •     (change_layer_dxf "0-构件-新建" '((62 . 7) (6 . "Continuous")(370 . 25)(290 . 0)))      
    •   
    •     (change_layer_dxf "0-楼梯" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))      
    •     (change_layer_dxf "0-楼梯-原有" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •     (change_layer_dxf "0-楼梯-新建" '((62 . 4) (6 . "Continuous")(370 . 25)(290 . 0)))  
    •   
    •     (change_layer_dxf "0-瓦" '((62 . 251) (6 . "Continuous")(370 . 5)(290 . 0)))
    •     (change_layer_dxf "0-瓦-原有" '((62 . 251) (6 . "Continuous")(370 . 5)(290 . 0)))
    •     (change_layer_dxf "0-瓦-新建" '((62 . 251) (6 . "Continuous")(370 . 5)(290 . 0)))  

本帖子中包含更多资源

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

x
发表于 2024-2-3 15:11:22 | 显示全部楼层
zilong136 发表于 2024-1-31 17:36
l2命令内缺少了一个名为change_layer_dxf的函数

;;修改图层子函数
;;2图层名,62颜色,6线型,370线宽,290打印标记为0时不打印此图层,
;;70标准标记1=冻结图层,2=默认情况下在新视口中冻结图层,4=锁定图层
(defun change_layer_dxf ( layer_name   subst_lists / layer_en ent_list subst_list)
    (if (setq  layer_en(tblobjname  "layer"  layer_name))
      (progn   
        (setq  ent_list (entget layer_en))
        (foreach subst_list  subst_lists
        (setq ent_list(subst subst_list (assoc (car subst_list) ent_list) ent_list))
      )
      (entmod ent_list)
      (entupd layer_en)
    )
    (alert (strcat "未找到"  layer_name "图层"))
    )
    (princ)
)
发表于 2024-1-2 09:36:47 | 显示全部楼层
命令:CLASSICLAYER
 楼主| 发表于 2024-1-2 11:11:33 | 显示全部楼层
alexmai 发表于 2024-1-2 09:36
命令:CLASSICLAYER

不是这个图层管理器,我是要一个能快速自己定义跟管理图层的面板,既可以通过快捷键的方式去实现,也可以通过面板的方式去实现。面板的方式是这样操作:
1、双击图层面板;
2、去图中选择更改对象。
发表于 2024-1-2 11:48:00 | 显示全部楼层
cad自带的那个图层管理器,确实难用
发表于 2024-1-3 08:57:06 | 显示全部楼层
哪你就用源泉就可以了嘛
 楼主| 发表于 2024-1-3 09:10:49 | 显示全部楼层
yefei812678 发表于 2024-1-3 08:57
哪你就用源泉就可以了嘛

关键是源泉的面板不能直接双击去改实体对象,必须使用自定义的快捷键。我要面板跟快捷键都能用。
 楼主| 发表于 2024-1-31 17:36:51 | 显示全部楼层
本帖最后由 zilong136 于 2024-2-1 04:45 编辑
alexmai 发表于 2024-1-31 13:48
1. 建图层列表(越详细越好),一个命令加载这些图层,一个命令恢复修改这些图层参数。
2. 建一个模版dwt ...

l2命令内缺少了一个名为change_layer_dxf的函数
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 07:38 , Processed in 0.214754 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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