本发明专利技术提供一种社区区域虚拟动态划分方法,包括步骤1、利用各个社区的中心点生成Delaunay三角网格;步骤2、利用生成的Delaunay三角网格,在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点,并将添加的各个分割点连接起来形成一个社区区域。本发明专利技术优点如下:使用本发明专利技术方法后,可以对各个社区的区域进行动态分配,且在进行动态分配时,可以在划分的图形中形象、清晰地体现出各个社区之间的数值(例如各社区的人口数量、用户数、人均收入等各项指标数值)关系,这有助于相关部门可以根据各社区区域的不同情况进行有效的决策。
【技术实现步骤摘要】
一种社区区域虚拟动态划分方法
本专利技术涉及一种社区区域虚拟动态划分方法。
技术介绍
目前,在一些不需要对社区区域进行详细划分的地方,都是通过采集社区周围的坐标串才能形成社区范围,或是使用圆圈或者点划分的方式来划分区域。但是,采用采集社区坐标串的方式,需要采集和存储过多的无用数据,会大大增加实际的工作量;采用圆圈或点划分的方式,则无法清晰地表现出各社区区域之间的关系。
技术实现思路
本专利技术要解决的技术问题,在于提供一种社区区域虚拟动态划分方法,通过该方法实现对各个社区的区域进行动态分配,且可以在划分的图形中形象、清晰地体现出各个社区之间的数值关系。本专利技术是这样实现的:一种社区区域虚拟动态划分方法,所述方法包括如下步骤:步骤1、利用各个社区的中心点生成Delaunay三角网格;步骤2、利用生成的Delaunay三角网格,在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点,并将添加的各个分割点连接起来形成一个社区区域。进一步地,还包括:步骤3、将连接的各分割点的线条平滑化成曲线,平滑化处理公式如下:其中,P(u)表示平滑后曲线上任意的点,P0、P1、P2表示要进行平滑的线条所对应的三个原始点,u表示平滑的系数。进一步地,所述“利用各个社区的中心点生成Delaunay三角网格”具体包括:步骤11、将各个社区的中心点按从上到下,从左到右的顺序进行排序;步骤12、按照排序将头三个中心点连接成三角形,并用该三角形形成一个凸包;步骤13、将下一个中心点与形成的凸包中的所有中心点连接,连接完后,保留与凸包中的任何线条都不相交的连线,将与凸包中的任何线条出现相交的连线去除;步骤14、判断连接生成的新三角形与相邻的所有三角形是否符合LOP法则,若符合,则将最外围的线条组合成新的凸包;若不符合,则将共享边所对应的两个中心点连接在一起,并将共享边线条去除,之后将最外围的线条组合成新的凸包;步骤15、重复执行步骤13、步骤14,直到连接完所有的中心点,并生成完整的Delaunay三角网格后才停止。进一步地,所述“在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点”具体为:先计算出要进行动态划分的社区中心点的数值与周围各社区中心点的数值的比例,然后按照计算出的比例在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点。本专利技术具有如下优点:使用本专利技术方法后,可以对各个社区的区域进行动态分配,且在进行动态分配时,可以在划分的图形中形象、清晰地体现出各个社区之间的数值(例如各社区的人口数量、用户数、人均收入等各项指标数值)关系,这有助于相关部门可以根据各社区区域的不同情况进行有效的决策;本专利技术还对动态分配后的区域线条进行平滑化处理,可以使线条看起来更加好看。附图说明下面参照附图结合实施例对本专利技术作进一步的说明。图1为本专利技术实施例中各社区中心点的示意图。图2为本专利技术实施例中各社区中心点排序的示意图。图3为本专利技术实施例在生成Delaunay三角网格时的状态示意图之一。图4为本专利技术实施例在生成Delaunay三角网格时的状态示意图之二。图5a为本专利技术实施例在生成Delaunay三角网格时的状态示意图之三。图5b为本专利技术实施例在生成Delaunay三角网格时的状态示意图之四。图6为本专利技术实施例生成的Delaunay三角网格的示意图。图7为本专利技术实施例在添加分割点前的示意图。图8为本专利技术实施例在添加分割点后的示意图。图9为本专利技术中进行平滑化处理的示意图。图10为本专利技术社区区域虚拟动态划分方法的流程框图。具体实施方式请参照图1至图10所示,一种社区区域虚拟动态划分方法,所述方法包括如下步骤:步骤1、利用各个社区的中心点生成Delaunay三角网格;该步骤1具体包括:步骤11、将各个社区的中心点按从上到下,从左到右的顺序进行排序。例如,在本实施例中包括a~f共8个社区中心点(如图1所示),此时就将这8个社区中心点的按从上到下,从左到右的顺序进行排序(如图2所示)。步骤12、按照排序将头三个中心点连接成三角形,并用该三角形形成一个凸包;如图3所示,将a、b、c三个中心点连接成三角形,该三角形所形成的凸包即为凸包abc。步骤13、将下一个中心点与形成的凸包中的所有中心点连接,连接完后,保留与凸包中的任何线条都不相交的连线,将与凸包中的任何线条出现相交的连线去除。例如,将中心点d与凸包abc的所有中心点连接形成凸包abd(如图4所示)。步骤14、判断连接生成的新三角形与相邻的所有三角形是否符合LOP法则,若符合,则将最外围的线条组合成新的凸包;若不符合,则将共享边所对应的两个中心点连接在一起,并将共享边线条去除,之后将最外围的线条组合成新的凸包。例如,在将中心点e与凸包abd的所有中心点连接时,首先,由于中心点e与中心点c、a的连线都会与凸包abd中的线条相交,因此,将线条ec和线条ea去除;然后,判断生成的新三角形bde与相邻的三角形bcd是否符合LOP法则,由于中心点e不符合LOP法则,此时,就将三角形bde和三角形bcd更改为三角形bce和三角形cde(如图5a和图5b所示)。步骤15、重复执行步骤13、步骤14,直到连接完所有的中心点,并生成完整的Delaunay三角网格后才停止。本实施例中,社区中心点a~f形成的完整Delaunay三角网格如图6所示。步骤2、利用生成的Delaunay三角网格,在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点,并将添加的各个分割点连接起来形成一个社区区域。其中,所述“在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点”具体为:先计算出要进行动态划分的社区中心点的数值与周围各社区中心点的数值的比例,然后按照计算出的比例在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点。下面以社区(A、B、C、D、E共5个社区中心点)的用户数为例对分割点的添加做进一步说明:5个社区中心点所形成的Delaunay三角网格如图7所示,其中,取C为要进行动态划分的社区中心点,且A中心点的用户数为5,B中心点的用户数为10,C中心点的用户数为5,D中心点的用户数为5,E中心点的用户数为15;此时,就对AC的连线以1:1的形式添加分割点,对BC的线条以1:2的形式添加分割点,对DC的线条以1:1的形式添加分割点,对EC的线条以1:3的形式添加分割点(如图8所示)。步骤3、为了使线条看起来更加好看,将连接的各分割点的线条平滑化成曲线,如图9所示,平滑化处理公式如下:其中,P(u)表示平滑后曲线上任意的点,P0、P1、P2表示要进行平滑的线条所对应的三个原始点,u表示平滑的系数。综上所述,本专利技术具有如下优点:使用本专利技术方法后,可以对各个社区的区域进行动态分配,且在进行动态分配时,可以在划分的图形中形象、清晰地体现出各个社区之间的数值(例如各社区的人口数量、用户数、人均收入等各项指标数值)关系,这有助于相关部门可以根据各社区区域的不同情况进行有效的决策;本专利技术还对动态分配后的区域线条进行平滑化处理,可以使线条看起来更加好看。虽然以上描述了本专利技术的具体实施方式,但是熟悉本
的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而本文档来自技高网...
【技术保护点】
一种社区区域虚拟动态划分方法,其特征在于:包括如下步骤:步骤1、利用各个社区的中心点生成Delaunay三角网格;步骤2、利用生成的Delaunay三角网格,在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点,并将添加的各个分割点连接起来形成一个社区区域。
【技术特征摘要】
1.一种社区区域虚拟动态划分方法,其特征在于:包括如下步骤:步骤1、利用各个社区的中心点生成Delaunay三角网格;步骤2、利用生成的Delaunay三角网格,在要进行动态划分的社区中心点与周围各社区中心点之间的连线上添加分割点,并将添加的各个分割点连接起来形成一个社区区域。2.根据权利要求1所述的一种社区区域虚拟动态划分方法,其特征在于:还包括:步骤3、将连接的各分割点的线条平滑化成曲线,平滑化处理公式如下:其中,P(u)表示平滑后曲线上任意的点,P0、P1、P2表示要进行平滑的线条所对应的三个原始点,u表示平滑的系数。3.根据权利要求1所述的一种社区区域虚拟动态划分方法,其特征在于:所述“利用各个社区的中心点生成Delaunay三角网格”具体包括:步骤11、将各个社...
【专利技术属性】
技术研发人员:张英歌,郭帮务,
申请(专利权)人:山东易华录信息技术有限公司,福建讯盟软件有限公司,
类型:发明
国别省市:山东,37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。