自动检索AutoCD表格数据算法的研究及实现V2.docVIP

自动检索AutoCD表格数据算法的研究及实现V2.doc

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

自动检索AutoCAD托盘数据的算法研究 刘文波 (武船军船设计公司虚拟技术研究室,武汉市,430060) 摘 要: 通过对自动检索AutoCAD托盘数据的算法研究,在AutoCAD格式类型的托盘表中实现数据检索、排序,按照一定的规则提取信息存储到数据库中,利于托盘信息的管理,有效提高物料统计的效率。 关键词: 交点、单元格、特征点 1.前言 武船在船舶设计软件方面已经引入了CADDS5、SPD等软件,这些软件经过消化吸收,在辅助船舶设计方面和提高设计精度、效率和公司的信息化方面来说都起到了越来越重要的作用。AutoCAD作为全球最普遍通用的计算机辅助设计软件之一,因为其在二维绘图方面具有强大的功能,在易用性,操作使用方便性方面具有其它软件无可比拟的优势。船舶设计各协作单位间图表数据的交互,大部分以AutoCAD作为载体,为了设计文档的管理方便,通常安装图与托盘表在同一个DWG文件中,安装图用于指导现场的安装与施工,托盘表是一个工作任务包,是安装作业前物资集配的依据,后期可用于材料的汇总统计,利于核算船舶建造成本。 但是托盘表采用AutoCAD进行设计,如果仅靠人手工提取和统计其内容数据,会存在以下几个问题: 1.材料统计工作量大、需要花费的时间长,且准确率得不到有效保证,对于船舶行业来说,材料定货的周期一般较长,非常有必要开展提前定货,避免对船舶的建造与安装造成影响; 2.无法快捷地为制造管理系统提供编制工艺线路所需的数据、影响信息化生产线的建设。 自动检索AutoCAD托盘数据算法研究的目的是为通过编程实现AutoCAD表格数据的获取,便于对材料进行统计,为采购部门提供采购依据,同时也为工艺线路提供数据支撑。 2.算法研究 自动检索AutoCAD托盘数据的算法要求能从AutoCAD图形中自动检索出安装托盘表中的数据信息,一般分为以下几个步骤: 1.获取组成“表格”的基本元素,如直线和文本; 2.对基本元素进行处理,求直线间交点; 3.形成组成“表格”单元格、行,并且将单元格与文本进行关联; 4.对单元格进行分析,形成“表格”,依据“关键字”提取“表格”内信息。 2.1基本元素提取 AutoCAD托盘表可以看作是一个“表格”,尽管不是真正意义上的“表格”,它可能是“块”也可能是多个直线与文本组成,它们之间除了位置关系之外,没有其它的任何联系,所以为提取数据信息,第一步是提取所有直线与文本。 1)提取直线与文本 直线和文本是构成表格和数据的基本元素,由于存在设计人员将表格合成“块”的情况,因此必须首先将图中的“块”炸开,便于提取“直线”与“文本”实体。 提取直线和文本的流程如下图所示: 图 提取直线和文本流程 表1提取直线和文本流程功能描述表 功能名称 数据 说明 输入 输出 提取“块”和“多义线” 图形中所有实体 “块”和“多义线”的选择集合 用于炸开包括数据信息的块,便于提取直线与文本 提取“直线”和“文本” 图形中所有实体 “直线”和“文本”的选择集合 用于提取“直线”和“文本”实体 实体分组 “直线”和“文本”的选择集 水平线集合、垂直线集合和文本集合 用于求直线交点,便于后期的数据处理 2)对文本排序 对文本集合内的文本按其插入点的位置按从上到下、从左到右排列。文本排序的目的是为了后期与单元格进行关联。 2.2单元格计算及数据提取 1)直线交点计算及排序 交点是构成表格中单元格的基本元素、因此需要依据水平线和垂直线求出所有的交点,交点有以下9种型式: 图 交点型式图 根据交点的型式,求交点的流程如下图所示: 图 求交点流程图 取出所有的竖直线和水平线,在定义某一点及其坐标后,再判断是否满足此点既在取出的竖直线起点与终点之间又在取出的水平线起点与终点之间的条件,若条件满足即可判定为交点。这样就得到了所有交点,并为后续单元格的形成提供数据。 对交点集合中的数据应按交点从上到下、从左到右进行排列,便于计算单元格。 2)单元格计算及排序 单元格的计算依据对集合内交点的处理,每个单元格存在四个交点,取左下点和右上点作为单元格的特征点。 单元格中交点的计算顺序如下图所示: 图 求单元格交点顺序图 过程如下: (1)循环从交点集合中取出第一点; (2)循环从交点集合中取出第一点之后的另一个交点,作为第二点; (3)第一点与第二点进行比较计算,当第一点的Y值等于第二点的Y值,并且其X不等则该交点满足组成单元格第二点的要求,否则执行第二步; (4)循环从交点集合中取出第二点之后的交点; (5)第二点与第三点进行比较计算,当第二点的X值等于第三点的X值,并且其Y值不等则该交点满足第三点的要求,否则执行第四步; (6)循环从交点集合中取出第三点之后的另一个交点,作为第四点; (7)当第四点的Y值等于第三点的Y值,并且第

文档评论(0)

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

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

1亿VIP精品文档

相关文档