AutoCAD
批量读取并输入点坐标及编号的方法探讨
山东金洲矿业集团有限公司
摘要:
本文探讨了应用
lisp
读取坐标数据文件,并将点编号对应输入
cad
设计图纸的方法。
该方法简单、快速,节省很大人力,且避免了输入大量点标注时容易出现的人为失误。
在应用
Autocad
设计图纸的过程中,
需要往设计图纸中输入大量点坐标和点
的编号。
大量点的批量输入已经有方法实现,
但是点对应编号的批量输入还没有
相应的简单方法实现。
点越多,
手工输入点的编号的工作量就越大,
并且容易出
错。
如何通过现有的编程技术实现快速的标注出点和该点编号是一个值得研究的
问题。
AutoLISP
是由
Autodesk
公司开发的一种
LISP
程序语言,
LISP
是
List Processor
的缩写。
通过
autolisp
编程,可以节省工程师很多时间。
AutoLISP
语言作为嵌入在
AutoCAD
内部的
具有智能特点的编程语言,
是开发应用
AutoCAD
不可缺少的工具。
AutoLISP
是一种功能
全面的解释性编程语言,可以很方便的调用
AutoCAD
命令、系统变量和对话
框。普通用户均可以用
lisp
编写出各种定制的绘图命令。
全站仪中所测量的点的坐标和编号数据可以直接导出为一个
txt
文件,文件
中的每一行数据格式为坐标点编号,
x
坐标,
y
坐标。如图一所示。
图一
点坐标数据格式
用到的主要命令和函数有:
command
、
text
、
substr
、
strcat
、
line
。
根据点的坐标值确定点的坐标标号的位置。
将文字标注输入到
cad
中的一个重要命令
Text
,其命令参数的含义为
(
文字
坐标值
”
x,y
”
,
文字高度
,
文字旋转角度
,
文字内容
)
。
Substr
函数
(substr string start [length])
返回字符串中的一个子字符串。
参
数
"string"
为一个字符串,
"start"
为正整数,指定
"string"
中的开始位置。
由于
LISP
内置字符处理函数功能有限,为了便于程序的实现,将所读取的
坐标数据的长度限制,
以便于实现正确的读取点的文字标注和坐标。
限制编号字
符串的字符个数为
5
,点的坐标字符串个数为
8
。