首页 理论教育 如何编写斜截圆管小程序?

如何编写斜截圆管小程序?

时间:2023-06-26 理论教育 版权反馈
【摘要】:通过上节的学习,读者基本掌握了编写小程序的技巧。但是对不同情况的平面斜截圆柱管的使用,需要修改源程序和多次调用,觉得十分麻烦和不便。如果忽略该参数,则不显示提示信息。传给getint函数的有效数值范围是从-32768到+32767。对测试表达式进行求值,如果它不是nil,则执行循环体中的表达式,重复这个过程,直到测试表达式的求值结果为nil,退出循环。加载上述源程序后可以在VLISP控制台窗口中输入运行。也可以Auto-CAD命令行输入BJZK8命令后,直接运行。

如何编写斜截圆管小程序?

通过上节的学习读者基本掌握了编写小程序的技巧。但是对不同情况的平面斜截圆柱管的使用,需要修改源程序和多次调用,觉得十分麻烦和不便。本节将要解决这个问题。首先介绍本节要用到的几个AutoLISP函数。

1.增1函数

(1+number)

参数number为任意数字,返回参数加1。

样例:(1+5) 返回6

(1+-17.5) 返回-16.5

小于或等于函数:

(<=numstr[numstr]...)

参数numstr为数值型或字符串型,每个参数值都小于或等于它右边的参数则返回T,否则返回nil。

如果仅提供一个参数,<=函数返回T。

样例:(<=1020) 返回T

(<="b""b") 返回T

(<=35733.2) 返回nil

(<=299) 返回T

(<=2945) 返回nil

2.将整数转换成字符串函数

(itoa int)

参数int为整数型,返回转换所得的字符串。

样例:(itoa 33) 返回"33"

(itoa-17) 返回"-17"

3.暂停以等待用户输入一个整数函数

(getint[msg])

参数msg为用于提示用户的字符串。如果忽略该参数,则不显示提示信息。

传给getint函数的有效数值范围是从-32768到+32767。如果用户输入非整数,getint将显示信息“需要整数值”,然后等待用户重试。用户输入整数后返回该整数,如果用户没有输入整数而直接按Enter键,则返回nil。

样例:(getint"等分数N:")

命令:'VLIDE等分数N:16返回16

4.暂停以让用户输入一个实数函数

(getreal[msg])

参数msg为用于提示用户的字符串。如果忽略该参数,则不显示提示信息。

用户输入实数后返回该实数,如果用户没有输入实数而直接按Enter键,则返回nil。

样例:(getreal"圆管直径D:")

命令:978-7-111-28812-1-Chapter08-33.jpgVLIDE圆管直径D:426返回426(www.xing528.com)

5.循环函数

(while testexpr[expr...])

参数testexpr为包含测试条件的表达式;expr在testexpr为nil之前要求值的一个或多个表达式。

对测试表达式进行求值,如果它不是nil,则执行循环体中的表达式,重复这个过程,直到测试表达式的求值结果为nil,退出循环。并且返回最后的expr表达式最新的值。

样例:假如已经定义some-func函数,下列代码在test赋初值1后调用了10次some-func函数,其参数test的取值从1到10。最后它返回11,因为这是它最后那个表达式的值:

上面已经写完了全部程序,接下来就可以使用了。这些程序代码可以从随本书赠送光盘Program的目录中,把BJZK8-3.LSP文件直接复制到读者的计算机里,并由Visual Lisp的下拉菜单文件→打开文件将它打开,接着点选工具→加载活动编辑窗口按钮,加载成功在控制台窗口显示信息;3表格从#<editor"D:/Program/BJZK8-3.LSP">加载。

加载上述源程序后可以在VLISP控制台窗口中输入(c:BJZK8)运行。也可以Auto-CAD命令行输入BJZK8命令后,直接运行。

命令:BJZK8命令行输入BJZK8命令

等分数N:16用户交互输入等分数

圆管直径R:213用户交互输入圆管直径

斜截管截面高H: 200用户交互输入斜截管截面高

斜截面和管底夹角β: 30用户交互输入斜截面和管底夹角

1#线77.0244 输出各等分号位置处素线的高度

2#线86.3854

3#线113.043

4#线152.939

5#线200.0

6#线247.061

7#线286.957

8#线313.615

9#线322.976

10#线313.615

11#线286.957

12#线247.061

13#线200.0

14#线152.939

15#线113.043

16#线86.3854

17#线77.0244

读者如果对窗口交互输入感兴趣,可以进一步研究可编程对话框函数。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈