明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1224|回复: 6

[提问] 求改一段代码

[复制链接]
发表于 2020-7-2 00:08:17 | 显示全部楼层 |阅读模式
1明经币
本帖最后由 wgij007 于 2020-7-2 23:33 编辑

(代码也是在论坛里看到的,也忘了是出自那位高手了)          修改部分:就是直接插入,不用选项。


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

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

          (princ "\nSelect  objects on the reference file to be Binded:")

          (if (setq SS (ssget))
                    (progn
                              (setq Rnames "")
                        (setq oldBT (getvar "BINDTYPE"))
                        (setq BT (if (not BT) oldBT BT))
                        (setq BT_tmp
                                (getstring
                                        (strcat "输入绑定类型[绑定(0)/插入(1)]<" (itoa BT) ">: ")
                                )
                        )
                        (if (null BT_tmp) (setq BT_tmp BT))
                        (setq BT (atoi BT_tmp))
                        (setvar "BINDTYPE" BT)
                              (repeat
                                (setq I (sslength SS))
                                (setq E (ssname SS (setq I (1- I))))
                                (setq ELIST (entget E))
                                (setq Rname (cdr (assoc 2 ELIST))) ;_参照名
                                (command "-xref" "Bind" Rname)
                                (setq Rnames (strcat Rname ", " Rnames)) ;_strcat 连接成字符串
                              );end repeat
                        (setvar "BINDTYPE" oldBT)
                              (prompt "\nFiles have been Binded:")
                              (princ Rnames)
                    );end progn
          );end if
        (princ)
)




最佳答案

查看完整内容

(Defun C:XFB ( ) ;定義“绑定选定参照文件”命令 (setvar "cmdecho" 0) ;命令执行过程不回显提示和输入 (princ "\nSelect objects on the reference file to be Binded:") (if (setq SS (ssget)) (progn (setq Rnames "") (setq oldBT (getvar "BINDTYPE")) (setq BT ...
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2020-7-2 00:08:18 | 显示全部楼层
(Defun C:XFB ( )        ;定義“绑定选定参照文件”命令
        (setvar "cmdecho" 0)        ;命令执行过程不回显提示和输入

          (princ "\nSelect  objects on the reference file to be Binded:")

          (if (setq SS (ssget))
                    (progn
                              (setq Rnames "")
                        (setq oldBT (getvar "BINDTYPE"))
                        (setq BT (if (not BT) oldBT BT))
                        (setq BT_tmp "1" )
                        (if (null BT_tmp) (setq BT_tmp BT))
                        (setq BT (atoi BT_tmp))
                        (setvar "BINDTYPE" BT)
                              (repeat
                                (setq I (sslength SS))
                                (setq E (ssname SS (setq I (1- I))))
                                (setq ELIST (entget E))
                                (setq Rname (cdr (assoc 2 ELIST))) ;_参照名
                                (command "-xref" "Bind" Rname)
                                (setq Rnames (strcat Rname ", " Rnames)) ;_strcat 连接成字符串
                              );end repeat
                        (setvar "BINDTYPE" oldBT)
                              (prompt "\nFiles have been Binded:")
                              (princ Rnames)
                    );end progn
          );end if
        (princ)
)

评分

参与人数 1明经币 +1 收起 理由
yangchao2005090 + 1

查看全部评分

回复

使用道具 举报

发表于 2020-7-2 08:43:31 | 显示全部楼层
本帖最后由 原地踏步 于 2020-7-2 08:44 编辑

(initget "0 1")
(setq BT_tmp
                                (getkword
                                        (strcat "输入绑定类型[绑定(0)/插入(1)]<" (itoa BT) ">: ")
                                )
                        )
回复

使用道具 举报

发表于 2020-7-2 12:12:00 | 显示全部楼层
(setq BT_tmp
                                 (getstring
                                         (strcat "输入绑定类型[绑定(0)/插入(1)]<" (itoa BT) ">: ")
                                 )
                         )
这个地方改成:
(setq BT_tmp   “1”  )
回复

使用道具 举报

 楼主| 发表于 2020-7-2 23:34:46 | 显示全部楼层
baitang36 发表于 2020-7-2 12:12
(setq BT_tmp
                                 (getstring
                                         ...

有错误呀,弹出   ; 错误: 参数类型错误: stringp 1
回复

使用道具 举报

 楼主| 发表于 2020-7-2 23:35:17 | 显示全部楼层
原地踏步 发表于 2020-7-2 08:43
(initget "0 1")
(setq BT_tmp
                                (getkword

你好,没变化呀
回复

使用道具 举报

发表于 2020-7-15 12:08:12 | 显示全部楼层
xvjiex 发表于 2020-7-2 00:08
(Defun C:XFB ( )        ;定義“绑定选定参照文件”命令
        (setvar "cmdecho" 0)        ;命令执行 ...

您好,可以不选择外部参照对象,直接插入所有外部参照吗,也就是输入命令后直接插入
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-18 00:48 , Processed in 0.212233 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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