几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量  


返回   几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 » 仿射空间:CAX软件开发(三)二次开发与程序设计 » CAD二次开发 » AutoCAD二次开发 » ObjectARX(AutoLISP)
用户名
密码
注册 帮助 会员 日历 银行 搜索 今日新帖 标记论坛为已读


 
 
主题工具 搜索本主题 显示模式
旧 2009-04-25, 10:26 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 [感谢回答]请问如何将lisp作为透明命令使用?

[感谢回答]请问如何将lisp作为透明命令使用?
www.dimcax.com
[感谢回答]请问如何将lisp作为透明命令使用?如在使用命令的时候调整某些系统变量,或者实现如下的功能:
比如移动或者复制的时候,选取完毕操作对象和基点后,选取目标点的时候,我们用距离某个参照物多少的距离来定位这个目标点,比如旁边的某个直线,距离他端点或者中点的100的距离为目标点。
d
这个也许能行
语法
(vlax-add-cmd global-name func-sym [local-name cmd-flags])
功能
将命令添加到 autocad 内置命令集中
 
说明
1)使用 vlax-add-cmd 可以将函数定义为 autocad 命令,而无需在函数名中使用 c: 前缀。
2)使用 vlax-add-cmd 可以定义透明 autolisp 命令,而 c: 函数,是不可能实现的。
3)vlax-add-cmd 函数使某个 autolisp 函数在当前 autocad 任务中作为 objectarx 类型的命令,在 autocad 命令行提示中使用。
4)vlax-add-cmd 函数提供了对 objectarx acedregcmds 宏的访问,从而提供了一个到 objectarx 系统 acedcommandstack 对象的指针。
5)vlax-add-cmd 函数自动将命令指定到命令组。当文档名称空间发出命令时,vlax-add-cmd 将命令添加到组 doc-id。doc-id 是标识文档的十六进制值。当独立名称空间 vlx 发出命令时,vlax-add-cmd 将命令添加到组 vlc-ddoc-id:vlx-name。这里 vlx-name 是发出 vlax-add-cmd.的应用程序名。
6)不能使用 vlax-add-cmd 显露创建反应器对象的函数,也不能用它来显露反应器的回调函数。
7)参数 global-name 为字符串。
8)参数 func-sym 为符号,指定不带参数的 autolisp 函数。
9)参数 local-name 为字符串(默认值为 global-name)。
10)cmd-flags 为整数型(默认值为 acrx_cmd_modal + acrx_cmd_redraw)。
主要标志有:
acrx_cmd_modal (0) 在使用其他命令时不能调用该命令。
acrx_cmd_transparent (1) 在使用其他命令时可以调用该命令。
二级标志有:
acrx_cmd_usepickset (2) 检索选择优先集时,在 autocad 中清除设置。命令能够获取 优先集,但不能检索或设置夹点。
acrx_cmd_redraw (4) 检索选择优先集或夹点集时,不将它们从 autocad 中清除。命令可获取优先集和夹点集。
11)若同时设置了 acrx_cmd_usepickset 和 acrx_cmd_redraw,那么效果和仅设置 acrx_cmd_redraw 一样。
12)关于标志的详细信息,请参见 objectarx reference 手册中的“command stack”。
返回值:
如果成功则返回 global-name 参数。如果 acedregcmds->addcommand(...) 返回错误条件,则函数返回 nil。
范例
下例中的 hello-autocad 函数没有 c: 前缀,但 vlax-add-cmd 将其作为 objectarx 类型的命令显示在 autocad 命令行提示:
_$ (defun hello-autocad () (princ "hello visual lisp"))
hello-autocad
_$ (vlax-add-cmd "hello visual lisp" 'hello visual lisp)
"hello visual lisp"
请参见 vlax-remove-cmd 函数。
工资真的要涨了,心里更加爱党了,能给孩子奖赏了,见到老婆敢嚷了,敢尝海鲜鹅掌了,闲时能逛商场了,遇见美女心痒了,结果物价又涨了!
d
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)
 


主题工具 搜索本主题
搜索本主题:

高级搜索
显示模式

发帖规则
不可以发表新主题
不可以回复主题
不可以上传附件
不可以编辑您的帖子

vB 代码开启
[IMG]代码开启
HTML代码关闭



所有的时间均为北京时间。 现在的时间是 11:08 AM.


于2004年创办,几何尺寸与公差论坛"致力于产品几何量公差标准GD&T | GPS研究/CAD设计/CAM加工/CMM测量"。免责声明:论坛严禁发布色情反动言论及有关违反国家法律法规内容!情节严重者提供其IP,并配合相关部门进行严厉查处,若內容有涉及侵权,请立即联系我们QQ:44671734。注:此论坛须管理员验证方可发帖。
沪ICP备06057009号-2
更多