您的当前位置:首页正文

Visual_LISP编程基础1

来源:华佗健康网


一 Visual LISP编程基础

一、实验目的

1.Visual LISP开发环境介绍;

2.熟悉Visual LISP开发环境和开发步骤,并掌握Visual LISP调试方法和调试过程,断点设置,单步执行,自动执行和数据监视等功能的使用。

二、实验设备

1.硬件环境:台式计算机;

2.软件环境:WIN XP操作系统,AutoCAD 2004。

三、实验步骤

1 熟悉Visual LISP开发环境

(1)进入Visual LISP

启动AutoCAD,通过选择菜单:工具->AutoLISP->Visual LISP编辑器,进入如下编程环境。

图5-1 Visual LISP集成开发环境

(2)输入如下所示程序

选择菜单:文件->新建文件,或工具按钮中的LISP程序。

,启动新的文件编辑窗口如下,并输入其

图5-2 编辑hello world源程序

源程序:

( print “hello,world”)

(3)保存

选择菜单:文件->保存,或工具按钮,文件取名为helloworld.lsp,注意LISP文件

名后缀。

(4)运行

选择菜单:工具->加载编辑器中的文字,或工具按钮行结果将会显示在控制台窗口中,如图5-3所示。

,即可运行当前程序。程序运

图5-3 hello world程序运行结果

该程序利用函数print输出字符串“hello,world”。

控制台窗口是一个单独的、可任意移动的窗口。在控制台窗口中用户可以直接输入、运行AutoLISP表达式并查看结果,与AutoCAD命令窗口的工作方式非常类似。但在控制窗口中显示一个AutoLISP变量的当前值只需输入变量名后回车,不再需要在变量名前加一个“!”。

在控制台中可以实现下面一些典型功能:

 可以执行表达式并显示表达式的返回值

 可以一次执行多个表达式

 可以在控制台和文本编辑窗口之间复制或粘贴文本,在控制台中可以使用大部分文本编辑命令

 通过在控制台中按Tab键可以回溯到以前输入的命令。多次按Tab键则可以回溯到更早输入的命令,按Shift+Tab则可以反向回溯命令

 通过按Tab键还可以实现对输入历史的关联搜索。例如,如果输入了表达式(+后按Tab键,VLISP将检索最近输入的以(+开头的表达式。按Shift+Tab键则可以反向回溯。

 按Esc键可以清除在控制台提示下刚输入的内容,按Shift+Esc将跳过在控制台提示下输入的内容,出现新的控制台提示行。

2 简单函数的编写

(1)进入Visual LISP编程环境并新建一个文件,输入以下程序,并命名为area.lsp。

图5-4 area源程序

注意其中的代码分色表示,即文本编辑器可以识别程序的不同组成部分并以各自的颜色表示,这样可以很容易地从程序中找出所需要的部分,以及发现拼写错误。

(2)运行

选择菜单:工具->加载编辑器中的文字。注意这时在控制台窗口没有任何输出。

在控制台窗口的命令提示符后输入(area)并回车,会得到如下结果:

图5-5 area程序运行结果

这是由于这个程序中定义了一个LISP函数(area),加载当前程序只是在当前的内存中定义了一个名叫area的函数,但是并没有去调用并执行它。要想得到结果,还需要用户明确地调用该函数,才能被执行。

3 调试程序

VLISP提供了许多有用的功能帮助调试程序。包括

 跟踪程序的执行;

 在程序执行中跟踪变量值;

 观察各个表达式的执行顺序

 检查在函数调用中的变量值

 中断程序的执行

 单步执行程序

 检查堆栈

为了实现这些功能,VLISP,提供了许多相应的工具:中断循环模式,检验器,监视窗口,跟踪堆栈工具和跟踪工具。

(1)设置断点中断程序的执行

将光标移到要设置断点的程序行,选择菜单调试->切换断点,或工具按钮当前位置设置(取消)一个断点,当程序执行到这里时将中断。

,即可在

图5-6 断点的设置

选择菜单:调试->继续,或点击工具按钮

,则可继续程序的执行。

(2)单步执行程序

选择菜单:调试->下一嵌套表达式,或工具按钮程序执行的步骤及其中间结果。

,可以逐个表单步执行,便于查看

图5-7 下一嵌套表达式单步执行

选择菜单:调试->下一表达式,或工具按钮表的内部。

,则可以执行下一个顶层表,而不进入

(3)监视表达式的值

选择菜单:调试->监视最新结果,或工具按钮,则可以即时监视最后一个运算的表

达式的值。如图5-8所示,当单步执行到(+ a b c)时,监视窗口中显示出它的值为12。

图5-8 监视窗口

(4)动态执行程序

选择菜单:调试->自动执行,即可将当前运行模式设为动态执行。当通过前述的方法加载并执行该程序时,在程序编辑窗口中将会动态显示当前被求值的表,直至整个程序运行完。

可以通过选择菜单:工具->环境选项->基本选项,在弹出的对话框中修改自动执行延时时间。

图5-9 自动执行延时设置对话框

4 编程练习

编制程序实现对某一实数小数点后第n位进行四舍五入运算。

四、实验总结

1.完成编程练习中的程序,加上程序说明与必要的注释,利用注释说明程序的运行过程与结果。

2. 编制Visual LISP 程序完成下面图形的绘制,其中由用户在运行时输入基点pt1,圆半径R,矩形的边长L和W。

因篇幅问题不能全部显示,请点此查看更多更全内容