找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 704|回复: 6

[LISP程序]:请教各位老师在编lisp中遇到的问题:如何利用别人(已编译)的lisp程序?

[复制链接]
发表于 2004-3-13 17:45:47 | 显示全部楼层 |阅读模式

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

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

×
我刚刚学lisp,想请教各位老师:
    我有一个别人的(编译过的)a.lisp程序,在a.lsp中原作者没给出形式参数,其加载,
运行后,autocad屏幕文字栏中先后有三行提示,要我分别输入三个值。在提示下我用键盘
一步一步输入,完成了程序所要输入的数据,然后程序自动执行出一个满意的结果。
    我想自编一个输入文件,来自动回答程序中的三个提示,您看这能实现吗?

    我作了各种努力,都不能实现,我想我只能反编译后,再修改原程序才行吧?这多不方便
啊,程序不能通用吗。
    我在各种参考书中都没有查到答案,请教各位老师,您怎么考虑这个问题的。
   
    实际上,a.lisp程序是这样工作的:执行后,每次有三行提示,我分别输入三个提示后,其
自动在autocad屏幕上画出几条线,然后,接着重复三行提示,直到我最后回车,决定退出程序为
止。我想自编一个输入文件,改变其人机交互回答的工作方式,来自动完成一个复杂的画图过程,
因为,原程序设计的不够理想,一旦有一次回答出错,就要全部重新输入。


例如:
(command "line"  '(0 0) '(800 800)  '(1000 1000)  " ")
可以运行。
假如,  a.lsp 中定义一个内部函数:defun c:aa()..........
那么,加载a.lsp后:
(command "aa"  '(0 0) '(800 800)   '(1000 1000)  " ")
(c:aa          '(0 0) '(800 800)   '(1000 1000)  " ")
(aa            '(0 0) '(800 800)   '(1000 1000)  " ")
等均不能运行;
这不是太不方便了,别人的程序就会没有几个能移植利用的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-3-13 23:24:46 | 显示全部楼层
你最好将程序传上来让大家看看,这样才能解决问题。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2004-3-16 20:37:19 | 显示全部楼层
R2000以上版本使用VLisp的Vlax-add-cmd函数可以实现。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-3-17 07:57:46 | 显示全部楼层
我我试了LL_J长老的方法是可以的,如下
(VLAX-ADD-CMD "AA" "C:AA")
(COMMAND "AA" '(0 0) '(800 800) '(1000 1000) " ")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-3-21 09:11:26 | 显示全部楼层
对于一个初学者,(VLAX-ADD-CMD "AA" "C:AA"),能理解吗?反正我不能。希望给出合适的方法,期待中……
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-3-23 15:43:44 | 显示全部楼层
最初由 zhynt 发布
[B]你最好将程序传上来让大家看看,这样才能解决问题。 [/B]

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-27 00:11 , Processed in 0.182674 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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