[发明专利]一种线面叠加方法有效
申请号: | 200810101617.7 | 申请日: | 2008-03-10 |
公开(公告)号: | CN101533524A | 公开(公告)日: | 2009-09-16 |
发明(设计)人: | 朱效民;刘焱;闫杰;申排伟;方金云 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T17/50 |
代理公司: | 北京泛华伟业知识产权代理有限公司 | 代理人: | 王 勇 |
地址: | 100080北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 叠加 方法 | ||
技术领域
本发明涉及计算几何、计算机图形学的研究领域,更进一步涉及地理 信息系统(Geographical Information System-GIS)空间叠加分析算法的 线面叠加方法。
背景技术
地理信息系统是在计算机硬、软件系统支持下,对整个或部分地球表层 空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描 述的技术系统。空间分析是地理信息系统的重要组成部分,也是评价一个 地理信息系统功能的主要指标之一。空间分析是基于地理目标的位置和形 态特征的空间数据分析技术,其目的是提取和发现隐含的空间信息和规 律,是空间数据挖掘和知识发现的基本方法之一。空间分析主要包括空间 量算、关系查询、缓冲分析、叠加分析、网络分析等内容,其中的叠加分 析是本发明所要关注的焦点。在常见的地理信息系统中,采用分层方式组 织地理景观,同一区域的整个数据层集表达了该地区地理景观的内容。在 对分层数据进行组合时采用了叠加分析。具体的说,叠加分析是将相关主 题层组成的数据层进行叠加产生一个新数据层的操作,其结果综合了原来的 两层或多层要素所具有的属性。叠加分析不仅包含空间关系的叠加,还包括 属性关系的综合。叠加分析核心是相交线段的处理,即全局的叠加是通过 对存在交点或者在端点相接的局部线段进行处理来完成,两个相离的线段 对整体叠加的实现没有任何意义。
最基本的叠加分析是在两个图层上的操作,假设把第一个图层叫做输入 图层,第二个图层叫做叠加图层,则输入图层与叠加图层之间互为对应图层。 在叠加分析中,叠加图层必须是面图层,而输入图层可以是点、线或者面图 层,分别对应点面、线面和面面叠加。本发明重点涉及线面叠加方法。
现有的公开技术中,只有单条线的裁剪算法,即线裁剪。对于大数据 量线的裁剪,没有相关的文献可以参考。对每条线,其具体裁剪步骤如下:
1.求得线与多边形的交点,并把交点插入到线的存储链表结构中去。 其中,对一些特殊类型的交点,通过微小偏移,转化成普通的两两相交的 交点。因为只有一条线与多边形的线段,因此线段的数量比较少,求交点 一般采用暴力求解法,即对线上的线段以及多边形的边两两求交点。
2.对上述按顺序存储的链表结构(包括端点与交点),选取某一段上 的第一个交点,判断此交点的出入属性。根据奇偶原则,可以得到所有的 交点的出入属性。所谓的奇偶原则即,正常相交的情形下,一条线与一个 多边形的所有交点必然是出入点交替出现的,不可能有两个连续入点,也 不可能有两个连续出点。因此一旦一个端点的出入属性得到了,其余交点 的出入也就得到了。
3.根据交点及其属性,顺次得到在多边形内的以及在多边形外的部 分。这样即完成了一条线与面的叠加。
综上,现有的技术主要存在两方面的问题:对线上的每条线段与多边 形上的每条边计算交点采用暴力求解法,这样两两计算的暴力算法计算速 度慢。并且,对于一些特殊类型的交点,比如相交在端点、重叠边等情形, 线裁剪算法一般是通过微小的数据偏移,把特殊类型的交点转化成普通交 点,造成了精度的缺失。因此,迫切需要一种能够有效降低算法复杂度、 并对特殊交点特殊处理的方法。
发明内容
本发明的目的是克服现有的线面叠加方法中,在计算交点时暴力算法 导致的计算速度慢的缺陷,从而提供一种基于扫描线算法的线面叠加方 法。
为实现上述目的,根据本发明的一个方面,提供了一种线面叠加方法, 包括以下步骤:
1)对所有GIS输入图层的线上的线段和GIS叠加图层的多边形的边 基于扫描线算法进行计算,得到属于所述线与多边形的边的过同一个点的 相交线段,计算所述相交线段的交点;
所述步骤1)包括如下步骤:
11)接收所述线上的线段和所述多边形的边,得到事件点结构;
12)从所述事件点结构中取得最小的事件点,得到属于所述线与多边 形的边的过同一个点的相交线段,计算所述相交线段的交点,更新所述事 件点结构;其中所述计算所述相交线段的交点,包括以下步骤:
121)把所述相交线段根据所属图层、所属的几何体进行分组,得到 属于不同图层的小组对;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810101617.7/2.html,转载请声明来源钻瓜专利网。