欢迎来到天天文库
浏览记录
ID:30922784
大小:376.00 KB
页数:7页
时间:2019-01-04
《自动检索autocad表格数据算法的研究及实现v2》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、自动检索AutoCAD托盘数据的算法研究刘文波(武船军船设计公司虚拟技术研究室,武汉市,430060)摘要:通过对自动检索AutoCAD托盘数据的算法研究,在AutoCAD格式类型的托盘表中实现数据检索、排序,按照一定的规则提取信息存储到数据库屮,利于托盘信息的管理,有效提高物料统计的效率。关键词:交点、单元格、特征点1.刖S武船在船舶设计软件方面已经引入了CADDS5、SPD等软件,这些软件经过消化吸收,在辅助船舶设计方面和提高设计精度、效率和公司的信息化方面来说都起到了越来越重要的作用。AutoCAD作为全球最普遍通用的计算机辅
2、助设计软件之一,因为其在二维绘图方血具有强大的功能,在易用性,操作使用方便性方而具有其它软件无可比拟的优势。船舶设计各协作单位间图表数据的交互,人部分以AutoCAD作为载体,为了设计文档的管理方便,通常安装图与托盘表在同一个DWG文件小,安装图用于指导现场的安装与施工,托盘表是一个工作任务包,是安装作业前物资集配的依据,后期町用于材料的汇总统计,利于核算船舶建造成本。但是托盘表采川AutoCAD进行设计,如果仅靠人手工提取和统计其内容数据,会存在以下几个问题:1.材料统计工作量大、需要花费的时间长,R准确率得不到冇效保证,对于船舶
3、行业来说,材料定货的周期一般较长,非常有必耍开展提前定货,避免对船舶的建造与安装造成影响;2.无法快捷地为制造管理系统提供编制工艺线路所需的数据、影响信息化牛产线的建设。自动检索AutoCAD托盘数据算法研究的冃的是为通过编程实现AutoCAD表格数据的获取,便于对材料进行统计,为采购部门提供采购依据,同时也为工艺线路提供数据支撑。2.算法研究自动检索AutoCAD托盘数据的算法要求能从AutoCAD图形中H动检索出安装托盘表中的数据信息,一般分为以下儿个步骤:1.获取组成“表格”的基本元素,如直线和文本;2.对基本元素进行处理,求
4、直线间交点;3.形成组成“表格”单元格、行,并且将单元格与文本进行关联;4.对单元格进行分析,形成“表格”,依据“关键字”提取“表格”内信息。2.1基本元素提取AutoCAD托盘表可以看作是一个“表格”,尽管不是真正意义上的“表格”,它可能是“块”也口J能是多个直线与文木组成,它们Z间除了位置关系Z外,没冇其它的任何联系,所以为提取数据信息,第一步是捉取所有直线与文本。1)提取直线与文本直线和文本是构成表格和数据的基木元索,由于存在设计人员将表格合成“块”的情况,因此必须首先将图中的“块”炸开,便于提取“直线”与“文木”实体。提収直
5、线和文本的流程如下图所示:图1提取直线和文本流程表1提取直线和文本流程功能描述表功能名称数据说明输入输出提取“块”和“多义线”图形中所有实体“块”和“多义线”的选择集合用于炸开包括数据信息的块,便于提取直线与文本提取“直线”和“文木”图形中所有实体“直线”和“文本”的选择集合用于捉収“直线”和“文本”实体实体分组“直线”和“文本”的选择集水平线集合、垂直线集合和文木集合用于求直线交点,便于后期的数据处理2)对文本排序对文本集合内的文本按其插入点的位置按从上到下、从左到右排列。文本排序的目的是为了后期与单元格进行关联。2.2单元格计算
6、及数据提取1)直线交点计算及排序交点是构成表格中单元格的基木元素、I大1此需要依据水平线和垂肓线求出所冇的交点,交点冇以下9种型式:f-胖1■時(針)fti陽#科II%述11180木质订购2翊桌1120木®订购31200X600X750125木质4+71X49QX44J1205115木质订卿678472248L宓188订购g葆几160aXflODX600151木质订购104320X590X7251210木订购11115订购■
7、5■W■■—1JI246图2交点型式图根据交点的型式,求交点的流程如下图所示:图3求交点流程图取出所冇的竖直
8、线和水平线,在定义某一点及其坐标后,再判断是否满足此点既在取出的竖肓线起点与终点之间又在取出的水平线起点与终点之间的条件,若条件满足即可判定为交点。这样就得到了所有交点,并为后续单元格的形成提供数据。对交点集合中的数据应按交点从上到F、从左到右进行排列,便于计算单元格。2)单元格计算及排序单元格的计算依据对集合内交点的处理,每个单元格存在四个交点,取左下点和右上点作为单元格的特征点。单元格中交点的计算顺序如下图所示:过程如下:(1)循环从交点集合中取出第一点;(2)循环从交点集合中取出第一点Z后的另一个交点,作为第二点;(3)第一点
9、为第二点进行比较计算,当第一点的Y值等于第二点的Y值,并且其X不等则该交点满足组成单元格第二点的要求,否则执行笫二步;(4)循坏从交点集合屮取出第二点之后的交点;(5)第二点与第三点进行比较计算,当第二点的X值等于第三点的X值,并且其
此文档下载收益归作者所有