[发明专利]一种基于安卓系统和JTS库切割矢量图斑的方法有效
申请号: | 201710009361.6 | 申请日: | 2017-01-06 |
公开(公告)号: | CN107193856B | 公开(公告)日: | 2020-06-26 |
发明(设计)人: | 臧卓;李成杰 | 申请(专利权)人: | 中南林业科技大学 |
主分类号: | G06F16/56 | 分类号: | G06F16/56;G06F16/29 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 410000 *** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 系统 jts 切割 矢量图 方法 | ||
本发明公开了一种基于安卓系统和JTS库切割矢量图斑的方法,包括以下步骤:S1:画一条切线,通过JTS库将图斑和切线转换为JTS形式,将选中的被切图斑自分解成一个外环和多个内环,所画的切线以自相交处的交点为分割点,将切线分解成一条非自相交的切线和多个单环切线;S2:判断环线中每条环切线与图斑中每个内环的关系,环切线与内环的关系包括包含、被包含、相交和相离,并做相应处理,将满足条件的环切线添加到内环集中。本发明可在安卓版森林资源调查软件中实现矢量图形编辑功能,能提高小班勾绘的精度和效率;减少工作环节和人为误差,优化调查人员的工作流程,提高森林资源调查的效率。
技术领域
本发明涉及地理信息系统矢量空间数据处理技术领域,尤其涉及一种基于安卓系统和JTS库切割矢量图斑的方法。
背景技术
小斑是森林资源调查、规划、设计与经营的基本单位,为了能够更直观形象地反应林地的形状、空间位置及面积大小,并参与森林资源蓄积量计算,在地理信息系统的矢量空间数据中用图斑表示。
JTS库(Java Topology Suite),是一个开源的Java应用程序接口,使用精确的模型和强大的几何算法,实现了一套核心的空间数据操作,可用于如GIS地理信息系统等基于矢量的地理学软件,也可被视做一个为计算几何提供算法的多用途的函数库。它提供点、多点、线、线性环、多线、面、多面、集合等空间数据模型,计算相等、脱节、相交、接触、交叉、内含、包含、重叠的空间关系,处理交集、合并、差异、对称差异的叠加操作,Buffer缓冲区分析,多边化、合并一组线等操作。JTS库以WKT(Well-Known Text)格式作为IO流,图斑的WKT形式为Polygon((外环),(内环1),(内环2),…),每个环至少包含四个点,其顶点形式为
x1 y1 z1,x2 y2 z2,...,xi yi zi,...,xn yn zn,x1 y1 z1(n≥3),外环的顶点为顺时针排列,内环为逆时针排列。
在Android版森林资源调查软件开发中,实现矢量图斑编辑是其一难点。由于Android系统中单个应用的内存限制,复杂的矢量图斑,成百上千的顶点,在移动设备上实现编辑图斑更加困难。现市场上的ArcGIS for Android、MapZone Mobile等部分GIS开发平台,已实现了对矢量图斑的切割。但这些平台收费较高,使用成本也高;基于这些平台做二次开发,其不开源的特征导致项目功能扩展、界面风格、数据结构等方面受到诸多限制。
发明内容
基于背景技术存在的技术问题,本发明提出了一种基于安卓系统和JTS库切割矢量图斑的方法。
本发明提出的一种基于安卓系统和JTS库切割矢量图斑的方法,包括以下步骤:
S1:画一条切线,通过JTS库将图斑和切线转换为JTS形式,将选中的被切图斑自分解成一个外环和多个内环,所画的切线以自相交处的交点为分割点,将切线分解成一条非自相交的切线和多个单环切线;
S2:判断环线中每条环切线与图斑中每个内环的关系,环切线与内环的关系包括包含、被包含、相交和相离,并做相应处理,将满足条件的环切线添加到内环集中;
S3:判断图斑的外环与内环集中每个内环的是否符合相交、被包含、相离和包含关系,外环中无内环,则添加所有的环切线到内环集,将不满足条件的内环从内环集中移除;
S4:使用切线集中的每条短切割线,外切割内环集中的每个内环,使用切线集中的每条短切割线,内切割图斑的外环,使用内环集中每个内环,内切割上一步的结果集;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中南林业科技大学,未经中南林业科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710009361.6/2.html,转载请声明来源钻瓜专利网。