xj6019 发表于 2020-6-19 13:46:53

所有填充用一个命令全部打开或者关闭 填充关闭


使用命令TG可以把所有的填充,打开或者关闭。
偶然发现的,能实现两个命令用同一个命令切换使用,感觉挺好用的,代码简单,勿喷。
就是填充非常多的时候,运行有点慢。
有更好的方法,欢迎贴上来,共同学习。。

(DEFUN C:TCG1 ()(COMMAND "FILL" "ON" "REGEN")) ;打開所有的填充
(DEFUN C:TCG2 ()(COMMAND "FILL" "OFF" "REGEN")) ;關閉所有的填充
(defun c:TG ()
(if (= 4_tGt 0)
    (progn (C:TCG1) (setq 4_tGt 1))
    (progn (C:TCG2) (setq 4_tGt 0))
)
(princ)
)

satan421 发表于 2020-6-21 11:50:26

三楼的多了个'
应该是:
(defun C:TT ()
(if (= (getvar 'FILLMODE) 1)
    (setvar 'FILLMODE 0)
    (setvar 'FILLMODE 1)
)
)

start4444 发表于 2020-6-19 14:26:31

这种全局变量写法有个问题,有可能第一次运行的时候会无效。用单命令最好能找到相关的系统变量,那就可以完美控制,参考这个:(if (= (getvar "fillmode") 0) (COMMAND "FILL" "ON" "REGEN") (COMMAND "FILL" "Off" "REGEN"))

自贡黄明儒 发表于 2020-6-19 14:31:08

这个会不会一样的效果?
(defun C:TT ()
(if (= '(getvar 'FILLMODE) 1)
    (setvar 'FILLMODE 0)
    (setvar 'FILLMODE 1)
)
)

lijiao 发表于 2020-6-19 17:20:19

(setvar "fillmode" (rem (1+ (getvar "fillmode")) 2))
(command "REGEN")

999999 发表于 2020-9-12 19:54:38

谢谢各位大神的解答,以及楼主的分享与想法

999999 发表于 2020-9-12 20:01:17

start4444 发表于 2020-6-19 14:26
这种全局变量写法有个问题,有可能第一次运行的时候会无效。用单命令最好能找到相关的系统变量,那就可以完 ...

谢谢大神,试了一下,真的很管用呢

magicheno 发表于 2021-9-19 16:26:45

学习了~~~~很管用

caogis 发表于 2021-10-28 15:00:06

后面2个真是一键修改

cheefeel 发表于 2022-12-5 13:28:54

会让CAD卡的还有一个因素重要因素,那就是文字。
自动桌子提供了填充的系统变量 FILLMODE ,也提供了文字的系统变量QTEXTMODE。
如果让这两个一起开关那不是更爽!!!


如果有一天自动桌子能让CAD临时将文字显示成一种不卡单线体文字,而文字实际存在形式是原有的那就更好了!!!
页: [1]
查看完整版本: 所有填充用一个命令全部打开或者关闭 填充关闭