专题栏目
相关文章
没有相关教程
您现在的位置: 数控调查网 >> 软件教程 >> 辅助设计 >> Auto CAD >> 正文
AutoCAD在测绘图形处理中的应用
作者:佚名 文章来源:数控调查网 点击数: 更新时间:2007-2-12 2:15:40

    近年来,测绘领域内机助制图的研究取得了飞速发展,通过绘图机输出的图形从过去简单的工程制图到现在的各种比例尺的地形图、地藉图、宗地图,以及非常复杂的小比例尺土地利用现状图等。在众多的绘图系统中,人们普遍采用的基础绘图软件是美国Autodesk公司的AutoCAD,因为该软件不仅具有丰富的绘图命令,还具有强大的图形编辑功能,而且软件运行相当稳定。但是熟悉AutoCAD的人都知道,要用好AutoCAD,不但要熟练掌握其各项命令,而且要熟练掌握AutoCAD提供的数据交换文件SCR、DXF和嵌入AutoCAD内部的高级语言 --Auto LISP语言,这样使您对各种图形,尤其对复杂的图形更加得心应手。关于 AutoCAD 在测绘图形中应用可归纳为以下几个方面。
   
    1 实现数据到图形的自动转换 
   
    有了原始数据,如何实现自动成图,这一直是人门关心的问题,在AutoCAD下,把原始数据变成图形,可以通过以下途径:
    (1)采用高级语言(BASIC语言或C语言)编制程序调用原始数据文件生成SCR命令文 件,在AutoCAD的图形编辑环境下调用SCRIPT命令执行该文件,生成相应的图形。
    (2)用高级语言生成DXF文件,在AutoCAD图形编辑环境下调用DXFIN命令打开该文 件,即可得到相应的图形文件。
    (3)用高级语言直接生成DWG图形文件
    (4)利用 Auto LISP语言,编写相应程序,读取有关数据文件,进行处理,并且调用 Auto CAD绘图命令,直接生成图形。
   
    以上四种方法中,第一种方法比较简单,但执行速度慢;第二种方法速度较快,但DXF文件格式死板,记录冗长,尤其是复杂的图形,DXF文件长得惊人。第三种方法较前两种方法理想,但这种方法对于一些复杂的图形尚有一定的难度,况且,不同的AutoCAD版本,DWG文件的结构也不同,使程序不能通用。三种方法都有一共同的特点,先在AutoCAD外,用高级语言做数据处理,然后再回到AutoCAD下成图,效率低。第四种方法是直接在AutoCAD下工作,减少了中间环节,提高了效率。而且具有较强的通用性,对一些较复杂的图形,更直接方便。 
   
    2 实现图形到数据的自动转换
   
    刚接触AutoCAD的人都有下面的感觉,就是由数据生成图形容易,由图形返回数据困难, 有LISP语言,这个问题就会迎刃而解。
   
    2.1 图纸资料的数字化
    要把图像资料变成相应的数据,一般是通过数字化仪和扫描仪。对于手扶式数字化仪来 讲,我们可以根据不同要求来编制相应的LISP程序,完成图形的数字化。程序运行时,把从 数字化仪传递来的数据信息(点的坐标)连同交互式状态下输入的有关编码合并以一合理的数据结构存贮于数据文件中,同时,在屏幕上,采用不同的图层,不同的颜色进行同步显示。从而使数字化过程变得非常直观、形象,避免产生丢点或重复等各种错误的发生。这样数字化的结果,不仅得到与原图纸相对应的数据文件,也同时生成了一幅相对应的图形文件。数据文件可以纳入有关相对应的数据管理系统中,而图形文件为将来的输出和变更修改提供了方便。对于扫描仪,是将原图通过扫描仪扫描形成位图文件(文件扩展名为BMP或TIF),经矢量化软件把图形的数据信息分类存贮于数据文件中。
   
    2.2图形变更后,数据的自动更新
    测量领域的各种图形随时间的推移是不断发生变化的,为保证图形的现实性,就要对图形随时加以修改,这种修改大多数是直接对原图文件利用AutoCAD的图形编辑功能来完成,但随之产生一个问题,就是图形文件修改后,原图对应的数据文件如何修改?解决这个问题的最好办法是利用AutoLISP语言。 在AutoLISP语言中,有很多实体访问函数,实体名称函数、实体数据函数,运用上述函 数编制一个LISP程序就可以实现图形文件到数据文件的自动转换。具体过程如下: 用ssget函数构造一个选择集,在利用sslength函数求出选择集实体的个数,然后ssname函数依次求出每个实体的名称,在通过entget函数就可以获得实体的下列信息: 实体类型,所在层名和实体颜色号(一般图形的编码就隐含在图层和颜色中)。实体类型常见有:组合线、直线、注记和块。 如果实体是直线,我们就可以直接读取直线的起始坐标。如果实体是注记类,我们可以读取注记内容,字符高度,方向及注记点位坐标。 如果实体是块,我们就可以直接读取块名,插入点位,旋转角度和X、Y方向比例因子。
   
    如果是组合线,可利用entnext函数依次读取线上的各点坐标。把上面获得数据按所需 要的格式,输入到相应的数据文件中,即实现了图形到数据的自动转换。这样一来,如果原图形中某一范围需要修改的话,就可以利用AutoCAD编辑命令完成,甚至可以把原图中元素删除掉,重新绘制,修改完成后,运行上述LISP程序,给出变更范围,计算机立即生成一个新的数据文件,重新纳入管理系统中去,从而保证了图形于数据的统一。
   
    2.3利用图形和数据相互转换功能进行控制网的优化设计
    控制网的精度取决于网形结构和观测量的精度,控制网的结构主要任务是确定合理的网形结构。这个过程完全可以在AutoCAD下完成。
   
    首先,把已知数据输入计算机,初步确定待定点的位置,再用边长和方向把这些点连接起来构成控制网。网中已知点、未知点及观测边、观测方向均用不同的图层和颜色加以区分。然后,把该网形转换成相应的数据文件,则该数据文件含有网形的所有点位及观测信息。调用相应的精度估算程序,对该网做精度分析,其结果仍以图形形式返回AutoCAD中,如各点的误差椭圆等。设计者将根据这些精度指标,参照设计要求,合理调整该网的结构,反复上述过程,最后,完成该控制网的优化设计,输出该网设计图和精度分析结果。 
   
    3 用LISP程序实现图形的批量编辑
   
    在测量图形处理中,经常会遇到需要批量处理某类

[1] [2] 下一页


免责声明:作品版权归所属媒体与作者所有!!本站刊载此文不代表同意其说法或描述,仅为提供更多信息。如果您认为我们侵犯了您的版权,请告知!本站立即删除。有异议请联系我们。
教程录入:admin    责任编辑:admin 
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

|  设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 |