明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: sixth

[源码] 外部参照命令(全)加载、卸载、拆离、绑定[源码]

  [复制链接]
发表于 2017-9-9 23:26 | 显示全部楼层
参照的命令大集合哈,谢谢
发表于 2017-12-17 18:37 | 显示全部楼层
参照的命令大集合哈,谢谢,有了快捷键方便多了
发表于 2018-1-13 13:54 | 显示全部楼层
太好了,参照的命令大集合哈
发表于 2018-3-23 21:33 | 显示全部楼层
楼主的绑定有点小问题,我修改后发上去:
  1. Xref_V2.3.lsp

  2. ;Xref 命令:
  3. ;Reload/重载        Unload/卸载        Detach/拆离        Bind/绑定

  4. ;XFR        重载选定
  5. ;XFRA        重载所有
  6. ;XFX        卸载选定
  7. ;XFXA        卸载所有
  8. ;XFD        拆离选定
  9. ;XFDA        拆离所有
  10. ;XFB        绑定选定
  11. ;XFBA        绑定所有

  12. ; -------------------- Reload selected reference files ---------------------
  13. ; XFR  
  14. ; --------------------------------------------------------------------------
  15. (Defun C:XFR ( )        ;定義“重载选定参照文件”命令

  16.         (setvar "cmdecho" 0)        ;命令执行过程不回显提示和输入

  17.           (princ "\n选定要重新载入的参照文件:")

  18.           (if (setq SS (ssget))
  19.                     (progn
  20.                               (setq Rnames "")
  21.                               (repeat
  22.                                 (setq I (sslength SS))
  23.                                 (setq E (ssname SS (setq I (1- I))))
  24.                                 (setq ELIST (entget E))
  25.                                 (setq Rname (cdr (assoc 2 ELIST))) ;_参照名
  26.                                 (command "-xref" "R" Rname)
  27.                                 (setq Rnames (strcat Rname ", " Rnames)) ;_strcat 连接成字符串
  28.                               );end repeat
  29.                               (prompt "\n已经重载的文件为:")
  30.                               (princ Rnames)
  31.                     );end progn
  32.           );end if
  33.         (princ)
  34. )

  35. (prompt "\n<重载选定参照文件> 命令:XFR  ------by sixth 2010-11-17")         ;提示如何执行程序



  36. ; ------------------- Reload all reference files ---------------------
  37. ; XFRA
  38. ; --------------------------------------------------------------------
  39. (Defun C:XFRA ( )          ;定義“重新加载所有外部参照”命令
  40.         (setvar "cmdecho" 0)                ;命令执行过程不回显提示和输入
  41.         (command "-xref" "R" "*")
  42.           (princ)
  43. )

  44. (prompt "\n<重新加载所有外部参照> 命令:XFRA  ------by sixth 2010-10-13")         ;提示如何执行程序



  45. ; -------------------- Unload selected reference files ---------------------
  46. ; XFX
  47. ; --------------------------------------------------------------------------
  48. (Defun C:XFX ( )        ;定義“卸载选定参照文件”命令

  49.         (setvar "cmdecho" 0)        ;命令执行过程不回显提示和输入

  50.           (princ "\n选择要卸载的外部参照对象:")

  51.           (if (setq SS (ssget))
  52.                     (progn
  53.                               (setq Rnames "")
  54.                               (repeat
  55.                                 (setq I (sslength SS))
  56.                                 (setq E (ssname SS (setq I (1- I))))
  57.                                 (setq ELIST (entget E))
  58.                                 (setq Rname (cdr (assoc 2 ELIST))) ;_参照名
  59.                                 (command "-xref" "U" Rname)
  60.                                 (setq Rnames (strcat Rname ", " Rnames)) ;_strcat 连接成字符串
  61.                               );end repeat
  62.                               (prompt "\n已卸载的外部参照文件是:")
  63.                               (princ Rnames)
  64.                     );end progn
  65.           );end if
  66.         (princ)
  67. )

  68. (prompt "\n<卸载选定参照文件> 命令:XFX  ------by sixth 2010-11-17")         ;提示如何执行程序



  69. ; ------------------- Unload all reference files ---------------------
  70. ; XFXA
  71. ; --------------------------------------------------------------------
  72. (Defun C:XFXA ( )          ;定義“卸载所有外部参照”命令
  73.         (setvar "cmdecho" 0)                ;命令执行过程不回显提示和输入
  74.         (command "-xref" "U" "*")
  75.           (princ)
  76. )

  77. (prompt "\n<卸载所有外部参照> 命令:XFXA  ------by sixth 2010-10-13")         ;提示如何执行程序




  78. ; -------------------- Detach selected reference files ---------------------
  79. ; XFD
  80. ; --------------------------------------------------------------------------

  81. (Defun C:XFD ( )        ;定義“拆离选定参照文件”命令

  82.         (setvar "cmdecho" 0)        ;命令执行过程不回显提示和输入

  83.           (princ "\n选择要拆离的外部参照对象:")

  84.           (if (setq SS (ssget))
  85.                     (progn
  86.                               (setq Rnames "")
  87.                               (repeat
  88.                                 (setq I (sslength SS))
  89.                                 (setq E (ssname SS (setq I (1- I))))
  90.                                 (setq ELIST (entget E))
  91.                                 (setq Rname (cdr (assoc 2 ELIST))) ;_参照名
  92.                                 (command "-xref" "Detach" Rname)
  93.                                 (setq Rnames (strcat Rname ", " Rnames)) ;_strcat 连接成字符串
  94.                               );end repeat
  95.                               (prompt "\n已拆离的外部参照文件为:")
  96.                               (princ Rnames)
  97.                     );end progn
  98.           );end if
  99.         (princ)
  100. )

  101. (prompt "\n<拆离选定参照文件> 命令:XFD  ------by sixth 2010-11-17")         ;提示如何执行程序




  102. ; ------------------- Detach all reference files ---------------------
  103. ; XFDA
  104. ; --------------------------------------------------------------------
  105. (Defun C:XFDA ( )          ;定義“拆离所有外部参照”命令
  106.         (setvar "cmdecho" 0)                ;命令执行过程不回显提示和输入
  107.         (command "-xref" "Detach" "*")
  108.           (princ)
  109. )

  110. (prompt "\n<拆离所有外部参照> 命令:XFDA  ------by sixth 2010-10-25")         ;提示如何执行程序




  111. ; -------------------- Bind selected reference files ---------------------
  112. ; XFB
  113. ; --------------------------------------------------------------------------

  114. (Defun C:XFB ( )        ;定義“绑定选定参照文件”命令

  115.         (setvar "cmdecho" 0)        ;命令执行过程不回显提示和输入

  116.           (princ "\n选择要绑定的外部参照对象:")

  117.           (if (setq SS (ssget))
  118.                     (progn
  119.                               (setq Rnames "")
  120.                         (setq oldBT (getvar "BINDTYPE"))
  121.                         (setq BT (if (null BT) BT oldBT))
  122.                         (setq BT_tmp
  123.                                 (getstring
  124.                                         (strcat "输入绑定类型[绑定(0)/插入(1)]<" (itoa BT) ">: ")
  125.                                 )
  126.                         )
  127.                         (if (null BT_tmp) (setq BT_tmp BT))
  128.                         (setq BT (atoi BT_tmp))
  129.                         (setvar "BINDTYPE" BT)
  130.                               (repeat
  131.                                 (setq I (sslength SS))
  132.                                 (setq E (ssname SS (setq I (1- I))))
  133.                                 (setq ELIST (entget E))
  134.                                 (setq Rname (cdr (assoc 2 ELIST))) ;_参照名
  135.                                 (command "-xref" "Bind" Rname)
  136.                                 (setq Rnames (strcat Rname ", " Rnames)) ;_strcat 连接成字符串
  137.                               );end repeat
  138.                         (setvar "BINDTYPE" oldBT)
  139.                               (prompt "\n已绑定的外部参照文件为:")
  140.                               (princ Rnames)
  141.                     );end progn
  142.           );end if
  143.         (princ)
  144. )

  145. (prompt "\n<绑定选定参照文件> 命令:XFB  ------by sixth 2013-09-29")         ;提示如何执行程序




  146. ; ------------------- Bind all reference files ---------------------
  147. ; XFBA
  148. ; --------------------------------------------------------------------
  149. (Defun C:XFBA ( )          ;定義“绑定所有外部参照”命令
  150.         (setvar "cmdecho" 0)                ;命令执行过程不回显提示和输入
  151.         (setq oldBT (getvar "BINDTYPE"))
  152.         (setq BT (if (null BT) BT oldBT))
  153.         (setq BT_tmp
  154.                 (getstring
  155.                         (strcat "输入绑定类型[绑定(0)/插入(1)]<" (itoa BT) ">: ")
  156.                 )
  157.         )
  158.         (if (null BT_tmp) (setq BT_tmp BT))
  159.         (setq BT (atoi BT_tmp))
  160.         (setvar "BINDTYPE" BT)
  161.         (command "-xref" "Bind" "*")
  162.         (setvar "BINDTYPE" oldBT)
  163.           (princ)
  164. )

  165. (prompt "\n<绑定所有外部参照> 命令:XFBA  ------by sixth 2013-09-29")         ;提示如何执行程序

发表于 2018-9-11 14:58 | 显示全部楼层
xinxin379 发表于 2018-3-23 21:33
楼主的绑定有点小问题,我修改后发上去:

貌似 绑定 还是有问题 有大神能改下吗
发表于 2018-9-11 15:00 | 显示全部楼层
楼主 绑定有问题 能改下吗
发表于 2018-9-11 15:04 | 显示全部楼层
如果能增加文件夹图纸 不打开图纸 执行参照就更好了
发表于 2018-10-7 22:40 | 显示全部楼层
看看吧怎么样呢
发表于 2018-10-7 23:30 | 显示全部楼层
顶一下,留个脚印
发表于 2018-10-8 13:05 | 显示全部楼层
好流弊 很好用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-26 11:25 , Processed in 0.232587 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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