rkent 发表于 2022-7-6 06:45:05

设置层过滤器电流

我有一段代码可能来自这里的一位用户,我想知道是否可以修改它,将层过滤器电流设置为例程的一部分?如果是,请修改或给我一个提示。
 
(defun c:XREFNOT ( / xdict dict xrecname )
(vl-load-com)
   (setq xdict
       (vlax-vla-object->ename
         (vla-getextensiondictionary
               (vla-get-layers
                   (vla-get-activedocument (vlax-get-acad-object))
               )
         )
       )   
   )

   (setq dict
       (if (setq dict (dictsearch xdict "ACAD_LAYERFILTERS"))
         (cdr (assoc -1 dict))
         (dictadd xdict "ACAD_LAYERFILTERS"
               (entmakex
                  '(
                     (0 . "dictionary")
                     (100 . "AcDbDictionary")
                     (280 . 0)
                     (281 . 1)
                   )
               )
         )
       )
   )

   (princ
       (if (dictsearch dict (setq xrecname "No_Xref_Layers"))
         (strcat
               "Layer filter named <"
               xrecname
               "> already exists."
         )
         (if
               (dictadd dict xrecname
                   (entmakex
                     (append
                        '(
                               (0 . "xrecord")
                               (100 . "AcDbXrecord")
                               (280 . 1)
                           )   
                           (list (cons 1 xrecname))
                        '(
                               (1 . "~*|*")
                               (1 . "*")
                               (1 . "*")
                               (70 . 0)
                               (1 . "*")
                               (1 . "*")
                               (-3         
                                 (   "ACAD"
                                       (1000 . "( NAME== \"~*|*\" )")
                                 )         
                               )
                           )   
                     )
                   )
               )
               (strcat
                   "Created layer filter named <"
                   xrecname
                   ">."
               )
               "Doh! Something horrible happened. "
         )   
       )   
   )   

   (princ)

)



 
谢谢
rkent公司

BlackBox 发表于 2022-7-6 06:59:45

只需为-LAYER命令使用未记录的“Filter”(或“_FI”)选项:
 

(command "._-layer" "filter" "set" "YourCaseSensitiveLayerFilterName" "")

rkent 发表于 2022-7-6 07:07:35

太好了,我喜欢那些非法的选择。
 
谢谢

BlackBox 发表于 2022-7-6 07:13:56

 
很乐意帮忙,Rkent。
 
 
 
FWIW-您可能还会发现这一点很有用:
 

(command "._vplayer" "reMoveoverrides")

rkent 发表于 2022-7-6 07:23:39

黑匣子-我发布的代码是你的吗?我不记得它来自哪里,我尝试添加来源,即使它不是由作者放在那里。
 
感谢vplayer选项。

BlackBox 发表于 2022-7-6 07:33:10

 
一点也不;我确实记得我对这个话题很感兴趣,但从来没有做过任何事情(不幸的是,考虑到我的可用性,这门课是一样的)。
 
我知道我顺便看到了李关于这个主题的帖子,但我不能告诉你这个代码是不是他的。。。不过我不知道他是不是《辛普森一家》的忠实粉丝。。。也许是克鲁格?
 
 
随时

Lee Mac 发表于 2022-7-6 07:42:14

 
看起来像迈克尔·帕克特(议员)的代码:
http://www.theswamp.org/index.php?topic=12640.msg155019#msg155019

BlackBox 发表于 2022-7-6 07:52:31

谢谢你的确认,李。
页: [1]
查看完整版本: 设置层过滤器电流