查看单个帖子
旧 2009-04-28, 05:08 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】这个是怎么回事?老顾请帮忙

这个是怎么回事?老顾请帮忙
www.dimcax.com
这个是怎么回事?老顾请帮忙
以下这个程序,在运行时有点问题,请教各位老大,
就是说运行的时候,本来 pol和arc和circle都是在同一点上画出来的,
但输入或者点击的时候有时会出现乱跑就是本来三个是在同一点的,却各自为王了,请帮忙!!!谢谢
(defun c:lx2()
;(setq old_cmdecho (getvar "cmdecho"))
(setvar "cmdecho" 0)
(command "layer" "s" "hole" "")
(princ "\n ======= 螺丝孔 ==== 编者 :星河凤之恋 ")
(princ "\n [1] 8mm螺丝孔 [2] 4mm螺丝孔:")
(setq cho (getstring))
(cond ((= cho "1")
(princ "\n[ 请点选位置 ] :")
(setq p1 (getpoint))
(command "polygon" "6" p1 "c" "3.0")
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "arc" "c" p1 "@0,5" "a" 270)
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "circle" p1 "4.0")))
(cond ((= cho "2")
(princ "\n[ 请点选位置 ] :")
(setq p1 (getpoint))
(command "polygon" "6" p1 "c" "1.5")
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "arc" "c" p1 "@0,2.5" "a" 270)
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "circle" p1 "2.0")))
(cond ((= cho "1")
(princ "\n[ 请点选位置 ] :")
(setq p1 (getpoint))
(command "polygon" "6" p1 "c" "3.0")
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "arc" "c" p1 "@0,5" "a" 270)
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "circle" p1 "4.0")))
(cond ((= cho "2")
(princ "\n[ 请点选位置 ] :")
(setq p1 (getpoint))
(command "polygon" "6" p1 "c" "1.5")
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "arc" "c" p1 "@0,2.5" "a" 270)
(command "change"(entlast)"" "p" "lt" "hidden" "lts" 2 "c" 4"")
(command "circle" p1 "2.0")))
;(setvar "cmdecho" old_cmdecho)
(princ)
)


是不是和捕捉有关??
(setvar "osmode" 0)
如果加了关闭捕捉,那我要在完成画图后,又自动打开捕捉,应该怎么搞??谢谢

前面加上(setq os (getvar "osmode"))
结尾加上
(setvar "osmode" os)
就ok啦
progress every day!!!
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)