杜磊
(镇江市勘察测绘研究院,江苏镇江 212001)
基于CASS 7.0图幅接合表中文注记自动添加的实现方法
杜磊∗
(镇江市勘察测绘研究院,江苏镇江 212001)
阐述了在CASS 7.0环境下,用Visual LISP实现了自动添加图幅结合表中文注记,提高了成图效率,降低了出错率,从而提高了成图作业的自动化水平。
南方CASS;图幅接合表;注记;VisualLISP
南方CASS 7.0地形地籍成图软件是比较流行的数字化测绘软件之一,已广泛应用于测绘生产中。它基于AutoCAD平台技术,AutoCAD的所有功能它都可以用,具有很强的编辑功能,数字化成图真正可以达到内外业一体化。AutoCAD内嵌的VBA和Visual LISP编程方式为用户提供了多途径的二次开发环境,使得用户根据需要对CASS进行定制与扩展成为可能。
图幅接合表是标明某一地区的多幅地图或分幅地图的相邻图幅位置关系的略图,可采用图名或图号表示。若采用图号注记,可以通过南方CASS 7.0成图软件中的批量分幅工具来实现。而采用图名注记,CASS 7.0没有提供相应的自动处理功能,只能通过人工添加。对于一个较大的测区,这种人工方式不仅编辑工作量大,且易出错,通过编制程序能很好地解决这一问题。本文阐述了如何利用LISP编程实现自动添加接合表中文注记的方法。
对于单幅图,图名是已知的,通过提取每幅图的图名及其插入点坐标,生成数据文件。对于每一幅图,读取数据文件,根据每个图名注记对应的坐标判断相对于当前图幅的位置关系,找出相邻接的图名注记,将其插入到接合表中相应的位置,实现接合表中文注记的自动添加。由于不同比例尺的地形图分幅以及表示的实地距离不一样,具体参数有所不同,下面以1∶10 000图为例探讨了实现方法。
3.1 数据文件格式
数据文件采用TXT格式,以图幅为单位,以图名和图幅的内图廓西南角坐标来组织的,每行为一条记录,格式如下:
3.2 读入txt文件
3.3 计算当前图幅内图廓西南角坐标
3.4 查找与当前图幅相邻接的图名并插入注记
根据读入的各个图名注记点坐标判断与当前图幅的位置关系,找出与之相邻的8个方向的图名。接合表相对于内图廓的位置是固定的,只要计算出接合表中每个方框的中心点就可以得出相应图名注记的插入位置,这样通过LISP编程就能实现图名注记的自动添加。
代码如下:
3.5 程序加载和运行
上述代码可以在VisualLISP编程环境下直接加载,也可以编译成VLX文件再加载运行,结果如图1所示。
图1 添加接合表中文注记
目前主流的数字化测绘成图软件已经在很大程度上提高了作业员的工作效率,不过常常也会遇到一些特殊的情况,而一般软件不可能面面俱到,因此很有必要针对性地开发一些程序来满足实际工作需要。本文介绍的自动添加接合表中文注记的程序,应用于生产后,不仅减轻了作业员的劳动强度,而且降低了出错率,提高了成图作业的自动化水平。
[1] 汤峻.Autocad高级应用与Visual LISP开发宝典[M].北京:人民邮电出版社,2001
[2] 谢刚生,邹时林.数字化成图原理与实践[M].西安:西安地图出版社,2000
[3] 佟里欣.AutoCAD 2000探秘-AutoLISP入门[M].北京:海洋出版社,2000
[4] GB/T7929-1995.1∶500、1∶1 000、1∶2 000地形图图式[S].
The Automatically Lettering Realization Method of Assemblage Index Based on South CASS 7.0
Du Lei
(Zhenjiang Institute of Geotechnical Investigation&Surveying and Mapping,Zhenjiang 212001,China)
This paper introduces the realization method of automatically lettering assemblage index,and the program function is developed for south CASS surveying and mapping software with VisualLISP.It will improve the mapping efficiency,reduce the error ratio and enhances the automatization of the chart.
south CASS;assemblage index;lettering;visual lisp
1672-8262(2010)03-147-03
P209
B
2010—11—14
杜磊(1978—),男,高级工程师,主要从事工程测量及地理信息系统应用研究。