LSP程序运行时,对象捕捉打开与否,为什么得出的结果不一样
(defun c:bb();(setq oldos (getvar "osmode"))
;(setvar "osmode" 0)
(setvar "cmdecho" 0)
;(setvar "blipmode" 0)
(setq qq 500)
(while (> qq 0)
(setq a (getpoint (list 0 0) "\n选取点"))
(setq xx (car a) yy (cadr a))
(setq a1 (polar a (/ pi 2) 35))
(setq a2 (polar a (/ pi 2) 5))
(setq a3 (polar a2 pi 3))
(command "pline" a a1 "")
(command "text" a3 3 90 xx)
(setq qq (- qq 1))
);while
;(setvar "osmode" oldos)
(prin1)
);defun
(prompt"************输入bb以开始程序**按ESC退出标注**********")
(princ)
因为需要捕捉点嘛,所以在程序中没有对系统的捕捉选项进行更改,此时对象捕捉是全开的,运行的结果不是想要的,关闭对象捕捉后的结果才是想要的,不知道如何更改才能达到在对象捕捉打开后得到的结果才是想要的
开着捕捉永远都达不到你的要求。选点后关闭,计算完再打开就行啦。 本帖最后由 Gu_xl 于 2018-8-10 13:44 编辑
(command "pline" "_non" a "_non" a1 "")
(command "text" "_non" a3 3 90 xx) Gu_xl 发表于 2018-8-10 13:43
(command "pline" "_non" a "_non" a1 "")
(command "text" "_non" a3 3 90 xx)
活抓大神一枚 活抓大神一枚 所以我喜欢用entmake,很少用command 我用command都是关闭捕捉的,然后再恢复osmode的原来的值
页:
[1]