模糊层lisp
你好我有这个lisp例程,可以在特定层中创建任何维度,而不管当前层是什么。在这个lisp中,有一个启动和停止这个函数的规定。这是我不想要的。
有人能帮我删除这个启动/停止功能吗?这意味着一旦我加载应用程序,它就已经处于活动状态。启动和停止无需额外命令。我对Autolisp一点也不熟悉,所以不知道怎么做。
在创建新文件或打开现有文件时,是否可以预加载任何lisp?
(vl-load-com)
(defun DimReactor:Start ()
(or *DimReactor*
(setq *DimReactor*
(vlr-command-reactor
nil
'(
(:vlr-commandcancelled . DimReactor:CommandEnded)
(:vlr-commandended . DimReactor:CommandEnded)
(:vlr-commandfailed . DimReactor:CommandEnded)
(:vlr-commandwillstart . DimReactor:CommandWillStart)
)
)
)
)
(prompt "\nDimension reactor loaded. ")
(princ)
)
(defun DimReactor:CommandEnded (rea cmd)
(if
(and
*DimReactorLayer*
(wcmatch
(strcase (car cmd))
"DIMA*,DIMB*,DIMC*,DIMD*,DIMI*,DIMJ*,DIML*,DIMO*,DIMR*,DIMSP*,QDIM"
)
)
(progn
(setvar 'clayer *DimReactorLayer*)
(setq *DimReactorLayer* nil)
)
)
)
(defun DimReactor:CommandWillStart (rea cmd / layerName)
(if
(wcmatch
(strcase (car cmd))
"DIMA*,DIMB*,DIMC*,DIMD*,DIMI*,DIMJ*,DIML*,DIMO*,DIMR*,DIMSP*,QDIM"
)
(progn
(setq *DimReactorLayer* (getvar 'clayer))
(vla-add
(vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))
(setq layerName "Dimension Line")
)
(setvar 'clayer layerName)
)
)
)
(defun c:DimReactorStart ()
(DimReactor:Start)
)
(defun c:DimReactorStop ()
(if *DimReactor*
(progn
(vlr-remove *DimReactor*)
(setq *DimReactor* nil)
)
)
(prompt "\n** Dimension reactor stopped ** ")
(princ)
)
;; Uncomment next line to start automatically.
;;(DimReactor:Start)
(princ) 你好
请通过添加代码标签[#]来修改您的帖子,因此只需选择代码并点击图案填充按钮#,就会自动包装代码。
删除这两个命令
<c:Dimreactorstart , c:Dimreactorstop>及其所有代码,只需在lisp文件的末尾添加以下函数。
(dimreactor:start)
要在启动时自动运行代码,只需将代码添加到acaddoc中。应该存在于您的支持文件夹中的lsp。 非常感谢。
非常欢迎你。 看起来萨尔瓦特已经让你回到了轨道上,但仅供参考,我最喜欢的李-麦克Lisp程序是层导演。
地球上的每个人都应该认真地使用它。
除了其他非常有用的事情外,它还可以为您做到这一点,比如将所有文本放在文本层上(或者在您事先告诉它的任何地方),将所有视口放在特定层上。
如果lisp中指定的图层在图形中尚不存在,它将使用您在根据个人需要设置lisp时定义的设置创建图层。例如,您可能希望所有领导者都在哪一层?
看看这个链接,它绝对棒极了。
谢谢李!
您只需要稍微考虑一下要为任何给定层定义什么命令,以及层的颜色和名称。
这个lisp可以即时工作,你不需要考虑它,它会把事情放在你告诉它的地方,没有任何用户交互,然后直接返回到你所在的层,然后调用任何命令,例如DimRadial。
如果你像我一样,你会希望这个自动加载,所以你再也不需要考虑层。
我已将其加载到启动套件中,因此每次启动Autocad时,它都会自动启动,并使整个过程更加顺畅。
不难看出我对李的优秀作品的高度评价。
我的lisp目录中可能有95%的lisp是他的,有充分的理由,它们很棒!
再次感谢李!
为了更好地了解lisp的功能,以及如何根据您的喜好对其进行个性化设置,请将其下载到lisp文件夹中,然后用记事本打开。李对它的功能做了非常有益的描述。
页:
[1]