菜卷鱼 发表于 2014-1-3 16:04:25

layer命令问题

(defun c:D ()
(SETVAR "CMDECHO" 0)
(SETQ *ERROR* DSERR_ERR)
(setq mm_lay (getvar "CLAYER"))
(command "_.layer" "m" "标注" "")
(command "_.dimlinear")
(setvar "clayer" mm_lay )
(SETVAR "CMDECHO" 1)
(prin1)
)

我把dimlinear的快捷命令以以上的方式定为D,这样的话标注尺寸的时候会自动设为"标注"层,但是用了几个论坛里的程序之后,估计是什么系统变量变了,上面的程序用的时候就出现问题了,会弹出图层管理器,并提示
d 未知命令“M”。按 F1 查看帮助。
未知命令“标注”。按 F1 查看帮助。
未知命令“D”。按 F1 查看帮助。

菜卷鱼 发表于 2014-1-3 16:10:04

已经找到原因了,qaflags 预选功能被取消了

edata 发表于 2014-1-3 17:12:27

为何不用(command "_.-layer" "m" "标注" "")

菜卷鱼 发表于 2014-1-3 17:28:21

edata 发表于 2014-1-3 17:12 static/image/common/back.gif
为何不用(command "_.-layer" "m" "标注" "")

qaflags设置为1,使用的时候效果"_.-layer"跟"_.layer"有区别,但是qaflags设置为0,就没区别了

edata 发表于 2014-1-3 17:55:18

菜卷鱼 发表于 2014-1-3 17:28 static/image/common/back.gif
qaflags设置为1,使用的时候效果"_.-layer"跟"_.layer"有区别,但是qaflags设置为0,就没区别了

我想应该和版本有关系,06sp1中文/英文测试无影响,而且标注无法应用到对应图层。
command函数调用线性标注不不在"标注"层上。。

llsheng_73 发表于 2014-1-3 20:11:01

你可以慢慢想法甩开COMMAND了,对cad命令有一定认识就可以了,CAD很多命令都会随版本有细小差别,而这点细小差别可能导致你的程序在别的地方无法运行
页: [1]
查看完整版本: layer命令问题