anhe 发表于 2022-7-5 17:43:21

LISP颜色问题

我有一个lisp文件,如下所示。我的问题是,我想删除弹出的窗口,在那里我必须为外部参照层选择颜色。我想直接在lisp中选择颜色8。
 
我有点困在这里,有什么想法吗?
 
(defun C:ZE ()
(command ".ZOOM" "Extents")
(command ".ZOOM" "0.95x")
) ;_ end of defun


(defun c:XHOUSE (/)
(initdia)
(command "_.-XREF" "_Overlay")
(if (> (getvar "CMDACTIVE") 0)
(progn
(command "_None" '(0.0 0.0 0.0))
(while (> (getvar "CMDACTIVE") 0) (command "")) ))

(vl-load-com)
(setq doc (vla-get-activedocument (vlax-get-acad-object)))
(vla-startundomark doc)
(mip:layer-status-save)
(if (setq col (acad_colordlg 7 t))
(ChangeXrefAllObjectsColor doc col) ;_ col — color number
) ;_ end of if
(mip:layer-status-restore)
(vla-endundomark doc)
(princ)
) ;_ end of defun


(princ
"\nType ZE, XHOUSE in command line"
) ;_ end of princ

Tharwat 发表于 2022-7-5 18:19:44

你好
 
只需替换此:

(if (setq col (acad_colordlg 7 t))
(ChangeXrefAllObjectsColor doc col) ;_ col — color number
) ;_ end of if

有了这个:
(ChangeXrefAllObjectsColor doc

anhe 发表于 2022-7-5 18:45:24

它工作得很好。但是当我进入图层管理器时,我的外部参照图层的颜色在那里没有改变,但我还是将其设置为颜色8,有点困惑为什么它不一样?
 
 
我在考虑另一个问题,但我不太确定我是否正确。
 
我已将外部参照插入代码中列出的指定坐标系的脚本。
但是如果我的外部参照有一个z坐标,我想保留它,而不是用0覆盖它呢。
 
我还想知道如何将路径类型编辑为相对路径而不是完整路径
 
对此有什么建议吗?
页: [1]
查看完整版本: LISP颜色问题