河北华沃电力工程设计有限公司 河北保定 071051
摘要:本文主要利用Visual lisp编写,能够减少手工在AutoCAD图上提取坐标的错误和提高工作效率,保证后续工作的准确性。
关键词:AutoCAD; Visual LISP;提取坐标
Using Visual lisp written in AutoCAD graphics extraction Coordinate program
Liu Xin
(Hebei Huawo Power Engineering Design Co. Ltd,Baoding ,071051,China)
Abstract: This paper mainly uses Visual LISP to write, which can reduce the error of manual extraction of coordinates on the AutoCAD diagram and improve work efficiency, and ensure the accuracy of follow-up work.
Key words:AutoCAD; Visual LISP;Extraction coordinate
1 引言
外业放样(点坐标)工作中,通常的做法如下:
(1)在AutoCAD图形文件中,手工把坐标数据抄写到纸上。
(2)再把纸上的坐标数据输入到计算机中。
(3)将输入的坐标文件数据通过传输线传到GPS手薄和全站仪上。
在步骤(1)、(2)当中都是采用手工的方法,工作当中难免会有差错,如坐标数据中的一位数字或小数点的位置错误,都导致后续放样错误,正所谓差之丝毫、逆之千里。现在利用 AutoCAD中Visual lisp 语言二次开发编制一个自动提取坐标程序。便可以轻松解决上述问题。
2.程序设计
2.1程序源代码
(defun c:txzb ()
(command "_.layer""m""dldw""s""dldw""""")
(command "_.style""standard""hztxt.shx""3""1""0""""""")
(setq long "D:/LX.XYZ")
(setq f (open long "w"))
(command "osnap""node")
(while (/= dh "Z")
(setq p1 (getpoint " \n >>请用鼠标选取点:"))
(setq dh (getstring " \n >>请输入点号:"))
(setq z (getstring " \n >>请输入高程:"))
(setq x (car p1)
y (cadr p1 )
)
(command "text" (list x y) "0" dh)
(setq x(rtos x 2 3)
y(rtos y 2 3)
)
(setq zb (strcat dh "," y "," x "," z "," ))
(princ zb f)
(princ "\n" f)
)
(close f) )
2.2程序使用方法
首先要在AutoCAD的安装目录“support”文件夹中添加字体形文件“hztx.shx”。
(1)打开AutoCAD中的*dwg文件,在左下脚“命令”栏中输入“appload”加载提取坐标的文件“提坐标txzb”,点击“加载”
(2)在左下脚“命令”栏中输入“txzb”(不分大小写)按回车键。
(3)用鼠标选取所要的点位坐标。
(4)在左下脚输入这个点的点号,如“N1”按“回车键”
(5)在左下脚输入这个点的高程,如“30.45”按“回车键”
重复(3)、(4)、(5)的步骤,如果所要的点选取完毕,在输入点号时则需要输入大写的“Z”,程序结束。会在D盘自动生成一个名为“LX.XYZ”的文件,用记事本打开即可见到提取的坐标数据,把点号为“Z”的坐标删除,另存为所需的新文件。坐标文件的数据格式为:“点号,X坐标,Y坐标,备注”。
3.结束语
本程序是在AutoCAD下Visual lisp语言二次开发的。其功能主要是利用鼠标选取*.dwg文件中的点位坐标,减少手工抄写及输入的错误、提高工作效率。但其中还有些不足:使用者需要准确无误选取图上点位、输入点号和高程。不能进行中断或输入、返回、撤销等,反复练习几次即可熟练掌握。
参考文献
[1]周乐来、马婧.《AutoCAD2008 Visual LISP二次开发入门到精通》.机械工业出版社.ISBN-13:9787111237044
论文作者:刘新
论文发表刊物:《电力设备管理》2017年第7期
论文发表时间:2017/9/6
标签:坐标论文; 文件论文; 下脚论文; 高程论文; 数据论文; 程序论文; 手工论文; 《电力设备管理》2017年第7期论文;