明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1183|回复: 4

我这个lsp哪里不对啊?请指教

[复制链接]
发表于 2012-12-3 20:38:44 | 显示全部楼层 |阅读模式
我的目的是编一个copy的程序,当输入命令c以后,对象捕捉关闭.当我复制完了以后,对象捕捉再全部打开.但是我的这个程序运行的时候,在复制之前,对象捕捉功能就全部打开了,我不知道问题在哪里,请高手指教

(defun C:c ()
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(command "copy")
(setvar "osmode" 15359)
(setvar "cmdecho" 1)
(princ))
发表于 2012-12-3 21:38:38 | 显示全部楼层
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))   ; add this line
发表于 2012-12-3 21:58:26 | 显示全部楼层
Andyhon 发表于 2012-12-3 21:38
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))   ; add this line

可以解释下添加这句啥意思吗~顺便告诉下小弟怎么查询全局变量

点评

不在函数定义括号内的变量都是全局变量!  发表于 2012-12-3 22:07
 楼主| 发表于 2012-12-3 22:07:31 | 显示全部楼层
Andyhon 发表于 2012-12-3 21:38
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))   ; add this line

可以了,谢谢,能不能解释下原理?
 楼主| 发表于 2012-12-4 11:14:43 | 显示全部楼层
(defun C:c ()
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))
(setvar "osmode" 15359)
(setvar "cmdecho" 1)
(princ))

经过楼上提醒以后,加了一句话,确实能用了,但是还有一个问题,就是copy的时候只能一个一个选,不能框选,有没有办法解决啊?

点评

Check PickAdd ==>1  发表于 2012-12-4 12:11
可以框选呀,你是怎么用的?  发表于 2012-12-4 11:49
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-6-4 03:37 , Processed in 0.173159 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表