vscode怎么画内存分布示意图?分享VisualLisp程序第二波

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(1)

继续分享关于Visual Lisp开发的程序,今天的知识点是读、写文件。不知道天天使用AutoCAD画图作为设计师的你,有没有注意到很多图型是规则的、构成其尺寸的数据都是标准的、图块的管理复杂且不易操作……,还有些情况需要将设计的情况或统计数据汇总输出到外部文件,诸如此类。有没有想过,在咱们自己开发一个程序,通过浏览标准数据库就能实现一键绘制标准件、通用件、常用件并且可以输出总结资料到外部文件—这里的数据库也不过是txt或者bat格式的文件。

OK,先来看一下今天要分享的程序吧。

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(2)

读取子程序中cond条件判断没有什么新奇的了吧?相关读取的函数就是(open file mode),我们这里是读取的模式"r",返回的是打开文件的代码。

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(3)

读取文件中一行的程序是(repeat 行号 (read-line 代码)),代码就是open函数返回的文件代码,行号就是你需要读取的数据的行数。

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(4)

小贴士:需要注意的是在控制台或者命令行进行调试时注意行数的概念,因为文件没有关闭,在进行read-line函数执行时会从上一次的行码为0开始计数进行读取,如果调试时需要使用正确的行码,需要关闭ff文件。

返回的是由那一行数据组成的字符串,应使用(substr 字符串 起始 长度)读取需要的数据,比如把第2行的40取出来如下

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(5)

Atof函数是把字符变为实数型。

再说一下写数据,这里分享的是统计选择集中圆、直线、圆弧的数量。

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(6)

主程序是选择集及相关的操作函数,子函数是输出函数,getfiled可以显示制定目录中具有指定扩展名的有效文件的列表,通过这个函数LISP语言可以访问CAD的文件对话框,有四个参数,一个是标题,一个是路径,一个是扩展名,最后一个是操作数。或者直接用open函数指向一个数据库文件。(write-line)函数和(read-line)类似,也是逐行书写。最后也需要关闭文件(close)。

vscode怎么画内存分布示意图?分享VisualLisp程序第二波(7)

小贴士:无论读还是写,数据库中格式很重要,就是给每种类型数据赋予的位数在每行书写时应统一。否则会乱,也会影响后续数据的处理。


叙一叙CAD二次开发Visual Lisp语言的数据类型

AutoCAD图形对象属性的获取和使用

讲一讲Visual Lisp的程序体结构

关于AutoCAD二次开发中选择集的相关内容

分享一个AutoCAD二次开发的查询计算程序

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页