使用VisualLISP创建简单的LISP应用程序教程

2016-03-18 15:51 491 1 收藏

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的使用VisualLISP创建简单的LISP应用程序教程,过去的都会过去,迎接崭新的开始,释放更美好的自己。

【 tulaoshi.com - autocad教程 】

本节通过一个简单的实例来讲述LISP程序的创建过程,介绍编制LISP程序的一些基本步骤,以及LISP程序在AutoCAD中的加载和运行的方法。首先来创建一个最简单的LISP程序—-“Hello.lsp”,在AutoCAD2002中加载并运行该程序,将会在命令行出现-“Hello,VisualLISP!”。

36.2.1VisualLISP与AutoCAD的通信

用户可以直接在AutoCAD命令行中键入AutoLISP表达式。AutoCAD通过括号来确认AutoLISP表达式。AutoCAD每当发现一个左括号,就确认为AutoLISP表达式,并由AutoLISP求表达式的值后返回AutoCAD,AutoCAD使用返回结果并继续进行其他工作。

注意在AutoLISP表达式中,左、右括号必须配对,否则AutoCAD将给出提示符n,n表示右括号丢失数目。

此外,在AutoCAD中调用并执行AutoLISP程序。在AutoLISP程序中采用COMMAND函数来与AutoCAD命令程序处理器通信,COMMAND从AutoLISP获得命令并将其传给AutoCAD。

36.2.2实例1最简单的LISP程序——“Hello.lsp”

Step1创建新文件

(1)运行AutoCAD2002系统,以“acadiso.dwt”为样板创建图形文件,并调用“vlisp”命令进入VisualLISP环境。

(2)单击“Standard(标准)”工具栏中的按钮,新建一个LISP文件。

Step2输入代码并保存文件

(1)在编辑窗口中输入源文件“Hello.lsp”的代码,如图36-3所示。程序清单如下:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/autocad/)

;;;*Hello.lsp–VisualLISP文件实例

(prompt"Pickpoint:");指定运行时的提示信息

(setqipt(getpoint));在屏幕上指定一点并将其坐标值赋予变量“ipt”

(setqhgt15);给变量“hgt”赋值

(Command"_.TEXT""_S""STANDARD"ipthgt0"Hello,VisualLISP!")

;调用“Commnad”函数与AutoCAD进行通信

(2)单击“Standard(标准)”工具栏中的按钮,以“Hello.lsp”为名保存该文件。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/autocad/)

Step3运行LISP程序

(1)确认编辑窗口处于前台状态,选择菜单【Tools(工具)】→【LoadTextinEditor(加载编辑器中的文字)】,则该程序被加载并运行。系统将返回AutoCAD窗口,并提示用户选择一点,并以指定点为基点来绘制文字。结果如图36-4所示。

(2)如果用户退出VisualLISP环境并返回AutoCAD系统窗口,则需要对该程序进行加载后,才能运行。选择菜单【Tools(工具)】→【LoadAppcation…(加载应用程序)】,弹出“Load/UnloadApplications(加载/卸载应用程序)”对话框,如图tulaoshi.com36-5所示。查找并选择上一步中所创建的“Hello.lsp”文件,并单击Load按钮进行加载。加载后的文件名称将显示在“LoadedApplications(已加载的应用程序)”列表中,并在对话框的左下部显示加载信息。

(3)完成加载后,单击Load按钮关闭对话框,系统将运行“Hello.lsp”程序。

实例说明

1.LISP源文件为ACSII格式,并忽略空格键、Tab键和回车键产生的空白。文件中的注释部分可放在文件中任何一处,但必须以分号“;”开始。

2.在编辑窗口中对文件进行编辑时,如果对文件进行了修改或添加了文本,则编辑窗口标题栏上的控制图标将变为,同时VisualLISP在状态栏上的文件名后面显示星号“*”。用户保存该文件后,控制图标变为,同时状态栏上的星号消失。

3.VisualLISP中为程序编写提供了专门的文本编辑器。该编辑器不仅仅是一个书写工具,不但具有常规的编辑功能,同时还具有许多专为支持AutoLISP编程而设计的功能,主要包括:

(1)文件语法着色:用于识别AutoLISP程序的不同部分并给它们指定各自的颜色。这使得用户可以更容易地找到程序的各个组成部分和拼写错误。

(2)设置文本格式:可以设置AutoLISP代码的格式,使代码更易于阅读。用户可以从许多种不同的格式样式中挑选自己喜欢的格式。
(3)括号匹配:可以通过查找与任意开括号匹配的闭括号来帮助用户检测括号匹配错误。

(4)执行AutoLISP表达式:不必离开文本编辑器就可以测试表达式和代码行。

(5)多文件查找:文本编辑器用单个命令就可以在多个文件中查找某个词或表达式。

(6)AutoLISP代码的语法检查:文本编辑器可以对AutoLISP代码进行求值并亮显语法错误。

4.在AutoCAD中还可以自动加载LISP程序。每次启动AutoCAD时,AutoCAD都从库路径中搜索acad.lsp文件。如果找到该文件,则将它加载到内存中。如果用户在每次运行AutoCAD时都需要加载某个AutoLISP程序,则可将该程序复制到acad.lsp文件中即可实现自动加载。用户还可指定在每次创建新文件时加载acad.lsp文件,请参见第29章。

另一种由AutoCAD自动加载的AutoLISP程序文件用于定义当前菜单的支持函数,其文件扩展名为.mnl。当AutoCAD加载

12下一页

来源:http://www.tulaoshi.com/n/20160318/1888338.html

延伸阅读
MFC应用程序中指针的使用 作者:gouguijia 1) 在View中获得Doc指针 2) 在App中获得MainFrame指针 3) 在View中获得MainFrame指针 4) 获得View(已建立)指针 5) 获得当前文档指针 6) 获得状态栏与工具栏指针 7) 获得状态栏与工具栏变量 8) 在Mainframe获得菜单指针 9) ...
    SSL 为使用 VNC 和标准 Web 浏览器对远程桌面进行方便、安全的访问提供了一种新颖的机制。     您希望使用比专有解决方案更方便并且具有比 ssh 更具安全性的方式来访问远程桌面吗?本文将介绍一种很好的方法,这是我们之前从未介绍过的一种技术。     这种想法是使用 SSL 为嵌入在 Web ...
一、 引言 如果你是一个Java软件和Ajax开发者,那么,Google Web Toolkit(GWT)应该已经引起你的关注。 Google公司已经于2006年5月在Apache许可协议下发布了这种免费的开发工具包。GWT的设计目的是为了简化用Java语言开发Ajax应用程序。Google初始发行的beta版本可以适用于Windows和Linux平台,并许诺稍后要发行一个Mac OS X版...
标签: 电脑入门
我们将介绍如何创建window应用程序,如何利用基本控件设计窗体,我们采用案例的形式给大家讲解,案例:制作系统登录界面。这里我们结合ADO.NET实现高校学生管理系统(StudentSys)的登录界面的制作。 工具/原料 Visual Studio (我是用Visual Studio 2010) 编程基础(懂得基本的编程语法) 步骤/方法 1.创建一个window窗体程序(...
11.1 Help文件的建立 Help文件是Micosoft Windows3.0以上的版本提供的超文本帮助文件。利用这种超文本,用户可非常方便地使用帮助文件系统。帮助文件是以主题为主线进行编写的,一个主题可以跳转至相关的主题,也可按关键字进行主题查询。帮助文件与软件开发工具相结合,可实现应用程序的'上下文敏感',而且帮助系统自动装入...

经验教程

13

收藏

10
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部