一种快速分割多边形面积的方法与流程

文档序号:12126386阅读:1333来源:国知局
一种快速分割多边形面积的方法与流程

本发明属于几何学技术领域,尤其涉及一种快速分割多边形面积的方法。



背景技术:

目前的不规则多边形面积等分的方法大多是采用人工几何作图的方法,费工费时,当等分数较多时工作量呈几何级数增长,且对于几何原理不太熟悉的人感觉无从下手,不利于推广使用,



技术实现要素:

本发明的目的在于提供一种快速分割多边形面积的方法,旨在解决目前在地理信息系统和农村土地使用权的划分上(即分割多边形面积)采用人工几何作图的方法存在费工费时的问题(当等分数较多时尤为突出),所带来的直接技术效果是节省了大量的人工费用。

本发明是这样实现的,一种快速分割多边形面积的方法,所述快速分割多边形面积的方法包括以下步骤:

读入按顺序排列的多边形的顶点数据(x1、y1、x2、y2、……xn、yn);

由多边形顶点数据构成按顺序排列的多边形的边,每个边由一个起点一个终点组成,上一个边的终点又是下一个边的起点,最后一个边的终点就是第一个边的起点。

建立多边形每个边的直线方程,计算总面积;

所述直线方程为:

y=a1+b1x

y=a2+b2x

.....................

y=an-1+bn-1x。

上式中,y=ai+bix为第i个边的直线方程,y为直线方程的纵坐标,x为直线方程的横坐标,ai为直线方程的截距,bi为直线方程的斜率。

进一步,选择首先对分,多边形剖分为两个多边形再对这两个多边形分别进行剖分;不选择首先对分则是对一个多边形进行剖分。

进一步,对多边形面积n等分要进行n-1次分割,每次分割的面积要等于总面积的1/n,且分割线只能与两个边相交,每次分割时选择最长边或最短边上的某一点作为起点,在另一边上的某一点作为终点,以这两点构成分割线,计算由分割线切割的小多边形的面积是否等于总面积的1/n,不等则重新调整起点和终点的坐标,直到分割的面积等于总面积的1/n为止。

进一步,如果由分割线切割的小多边形的面积等于总面积1/n,而且满足这一条件的分割线有多条,则选择最短的分割线作为实际的分割线。

本发明的另一目的在于提供一种所述快速分割多边形面积的方法软件系统,所述快速分割多边形面积的系统包括:

读入模块,用于读入按顺序排列的多边形顶点数据,由多边形顶点数据构成按顺序排列的多边形的边,每个边由一个起点一个终点组成,上一个边的终点又是下一个边的起点,最后一个边的终点就是第一个边的起点。

直线方程建立模块,用于建立多边形每个边的直线方程;

计算模块,用于计算被分割的小多边形的面积是否等于总面积的1/n,是否与其它边相交,用对分法不断地调整起点和终点的坐标,使其满足条件为止,若满足条件的分割线有多条,则选择最短的一条作为实际的分割线。

本发明提供的快速分割多边形面积的方法,只需将多边形的顶点数据输入即可,极大的提高了工作效率,且剖分精度高,几乎没有误差。在本发明中设置误差ε=10-7,即当剖分出的小块面积与总面积S的1/n(即S/n)之差的绝对值小于10-7时就认为剖分出的小块面积是总面积S的1/n。该方法可以快速、精确、批量的对矢量多边形进行任意多比例分割。

附图说明

图1是本发明实施例提供的快速分割多边形面积的方法流程图。

图2是本发明实施例提供的步骤S101示意图。

图3是本发明实施例提供的步骤S02示意图。

图4是本发明实施例提供的15等分且选择对分和不对分后的两种分割结果示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明首先将多边形的顶点数据(x1、y1、x2、y2、…、xn、yn)输入EXCEL数据表,然后使用本发明的方法(软件),输入等分数,即可进行自动剖分,而且有8种方法可供选择。

下面结合附图对本发明的应用原理作详细的描述。

如图1所示,本发明实施例的快速分割多边形面积的方法包括以下步骤:

S101:首先要建立多边形每个边的直线方程;

如图2所示以第i个边为例:

其中

ai=yi-bixi

S102:然后选择某个边(如最长边或最短边)上一点作为起点,另一个边上一点作为终点,计算被分割的小多边形的面积是否等于总面积的1/n,是否与其它边相交,用对分法不断地调整起点和终点的坐标,使其满足条件为止,若满足条件的分割线有多条,则选择最短的一条作为实际的分割线(如图3所示)。

下面结合具体实施例对本发明的应用原理作进一步的描述。

1、读入按顺序排列的多边形顶点数据,由多边形顶点数据构成按顺序排列的多边形的边,每个边由一个起点一个终点组成,上一个边的终点又是下一个边的起点,…,最后一个边的终点就是第一个边的起点。

2、对每个边由起点和终点建立直线方程:

y=a1+b1x

y=a2+b2x

......................

y=an-1+bn-1x;

上式中,y=ai+bix为第i个边的直线方程,y为直线方程的纵坐标,x为直线方程的横坐标,ai为直线方程的截距,bi为直线方程的斜率。

3、如果选择“首先对分”,则将该多边形剖分为两个多边形再对这两个多边形分别进行剖分,如果不选择“首先对分”则是对这一个多边形进行剖分。

4、对多边形面积n等分要进行n-1次分割,每次分割的面积要等于总面积的1/n,且分割线只能与两个边相交,所以每次分割时选择最长边(或最短边)上的某一点作为起点,在另一边上的某一点作为终点,以这两点构成分割线,计算由该分割线切割的小多边形的面积是否等于总面积的1/n,如果不等则重新调整起点和终点的坐标,直到分割的面积等于总面积的1/n为止。

5、除了每次分割的面积必须要等于总面积的1/n以外,分割线只能与两个边相交,而不能与其它边相交,如果与其它边相交则该分割线作废。

6、满足上面两个条件的分割线可能有多条,则选择最短的分割线。

本发明采用梯形面积的计算原理,只须提供多边形的顶点坐标,无需任何人工干预,便可用8种方法快速地对多边形进行面积等分,这8种方法是选择对分后4种:优先分割长边、优先分割短边、先长边后短边、先短边后长边。选择不对分后还是这4种,对分就是首先把多边形分成面积相等的两大块(如果是奇数等分则其中一块比另一块多一等分),用户则可对这8种分割选择其中自己满意的一种。多边形面积n等分要进行n-1次分割,每次分割的面积要等于总面积的1/n,且分割线只能与两个边相交,而不能与其它边相交,具体分割时首先要建立多边形每个边的直线方程,然后选择某个边(如最长边或最短边)上一点作为起点,另一个边上一点作为终点,计算被分割的小多边形的面积是否等于总面积的1/n,是否与其它边相交,用对分法不断地调整起点和终点的坐标,使其满足条件为止,若满足条件的分割线有多条,则选择最短的一条作为实际的分割线。

如图4所示,是15等分且选择对分和不对分后的两种分割结果。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1