dallen5 发表于 2022-7-6 06:40:57

AfraLISP AutoLisp基础部分

我正在使用ACAD 2012 Mechanical。我正在阅读第1部分中列出的教程,当我键入(load“testline”)时,我得到“error:load failed:“testline”。我已保存为lsp,并将其放入ACAD的支持文件夹中。在我收到上面的错误后,我运行AP并以这种方式加载lsp并键入(testline),我收到:“错误:没有函数定义:testline”。我做错了什么?请告知?非常感谢。
 
好的,所以我需要进一步看看这是预期的。但是,我仍然无法按照建议加载应用程序,我必须使用AP命令。

Costinbos77 发表于 2022-7-6 07:01:52

将测试线放入工具加载应用程序内容,然后用Load将其上载或重新打开AutoCAD。
 
测试线文件不在AutoCAD搜索路径中。

ReMark 发表于 2022-7-6 07:08:16

你听从这个建议了吗?
 
“…并确保它保存在AutoCAD搜索路径的目录中。”

irneb 发表于 2022-7-6 07:19:15

Costinbos:这只是如果你想为你打开的每一幅画加载它,在这个例子中(一个教程),我不认为这是OP想要的。即使这样,这也是我不太喜欢的方法之一,但每个方法都有自己的特点。
 
 
回答OP的问题:可能有几个问题。
[列表=1]
[*]正如备注所示,该文件可能位于不在您的支持路径中的其他文件夹中。通过“选项”对话框(“文件”选项卡)检查这些选项。
[*]文件必须具有。LSP扩展。请注意,如果您使用记事本创建它,记事本默认为放置一个。TXT扩展名。如果您的windows设置为(默认安装)隐藏已知扩展名,它将不会显示TXT扩展名,使您认为文件名以结尾。输入时输入LSP(即使文件实际上是Filename.LSP.TXT)。如果只是因为这个原因,我会尽量远离记事本。有许多其他的自由文本编辑器可以使用,evn ACad的内置VLIDE命令优于记事本。
[*]文件本身可能在编码中有一些错误。如果出现错误,则文件将停止加载。但通常情况下,它可能会向您显示一些错误消息,以指示出现了什么错误。
我建议你用VLIDE作为新手lisper。只需在命令提示符下键入VLIDE。它可以帮助您更容易地看到拼写错误(因为默认的符号名称会改变颜色),并帮助您在键入结束符时突出显示相应的开始符,从而计算出正确的括号数。
 
但最重要的是,您可以调试代码并实际逐步执行,以查看发生了什么。在我看来,这可能是开始理解代码功能的最佳方式。
 
本文可能会告诉您如何调试代码(尤其是检查动画部分):http://www.lee-mac.com/debugvlide.html

Costinbos77 发表于 2022-7-6 07:32:13

 
如果函数是用c:nnnnnn定义的,则无需键入文件名或括号(),只需键入程序名:eg TEST。
 
查看文件。LSP并查看程序的定义位置:

(defun C:TEST () .....)

(defun C:TEST ( a b c ... / e f g ...) .....)

Bill Tillman 发表于 2022-7-6 07:44:33

我在这里回答第二个问题。我经常忘记用C启动我的函数:这使得用Paren运行起来很困难。仔细检查测试线的语法是否如上面的帖子所示。
页: [1]
查看完整版本: AfraLISP AutoLisp基础部分