找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1864|回复: 7

[求助] [求助]:lsp定义的cad命令无法用(command)函数启动?

[复制链接]
发表于 2007-8-9 17:22:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
最近在编写一个程序,因为要用到现成的一个lsp定义的cad命令,用(command)启动那个命令时,cad提示"未知命令",是不是lsp定义的命令用(command)命令启动还要向cad注册一次,搞不清楚,请高手指点.
arx程序定义的命令用(command)启动执行就没有问题.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2007-8-9 19:01:27 | 显示全部楼层
在程序中写入:
(c:lsp定义的命令)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-9 19:06:57 | 显示全部楼层
在程序中写入:
(c:lsp定义的命令)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-10 08:29:20 | 显示全部楼层
关于调用命令时的前缀问题


问题:
(command  "_.text"
(command  "_text"
(command  "text"
(command  "-text"
4者的区别?

解答:
1、关于下划线前缀"_"
    如果是外语版(非英非中)的acad,由于其命令拼写与英语版的不同,因此函数中的命令名必须使用下划线"_"作为前缀,只有这样命令才能被转换成美国英语的命令名,才能被识别。在简体中文版的Acad中,命令名与英语版相同,所以不必这样做。

2、关于圆点前缀"."
    圆点前缀用来声明引用原始命令,避免重新定义的同名命令。圆点前缀和下划线前缀可以任意顺序组合,例如"._line" 和 "_.line"

3、关于减号前缀"-"
    由于许多命令是以对话框作为默认的操作界面,然而在程序中则不能操作这样的对话框的,因此若要在程序中引用这样的命令,就应当启动它们的命令行操作界面。方法是在引用这些命令时,在命令名前缀一个减号"-",例如:
(command "-block" ......)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2007-8-10 11:44:37 | 显示全部楼层
1、楼上粘的东西
(command)

2、lisp定义的命令和系统自己的命令,cad是内外有别的。想要使用command函数调用自定义的命令的话,需要先将自定义的命令注册。
注册方法见:vlax-add-cmd
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2007-8-10 12:07:58 | 显示全部楼层
1、楼上粘的东西,文不对题啊。
http://www.acad.net.cn/viewthread.php?tid=15&extra=page%3D5

2、lisp定义的命令和系统自己的命令,cad是内外有别的。想要使用command函数调用自定义的命令的话,需要先将自定义的命令注册。
注册方法见:vlax-add-cmd
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-11 00:47:33 | 显示全部楼层
最初由 zml84 发布
[B]1、楼上粘的东西,文不对题啊。
http://www.acad.net.cn/viewthread.php?tid=15&extra=page%3D5

2、lisp定义的命令和系统自己的命令,cad是内外有别的。想要使用command函数调用自定义的命令的话,需... [/B]

楼主说的一点没错,请看我下面自定义正交极轴透明切换代对象捕捉透明切换代码码

;;; 正交极轴透明切换代码起始

(vl-doc-export 'orth)
(DEFUN orth ()
  (if (= (getvar "orthomode") 0)
    (setvar "orthomode" 1)
    (progn
      (setvar "orthomode" 0)
      (setvar "autosnap" 63)
    )
  )
)
(vlax-add-cmd "orth" 'orth "orth" acrx_cmd_transparent)
(princ)

;;; 正交极轴透明切换代码结束

;;; 对象捕捉透明切换代码起始

(vl-doc-export 'osnap_li)
(DEFUN osnap_li ()
  (if (= (getvar "osmode") 0)
    (setvar "osmode" 675)
    (setvar "osmode" 0)

  )
)
(vlax-add-cmd "osnap_li" 'osnap_li "osnap_li" acrx_cmd_transparent)
(princ)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2007-8-11 09:20:35 | 显示全部楼层
楼上又是在走弯路吧?!
1、在程序中,要切换正交和对象捕捉设置,只要控制系统变量即可;
2、在手工交互时,鼠标点取或按下F3或F8即可。
我的看法是,将这些已经很明确的东西,去复杂化,实在没有必要发挥到极致。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 06:23 , Processed in 0.189582 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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