明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1790|回复: 9

[原创]问大家一个问题

[复制链接]
发表于 2007-3-7 09:46 | 显示全部楼层 |阅读模式
(defun C:AA()
(setq p1 "0,0")
(setq p2 "0,10")
(setq p3 "0,-10")
(command "_.alignspace"
"_.mspace"
P1
P2
"_.pspace"
P1
P3
))
;为何会提示:
;命令: AA 未知命令“ALIGNSPACE”。按 F1 查看帮助。
;未知命令“0,0”。按 F1 查看帮助。
;未知命令“AA”。按 F1 查看帮助。
;未知命令“0,10”。按 F1 查看帮助。
;未知命令“AA”。按 F1 查看帮助。
;未知命令“0,0”。按 F1 查看帮助。
;未知命令“AA”。按 F1 查看帮助。
;未知命令“0,-10”。按 F1 查看帮助。
;未知命令“AA”。按 F1 查看帮助。
(defun C:AA()
(command "alignspace"
"_.mspace"
"0,0,0"
"0,10,0"
"_.pspace"
"0,0,0"
"0,-10,0"
))
;这样也不行
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2007-3-7 11:27 | 显示全部楼层
你查一下,有alignspace这个命令没有?
 楼主| 发表于 2007-3-7 12:48 | 显示全部楼层
这个命令是扩展工具中的,只要完全按装就会有,我电脑里单独执行这个程序就可以,但是我上面这样编就不行,不知是什么原因。
发表于 2007-3-7 15:00 | 显示全部楼层
本帖最后由 作者 于 2007-3-8 12:39:13 编辑

"ALIGNSPACE"只是 ET 工具里 LISP 定义的函数 "c:ALIGNSPACE",而非
AutoCAD 内置命令。我们可以向 AutoCAD 注册为内置命令:

(vlax-add-cmd "ALIGNSPACE" 'c:ALIGNSPACE)

这样就可以用 Command 函数调用了

 楼主| 发表于 2007-3-7 18:39 | 显示全部楼层
那上面的程序为什么还是执行不了?它不认"0,0"非要用鼠标点吗?哪位高手能搞定
发表于 2007-3-8 12:54 | 显示全部楼层

用 (vlax-add-cmd "ALIGNSPACE" 'c:ALIGNSPACE) 还是不行,我试过了。但是我自己定义的命令倒可以。

除此之外的原因,还有

(command "_.alignspace"
"_.mspace"
....

怎么可以连续调用两个命令,就算command调用成功。应该为:

(command "_.alignspace" p1 ....)

请高手赐教 vlax-add-cmd 的用法

 楼主| 发表于 2007-3-8 13:19 | 显示全部楼层
我有试过这样子呀,也不行!
发表于 2007-3-8 14:43 | 显示全部楼层

我建议 不要 在(command "")调用 alisp的函数 就是能调用 也会出现错误

 楼主| 发表于 2007-3-9 09:49 | 显示全部楼层

(defun C:rw90()
(vlax-add-cmd "ALIGNSPACE" "c:ALIGNSPACE")
(setq p1 "0,0")
(setq p2 "0,10")
(setq p3 "0,-10")
(vl-cmdf "alignspace" p1 p2 p1 p3))

这样也不行呀,哪个高手帮帮忙

 楼主| 发表于 2007-3-10 10:49 | 显示全部楼层
高手都到哪里去了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-6 09:33 , Processed in 0.244572 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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