菜卷鱼 发表于 2016-7-19 14:10:35

关于标注自动分层

想弄个自动分层,就搞了个反应器,标注完成之后尺寸线自动分到标注层,可是,以下代码只能用于单个单个的标注,
然而连续标注、基线标注反应不了。谁给点意见?

(or *vlrdimEnd*
    (setq *cmdvlr* (vlr-command-reactor
                     nil
                     '(
                     (:VLR-commandEnded . layercallback)
                      )
                   )
    )
)

(or *vlrdimCancell*
    (setq *cmdvlr* (vlr-command-reactor
                     nil
                     '(
                     (:vlr-commandCancelled . layercallback)
                      )
                   )
    )
)

(defun layercallback (x1 x2 / info)
(if (wcmatch (car x2) "DIM*")
    (PROGN
      (setq info (entget (entlast)))
      (entmod (subst (cons 8 "02标注") (assoc 8 info) info))
    )
)
)
(princ)


shcvip 发表于 2023-8-28 23:58:31

shcvip 发表于 2023-8-25 22:14
(entlast)只有一个对象, 那用什么命令,可以选择多个对象呢?

(setq QB_en1 (entlast))
(setq ss0(ssadd)) ;;创建一个空选择集
(ssadd QB_en1 ss0)

可以用上面这个。
但是我用以下命令,就不行。

shcvip 发表于 2023-8-25 22:14:57

自贡黄明儒 发表于 2016-7-20 11:41
把(entlast),改为(entlast)之后所有对象。因为(entlast)只有一个对象,连续标注可能产生几个对象。

(entlast)只有一个对象, 那用什么命令,可以选择多个对象呢?

999999 发表于 2020-8-29 23:57:18

占个楼先,,代码还是有点消化不了找到了读书的感觉

自贡黄明儒 发表于 2016-7-19 14:27:53

本帖最后由 自贡黄明儒 于 2016-7-19 14:32 编辑

是不是G版写过一个自动归层的程序?

菜卷鱼 发表于 2016-7-20 08:36:44

自贡黄明儒 发表于 2016-7-19 14:27 static/image/common/back.gif
是不是G版写过一个自动归层的程序?

他的那个太复杂了,功能太强大
我想简单一点,跟我这个差不多思路的

fl202 发表于 2016-7-20 09:04:27

全标注完成后,把所有标注移到标注层。
把该程序放在自启动里,cad图纸打开时即执行。

菜卷鱼 发表于 2016-7-20 11:18:30

fl202 发表于 2016-7-20 09:04 static/image/common/back.gif
全标注完成后,把所有标注移到标注层。
把该程序放在自启动里,cad图纸打开时即执行。

这个已经有了,我就要立即就实现的,现在除了连续标注、基线标注,其他都能实现

kozmosovia 发表于 2016-7-20 11:22:48

升级2017,有系统变量DIMLAYER直接设定

自贡黄明儒 发表于 2016-7-20 11:41:16

把(entlast),改为(entlast)之后所有对象。因为(entlast)只有一个对象,连续标注可能产生几个对象。

maiko 发表于 2016-7-20 17:42:00

http://lee-mac.com/layerdirector.html

oistre 发表于 2018-8-23 14:32:17

大神牛牛牛牛牛!

oistre 发表于 2018-8-23 14:33:55

大神牛牛牛牛牛!
页: [1] 2
查看完整版本: 关于标注自动分层