CASS高程点位自动恢复实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CASS高程点位自动恢复实现

CASS高程点位自动恢复实现摘要:由于数据处理或作业过程中的不当操作,而引起CASS成图系统高程点位与注记值不一致的现象,文章针对该情况,运用计算机编程技术,快速恢复高程点位。 关键词:CASS;AutoCAD;ActiveX Automation 在编制地形图的过程,由于作业员的操作不当,往往引起个别或成片的高程点位属性高程值与高程注记不一致的情况,而在成果使用时,往往是致命的,在土方量计算时将会引起严重数据错误。而高程点位高程不能直观地检查出来,它包含在点位属性的标高值内,而人工检查,耗费大量的人力物力,且检查效果不明显。通常情况下,高程注记值是正确的,本文通过Visual Basic计算机编程技术,对AutoCAD进行二次开发,能将高程值迅速恢复,有效地解决此问题。 一、AutoCAD与CASS成图软件 AutoCAD是由美国Autodesk公司于20世纪80年代初为微机上应用CAD技术而开发的绘图程序软件包,经过不断的完美,现已经成为国际上广为流行的绘图工具。CASS地形地藉成图软件是基于AutoCAD平台技术的数字化测绘数据采集系统。广泛应用于地形成图、地藉成图、工程测量应用三大领域,且全面面向GIS,彻底打通数字化成图系统与GIS接口,使用骨架线实时编辑、简码用户化、GIS无缝接口等先进技术。自CASS软件推出以来,已经成长成为用户量最大、升级最快、服务最好的主流成图 系统。 二、Visual Basic ActiveX开发技术 ActiveX自动化技术是微软建立的标准,基于COM的自动服务程序,是对象链接与嵌入OLE的进一步发展,。AutoCAD ActiveX技术提供了一种机制,可使编程都通过编程以AutoCAD的内部或外部操作控制AutoCAD。其中,AutoCAD的对象模型是一种树型结构模型,根为”AutoCAD Application”,AutoCAD中的所有对象都是AutoCAD Application的子对象。 三、点位高程恢复的实现 (一)开发思路 由于Visual Basic可通过ActiveX技术来操控AutoCAD,因此可通过对象模型结构对实体进行编辑和更新,从而实现对数据的批量修改。 CASS高程点位数据放置在标高(Elevation)标段内,高程点位为块(AcAdBlock);高程注记实体类型为文字(AcADText),图层放置在“GCD”层,程序可通过选取图面中的高程注记,按一定距离的搜索圆对高程点位进行搜索,满足条件时,对高程注记转化为数据对高程点位进行赋值,从而实体对点位的数据恢复。 (二)ActiveX Automation对象模型 (三)Visual BASIC中连接 AutoCAD 启动Visual BASIC ,引用 AutoCAD 类型库。操作步骤:从“工程“菜单中选择“引用”选项,启动“引用”对话框。在“引用”对话框中,选择 AutoCAD 类型库,然后单击“确定”。 同时运行多个 AutoCAD 任务时,GetObject 函数会返回 Windows 运行对象表中的第一个 AutoCAD 实例。要显示 AutoCAD 图形窗口,需要将 AutoCAD 应用程序的 Visible 特性设置为 TRUE。 使用 acadDoc 变量引用当前的 AutoCAD 图形。 Dim acadApp As AcadApplication Dim acadDoc as AcadDocument Sub ConnectToAcad() On Error Resume Next Set acadApp = GetObject(, “AutoCAD.Application”) If Err Then Err.Clear Set acadApp = CreateObject(”AutoCAD.Application”) If Err Then End End If acadApp.Visible = True Set acadDoc = acadApp.ActiveDocument End Sub (四)处理流程 当Visual Basic连接到AutoCAD后,通过对实体的引用,可实体数据的处理。 1.定义过滤机制。首先对高程注记进行实体的过滤定义,只获取图面中高程注记文字数据,类型为文字(AcadText),图层为“GCD”,其次建立文字注记存在的选择集,将文字注记存放在选择集内,以便程序进行遍历。 Dim ftype(0 To 1) As Integer Dim fdata(

文档评论(0)

docman126 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档