CN106934842A - 闭合区域的识别方法和装置 - Google Patents
闭合区域的识别方法和装置 Download PDFInfo
- Publication number
- CN106934842A CN106934842A CN201710144378.2A CN201710144378A CN106934842A CN 106934842 A CN106934842 A CN 106934842A CN 201710144378 A CN201710144378 A CN 201710144378A CN 106934842 A CN106934842 A CN 106934842A
- Authority
- CN
- China
- Prior art keywords
- point
- directed graph
- trigger
- keypoints
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012790 confirmation Methods 0.000 claims description 10
- 230000000630 rising effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 239000003973 paint Substances 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 241000406668 Loxodonta cyclotis Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 210000003733 optic disk Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种闭合区域的识别方法和装置。其中,闭合区域的识别方法包括:获取绘制图形的特征点集,基于特征点集构建无向图;获取触发点的坐标,根据触发点的坐标确定无向图中的起始点;根据触发点、起始点和无向图,确定绘制图形中的闭合区域。本发明实施例的技术方案,通过触发点的坐标以及基于绘制图形的特征点集构建的无向图,确定无向图中的起始点,进而根据触发点、起始点和无向图确定绘制图形中的闭合区域,且不用确定绘制图形中所有的闭合区域,根据触发点有目的地获取闭合区域,不仅解决了绘图工具无法准确填充闭合区域并得到矢量填充块的问题,而且能够高效、精准确定绘制图形的闭合区域,以实现对填充块的精准矢量填充。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种闭合区域的识别方法和装置。
背景技术
在日常生活、工作和学习的过程中,为了便于直观生动地表达图像内容,图像填充被广泛应用。例如,当老师绘制完几何题目的图形,需要计算该图形中指定区域的面积时,可使用填充功能以不同的颜色或花纹填充需要计算的区域,以达到提醒的效果。或者,当设计师绘制完自己的图形,需要填充颜色时,可直接通过填充功能,在自己需要填充的区域填充相应的颜色。
现有的图形填充的技术方案,通常采用图像识别技术,将当前绘制的内容转换为图片内容,通过图像处理技术查找到图片中的轮廓,然后通过填充点得到填充的轮廓,从而实现对图形分块填充。但是该方案需要对图片中的每个像素点遍历和判断处理,运算量巨大,也无法获得准确的矢量填充区域,而且由于获得的填充块为图片,锯齿很大,体验极差。
发明内容
本发明提供了一种闭合区域的识别方法和装置,以解决了绘图工具无法准确填充闭合区域并得到矢量填充块的问题,能够精准确定绘制图形的闭合区域,以实现对填充块的精准矢量填充。
第一方面,本发明实施例提供了一种闭合区域的识别方法,该方法包括:
获取绘制图形的特征点集,基于所述特征点集构建无向图;
获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点;
根据所述触发点、所述起始点和所述无向图,确定所述绘制图形中的闭合区域。
第二方面,本发明实施例还提供了一种闭合区域的识别装置,该区域包括:
无向图构建模块,用于获取绘制图形的特征点集,基于所述特征点集构建无向图;
起始点确定模块,用于获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点;
闭合区域确定模块,用于根据所述触发点、所述起始点和所述无向图,确定所述绘制图形中的闭合区域。
本发明实施例的技术方案,通过触发点的坐标以及基于绘制图形的特征点集构建的无向图,确定无向图中的起始点,进而根据触发点、起始点和无向图确定绘制图形中的闭合区域,且不用确定绘制图形中所有的闭合区域,根据触发点有目的地获取闭合区域,不仅解决了绘图工具无法准确填充闭合区域并得到矢量填充块的问题,而且能够高效、精准确定绘制图形的闭合区域,以实现对填充块的精准矢量填充。
附图说明
为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
图1为本发明实施例一所提供的一种闭合区域的识别方法的流程图;
图2为本发明实施例二所提供的一种闭合区域的识别方法的流程图;
图3为本发明实施例三所提供的一种闭合区域的识别装置的结构框图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1为本发明实施例一所提供的一种闭合区域的识别方法的流程图。如图1所示,本实施例的方法可以由闭合区域的识别装置来执行,该装置可通过硬件和/或软件的方式实现,并一般可独立的配置在用户终端的应用端内中实现本实施例的方法。
其中,应用端可以为内嵌于用户终端中的某个客户端的插件,或者为所述用户终端的操作系统的插件,与内嵌于用户终端中的图形绘制类客户端(例如,画图软件或图形编辑器等)配合使用;应用端也可以为所述用户终端中一个独立的可提供图形绘制服务的客户端,本实施例对此不进行限制。
本实施例的方法具体包括:
S110、获取绘制图形的特征点集,基于特征点集构建无向图。
其中,绘制图形的特征点可以是表征绘制图形的各个连接点,如各个图形的顶点或者边界点,也可以是绘制图形中图形与图形之间的交叉点等。基于特征点集构建无向图,可以是选取特征点集中的任意一个特征点作为起始点,然后根据绘制图形中各点之间的连接关系,构建无向图。具体地,可以是根据绘制图形各对象的数学方程计算并记录各对象之间所有交点的交点信息;所述交点信息包括交点坐标和交点之间的路径信息;基于所述交点信息构建无向图。根据数学方程计算出各交点的交点信息,不仅可以更精确地表征绘制图形,尤其适用于在几何教学中,实现对绘制图形进行区域面积、高或边的长度等各种数学运算,更加智能化。
S120、获取触发点的坐标,根据触发点的坐标确定无向图中的起始点。
示例性地,触发点可以为用户通过输入设备输入的点或者选中的点。一般地,触发点通常为用户有意向通过触发操作的控制触发点或者触发点所在区域,执行于触发操作相对应的功能。因此在本实施例中,可以获取触发点的坐标,然后根据触发点的坐标确定无向图中的起始点。
无向图中可能存在闭合区域,也可能不存在闭合区域,在无向图中存在闭合区域的情况下还可以是存在多个闭合区域。因此,为了准确地获取与触发点相关的闭合区域,具体地,可以通过添加辅助线的方式,获取触发点在预设方向上与绘制图形的交点中,距离触发点最近的点作为起始点。进一步地,可以是获取触发点的坐标,以触发点为坐标原点,建立新的坐标系,并在默认坐标系中计算所述新的坐标系的坐标轴与所述绘制图形的交点;分别计算出各个交点与触发点所形成的向量的长度,将所述长度最小的点添加到所述无向图中,作为所述无向图中的起始点。
S130、根据触发点、起始点和无向图,确定绘制图形中的闭合区域。
在本实施例中,确认绘制图形中的闭合区域可以理解为确认与触发点相关联的最小封闭区域。首先可以根据触发点、起始点和无向图中各个交点以及各交点之间的路径信息,逐个确定无向图中与触发点相关的可能构成闭合区域的各个关键点,进而根据各关键点以及预设的规则确定绘制图形中的闭合区域。
具体地,根据触发点、起始点和无向图,确定绘制图形中的闭合区域可以是,获取起始点在无向图中能够直接到达的相邻点为关键点,然后根据起始点、关键点和触发点确定旋转方向;进而获取该关键点沿该旋转方向能够直接到达的相邻点中与触发点距离最近的相邻点,确认为新的关键点。依次类推,直至新确认的关键点找不到相邻点或者新确认的关键点与第一个关键点重合为止。当然,若该关键点沿该旋转方向不存在相邻点,则获取该关键点沿旋转方向的反方向能够直接到达的相邻点中,以当前关键点为起点绕触发点旋转角度值最小的相邻点,确认为关键点。
本实施例的技术方案,通过触发点的坐标以及基于绘制图形的特征点集构建的无向图,确定无向图中的起始点,进而根据触发点、起始点和无向图确定绘制图形中的闭合区域,且不用确定绘制图形中所有的闭合区域,根据触发点有目的地获取闭合区域,不仅解决了绘图工具无法准确填充闭合区域并得到矢量填充块的问题,而且能够高效、精准确定绘制图形的闭合区域,以实现对填充块的精准矢量填充。
实施例二
图2为本发明实施例二所提供的一种闭合区域的识别方法的流程图,如图2所示,本实施例在上述各实施例的基础上,可选是所述获取绘制图形的特征点集,基于所述特征点集构建无向图包括:根据绘制图形各对象的数学方程计算并记录各对象之间的交点信息;所述交点信息包括交点坐标和交点之间的路径信息;基于所述交点信息构建无向图。
在上述技术方案的基础上,进一步地所述获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点具体可包括:获取触发点的坐标,以触发点为坐标原点,建立新的坐标系,并在默认坐标系中计算所述新的坐标系的坐标轴与所述绘制图形的交点;分别计算出各个交点与触发点所形成的向量的长度,将所述长度最小的点添加到所述无向图中,作为所述无向图中的起始点。
进一步地,根据触发点、起始点和无向图,确定绘制图形中的闭合区域可选是包括:将起始点在无向图中的任一能够直接到达的相邻点确认为关键点,确定起始点到关键点的向量绕触发点的旋转方向;获取新确认的关键点沿旋转方向能够直接到达的相邻点构成的备用关键点集合,判断备用关键点集合是否为空,备用关键点集合不包括前一个确认的关键点;若备用关键点集合不为空,则计算出备用关键点集合中与触发点距离最近的相邻点确认为关键点;若备用关键点集合为空,则获取新确认的关键点沿旋转方向的反方向能够直接到达的相邻点构成的备用关键点集合;判断备用关键点集合是否为空;若根据旋转方向的反方向确认的备用关键点集合不为空,则计算出备用关键点集合中以当前关键点为起点绕触发点旋转角度值最小的相邻点确认为关键点;判断新确认的关键点是否与第一个关键点重合,若是,则根据关键点确认闭合区域,否则继续获取新确认的关键点的备用关键点集合。
具体地,本实施例的方法包括:
S201、根据绘制图形各对象的数学方程计算并记录各对象之间的交点信息。
示例性地,绘制图形各对象可以是绘制图形中各直线、椭圆和/或贝塞尔曲线等;绘制图形各对象的数学方程例如可以是直线方程、椭圆的方程和/或贝塞尔曲线的方程等。根据绘制图形各对象的数学方程能够计算出各对象之间所有交点的交点信息,得到交点信息的集合。其中,交点信息包括交点坐标和交点之间的路径信息。交点之间的路径信息可以理解为经过此交点的对象(直线、椭圆和/或贝塞尔曲线等)。可以理解的是,绘制图形中各图形的数学方程和各交点的坐标是随着坐标系的变化而变化的,用户可以根据实际需求预先建立好坐标系,坐标系可以是平面直角坐标系,也可以空间直角坐标系,坐标系的原点也可以根据实际情况设置,在此并不做限定。
为了不重复的记录各交点,并有效地记录各交点的路径信息,可以将坐标相同的交点,合并为一个交点信息。例如:存在交点信息P1((0,0)(L1,L2)),表示对象L1与对象L2相交于(0,0),如果对象L1与对象L3也相交于(0,0),则将交点信息合并至P1,此时P1为((0,0)(L1,L2,L3))。这样记录的好处在于,还可以有效的减少后期的计算量,提高计算效率。
S202、基于交点信息构建无向图。
在本操作中,可以选取任一交点作为起始点,然后根据该交点的坐标以及该交点与各交点之间的路径信息,构建无向图。具体地,根据获得交点信息的集合P,遍历P,将所有在同一个对象上的交点归类到一个集合中,得到每个对象和在此对象上的点的信息列表PI。例如,P中在L1上的点的坐标有(0,0)、(2,2)和(5,5),经过归类后就有{L1,{(0,0)(2,2)(5,5)}}。遍历PI,将所有交点到相邻交点的路径信息记录下来,并将相同信息合并,以各交点为顶点,各交点之间的路径信息为边,构建无向图G。
S203、获取触发点的坐标,以触发点为坐标原点,建立新的坐标系,并在默认坐标系中计算所新的坐标系的坐标轴与绘制图形的交点。
示例性地,触发点可以是用户鼠标的所点击的点M,获取触发点的坐标即获取触发点在默认坐标系中的坐标,然后以触发点M为中心,做平行于默认坐标系的坐标轴的新的坐标轴,以建立新的坐标系。具体地,若默认坐标系位平面直角坐标系,则可以M为中心,做平行于X轴和Y轴的两条线M1和M2,建立新的坐标系。具体地,在默认坐标系中计算所新的坐标系的坐标轴与绘制图形的交点可以是,在默认坐标系中,可根据绘制图形各对象的数学方程(如直线方程,椭圆的方程,贝塞尔曲线的方程等)计算出各对象与新坐标系的坐标轴M1、M2的所有交点,并记录在集合Mp中。
S204、分别计算出各个交点与触发点所形成的向量的长度,将长度最小的点添加到无向图中,作为无向图中的起始点。
如上所述,可以遍历Mp中的点,计算出Mp中各个交点与触发点M所形成的向量的长度最小的点S,并将S的信息添加到无向图G中,作为无向图中的起始点。其中,向量长度为形成向量的两点的距离,即交点与触发点之间的距离。
S205、将起始点在无向图中的任一能够直接到达的相邻点确认为关键点。
具体地,根据无向图G,可以得到起始点S的相邻点的点集SN。其中,相邻点即起始点S在无向图G中不经过其它的点直接到达的点。可以在SN中取任意一个相邻点确认为关键点S1。进一步地,可将S1添加到记录表LS中,并在SN中删除S1。
S206、确定起始点到关键点的向量绕触发点的旋转方向。
在本实施例中,具体可以是连接起始点、关键点和触发点得到三角形,以起始点S到关键点S1的向量的方向,作为旋转方向F。其中,旋转方向为顺时针或逆时针。
S207、获取新确认的关键点沿旋转方向能够直接到达的相邻点构成的备用关键点集合。
由于要确认闭合区域,因此可以根据确认好的旋转方向去确认可能与关键点组成闭合区域的备用关键点。考虑到针对绘制图形的差异性,以及选择的关键点的不同,往往不确定新确认的关键点是否存在相邻点,而且在复杂的绘制图形中,关键点可能存在不止一个相邻点。因此,为了根据触发点确认出最小的闭合区域,可获取新确认的关键点沿旋转方向能够直接到达的所有的相邻点,构成的备用关键点集合S1S。
S208、判断备用关键点集合是否为空,若否,执行S209;若是,执行S210。
其中,备用关键点集合不包括前一个确认的关键点。在实际的绘制图形中,如上所述,关键点可能存在相邻点,也可以能不存在相邻点,因此需要判断备用关键点集合是否为空,即判断备用关键点集合S1S中是否存在相邻点。
S209、计算出备用关键点集合中与触发点距离最近的相邻点确认为关键点,执行S213。
如果备用关键点集合S1S中具有点,则计算出S1S中距离点M距离最近的相邻点的信息,并将该相邻点作为新的关键点。进一步地,可以将该相邻点记录到记录表LS中。因为要根据触发点确认最小的闭合区域,因此,选择备用关键点集合中与触发点距离最近的相邻点。可以理解的是,若备用关键点集合S1S中只有一个相邻点,则将该相邻点作为与触发点距离最近的相邻点。
S210、获取新确认的关键点沿旋转方向的反方向能够直接到达的相邻点构成的备用关键点集合。
如果备用关键点集合S1S中不存在沿旋转方向能够直接到达的相邻点,则要获取新确认的关键点沿旋转方向F的反方向旋转的相邻点。
S211、判断备用关键点集合是否为空,若否,执行S212;若是,执行S213。
可以理解的是,本操作中的备用关键点集合是指新确认的关键点沿旋转方向的反方向能够直接到达的相邻点构成的备用关键点集合。类似地,备用关键点集合不包括前一个确认的关键点。判断备用关键点集合是否为空的具体原因及相关操作与S208相似,在此不在赘述。
特殊地,若第一个关键点沿旋转方向以及旋转方向的反方向所确认的备用关键点集合均为空时,则确认为不存在闭合区域,可直接输出不存在闭合区域的提示信息。
S212、计算出备用关键点集合中以当前关键点为起点绕触发点旋转角度值最小的相邻点确认为关键点,执行S213。
如果F为顺时针,则计算出在备用关键点集合S1N中以关键点S1为起点绕触发点M逆时针旋转并且旋转角度值最小的相邻点确认为关键点;如果F为逆时针,则计算出在备用关键点集合S1N中以关键点S1为起点绕触发点M顺时针旋转且旋转角度值最小的相邻点确认为关键点。进一步地,可以将获取的关键点记录到记录表LS中。
S213、判断新确认的关键点是否与第一个关键点重合,若否,执行S214;若是,执行S215。
通过判断新确认的关键点是否与第一个关键点重合,可以判断出当前确认的关键点是否为闭合区域。例如具体可以是,判断新确认的关键点与记录表LS中所记录的第一个关键点是否一样,即是否返回起点。
S214、继续获取新确认的关键点的备用关键点集合,返回S206。
具体地,可以将起始点在无向图中的能够直接到达的新的相邻点确认为新确认的关键点,继续获取新确认的关键点的备用关键点集合,以确认闭合区域。需要说明的是,若遍历起始点在无向图中的能够直接到达的所有的相邻点,仍然得出备用关键点集合为空,则输出提示信息,提示用户找不到闭合区域。可以理解的是,如果取点时起始点在无向图中的能够直接到达的相邻点的集合SN为空,说明遍历集合SN中所有的点均无满足形成闭合区域的点,则可返回NULL,即不存在可填充的闭合区域。
S215、根据关键点确认闭合区域。
将所确认的各关键点以及各关键点之间的路径转换为闭合区域,例如具体可以是在记录表LS中依次记录符合上述记录条件的各关键点的信息,其中,关键点的信息包括各关键点以及各关键点之间所在对象的数学方程,即各关键点以及各关键点之间的路径信息。
需要说明的是,采用本发明实施例的技术方案,可能出现选择不同的关键点或旋转方向,所确认的闭合区域不同的情况。无论确认出哪个闭合区域,只要确认出一个闭合区域即可。
在上述各个实施例的基础上,可选地,在所述确定所述绘制图形中的闭合区域之后,还包括:判断所述触发点是否处于所述闭合区域内,若是,则对所述闭合区域进行填充;否则输出提示信息。
其中,触发点可以是通过输入设备所触发的点。示例性地,输入设备可以是鼠标、键盘以及触控区等可以提供输入操作或者控制光标输入的设备。触发方式具体可以是点击鼠标、通过键盘或触控区控制光标等。举例而言,在填充操作的过程中,当鼠标点击后,获得鼠标点击坐标P1,识别P1是否在闭合区域内,如果识别到P1在闭合区域内,则根据该最小闭合区域的各个交点(或者边界点)和各交点的路径信息,对该闭合区域进行填充,输出填充结果,显示填充效果。由于识别到P1不在闭合区域中,如,选中的坐标在绘制图形的各对象上,或者说在两个最小闭合区域的公共线上或与交点重合,或者选中的坐标位于绘制图形以外的区域等,则输出提示信息。示例性地,提示信息可以是提醒用户无法找到目标填充区域的信息。
本实施例的技术方案,通过以触发点以及关键点与触发点的距离、与绕触发点角度为参考选择关键点,能够准确获取到与触发点相关的最小的封闭区域作为目标获取的闭合区域,充分地考虑到用户需求。而且不用遍历绘制图形中的所有交点,通过绘制图形各对象的数学方程确认闭合区域,减少了计算成本,较为高效。尤其在填充操作中,能够准确得到矢量的填充区域,不管放大缩小,填充效果都较好。
实施例三
图3所示为本发明实施例三所提供的一种闭合区域的识别装置的结构示意图,该装置可通过硬件和/或软件的方式实现,并一般可独立的配置在用户终端的应用端内实现本实施例的方法。如图3所示,所述闭合区域的识别装置具体包括:无向图构建模块310、起始点确定模块320和闭合区域确定模块330。
其中,无向图构建模块310,用于获取绘制图形的特征点集,基于所述特征点集构建无向图;起始点确定模块320,用于获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点;闭合区域确定模块330,用于根据所述触发点、所述起始点和所述无向图,确定所述绘制图形中的闭合区域。
本实施例的技术方案,通过触发点的坐标以及基于绘制图形的特征点集构建的无向图,确定无向图中的起始点,进而根据触发点、起始点和无向图确定绘制图形中的闭合区域,且不用确定绘制图形中所有的闭合区域,根据触发点有目的地获取闭合区域,不仅解决了绘图工具无法准确填充闭合区域并得到矢量填充块的问题,而且能够高效、精准确定绘制图形的闭合区域,以实现对填充块的精准矢量填充。
在上述技术方案的基础上,所述无向图构建模块用于:
根据绘制图形各对象的数学方程计算并记录各对象之间的交点信息;所述交点信息包括交点坐标和交点之间的路径信息;
基于所述交点信息构建无向图。
在上述各技术方案的基础上,所述起始点确定模块用于:
获取触发点的坐标,以触发点为坐标原点,建立新的坐标系,并在默认坐标系中计算所述新的坐标系的坐标轴与所述绘制图形的交点;
分别计算出各个交点与触发点所形成的向量的长度,将所述长度最小的点添加到所述无向图中,作为所述无向图中的起始点。
在上述各技术方案的基础上,所述闭合区域确定模块用于:
将所述起始点在无向图中的任一能够直接到达的相邻点确认为关键点,确定所述起始点到所述关键点的向量绕所述触发点的旋转方向;
获取新确认的所述关键点沿所述旋转方向能够直接到达的相邻点构成的备用关键点集合,判断所述备用关键点集合是否为空,所述备用关键点集合不包括前一个确认的关键点;
若所述备用关键点集合不为空,则计算出所述备用关键点集合中与触发点距离最近的相邻点确认为关键点;
若所述备用关键点集合为空,则获取新确认的所述关键点沿所述旋转方向的反方向能够直接到达的相邻点构成的备用关键点集合;判断所述备用关键点集合是否为空;
若根据所述旋转方向的反方向确认的备用关键点集合不为空,则计算出所述备用关键点集合中以当前关键点为起点绕触发点旋转角度值最小的相邻点确认为关键点;
判断新确认的关键点是否与第一个关键点重合,若是,则根据所述关键点确认闭合区域,否则继续获取新确认的所述关键点的备用关键点集合。
在上述各技术方案的基础上,所述的闭合区域的识别装置还包括:
填充模块,在所述确定所述绘制图形中的闭合区域之后,判断所述触发点是否处于所述闭合区域内,若是,则对所述闭合区域进行填充;否则输出提示信息。
上述实施例中提供的闭合区域的识别装置及移动终端可执行本发明任意实施例所提供的闭合区域的识别方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的闭合区域的识别方法。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA) 等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种闭合区域的识别方法,其特征在于,包括:
获取绘制图形的特征点集,基于所述特征点集构建无向图;
获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点;
根据所述触发点、所述起始点和所述无向图,确定所述绘制图形中的闭合区域。
2.根据权利要求1所述的方法,其特征在于,所述获取绘制图形的特征点集,基于所述特征点集构建无向图包括:
根据绘制图形各对象的数学方程计算并记录各对象之间的交点信息;所述交点信息包括交点坐标和交点之间的路径信息;
基于所述交点信息构建无向图。
3.根据权利要求2所述的方法,其特征在于,所述获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点包括:
获取触发点的坐标,以触发点为坐标原点,建立新的坐标系,并在默认坐标系中计算所述新的坐标系的坐标轴与所述绘制图形的交点;
分别计算出各个交点与触发点所形成的向量的长度,将所述长度最小的点添加到所述无向图中,作为所述无向图中的起始点。
4.根据权利要求3所述的方法,其特征在于,所述根据所述触发点、所述起始点和所述无向图,确定所述绘制图形中的闭合区域包括:
将所述起始点在无向图中的任一能够直接到达的相邻点确认为关键点,确定所述起始点到所述关键点的向量绕所述触发点的旋转方向;
获取新确认的所述关键点沿所述旋转方向能够直接到达的相邻点构成的备用关键点集合,判断所述备用关键点集合是否为空,所述备用关键点集合不包括前一个确认的关键点;
若所述备用关键点集合不为空,则计算出所述备用关键点集合中与触发点距离最近的相邻点确认为关键点;
若所述备用关键点集合为空,则获取新确认的所述关键点沿所述旋转方向的反方向能够直接到达的相邻点构成的备用关键点集合;判断所述备用关键点集合是否为空;
若根据所述旋转方向的反方向确认的备用关键点集合不为空,则计算出所述备用关键点集合中以当前关键点为起点绕触发点旋转角度值最小的相邻点确认为关键点;
判断新确认的关键点是否与第一个关键点重合,若是,则根据所述关键点确认闭合区域,否则继续获取新确认的所述关键点的备用关键点集合。
5.根据权利要求1-4任一所述的方法,其特征在于,在所述确定所述绘制图形中的闭合区域之后,还包括:
判断所述触发点是否处于所述闭合区域内,若是,则对所述闭合区域进行填充;否则输出提示信息。
6.一种闭合区域的识别装置,其特征在于,包括:
无向图构建模块,用于获取绘制图形的特征点集,基于所述特征点集构建无向图;
起始点确定模块,用于获取触发点的坐标,根据所述触发点的坐标确定无向图中的起始点;
闭合区域确定模块,用于根据所述触发点、所述起始点和所述无向图,确定所述绘制图形中的闭合区域。
7.根据权利要求6所述的装置,其特征在于,所述无向图构建模块用于:
根据绘制图形各对象的数学方程计算并记录各对象之间的交点信息;所述交点信息包括交点坐标和交点之间的路径信息;
基于所述交点信息构建无向图。
8.根据权利要求7所述的装置,其特征在于,所述起始点确定模块用于:
获取触发点的坐标,以触发点为坐标原点,建立新的坐标系,并在默认坐标系中计算所述新的坐标系的坐标轴与所述绘制图形的交点;
分别计算出各个交点与触发点所形成的向量的长度,将所述长度最小的点添加到所述无向图中,作为所述无向图中的起始点。
9.根据权利要求8所述的装置,其特征在于,所述闭合区域确定模块用于:
将所述起始点在无向图中的任一能够直接到达的相邻点确认为关键点,确定所述起始点到所述关键点的向量绕所述触发点的旋转方向;
获取新确认的所述关键点沿所述旋转方向能够直接到达的相邻点构成的备用关键点集合,判断所述备用关键点集合是否为空,所述备用关键点集合不包括前一个确认的关键点;
若所述备用关键点集合不为空,则计算出所述备用关键点集合中与触发点距离最近的相邻点确认为关键点;
若所述备用关键点集合为空,则获取新确认的所述关键点沿所述旋转方向的反方向能够直接到达的相邻点构成的备用关键点集合;判断所述备用关键点集合是否为空;
若根据所述旋转方向的反方向确认的备用关键点集合不为空,则计算出所述备用关键点集合中以当前关键点为起点绕触发点旋转角度值最小的相邻点确认为关键点;
判断新确认的关键点是否与第一个关键点重合,若是,则根据所述关键点确认闭合区域,否则继续获取新确认的所述关键点的备用关键点集合。
10.根据权利要求6-9任一所述的装置,其特征在于,还包括:
填充模块,在所述确定所述绘制图形中的闭合区域之后,判断所述触发点是否处于所述闭合区域内,若是,则对所述闭合区域进行填充;否则输出提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710144378.2A CN106934842B (zh) | 2017-03-10 | 2017-03-10 | 闭合区域的识别方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710144378.2A CN106934842B (zh) | 2017-03-10 | 2017-03-10 | 闭合区域的识别方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106934842A true CN106934842A (zh) | 2017-07-07 |
CN106934842B CN106934842B (zh) | 2020-10-02 |
Family
ID=59432273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710144378.2A Active CN106934842B (zh) | 2017-03-10 | 2017-03-10 | 闭合区域的识别方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106934842B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111145293A (zh) * | 2019-12-18 | 2020-05-12 | 北京城市网邻信息技术有限公司 | 用于重建户型图轮廓的方法、装置及电子设备 |
CN111402368A (zh) * | 2019-01-03 | 2020-07-10 | 福建天泉教育科技有限公司 | 一种绘制图形的矫正方法及终端 |
CN112214811A (zh) * | 2020-10-09 | 2021-01-12 | 中建八局第三建设有限公司 | 基于bfs算法的地质剖面图封闭区域查找填充方法 |
CN113760414A (zh) * | 2020-06-02 | 2021-12-07 | 北京字节跳动网络技术有限公司 | 绘制图形的方法和装置 |
CN117253052A (zh) * | 2023-11-20 | 2023-12-19 | 广州中望龙腾软件股份有限公司 | 最大闭合区域识别方法、装置、存储介质及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1629849A (zh) * | 2003-12-19 | 2005-06-22 | 大日本网目版制造株式会社 | 图形处理装置、图形处理方法和计算机可读程序 |
CN101968888A (zh) * | 2010-09-08 | 2011-02-09 | 东莞电子科技大学电子信息工程研究院 | 一种适用于移动终端的矢量图形填充方法 |
US20110219038A1 (en) * | 2010-03-02 | 2011-09-08 | International Business Machines Corporation | Simplified entity relationship model to access structure data |
CN106384385A (zh) * | 2016-09-17 | 2017-02-08 | 北京航空航天大学 | 一种基于图论的人体形态建模方法 |
-
2017
- 2017-03-10 CN CN201710144378.2A patent/CN106934842B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1629849A (zh) * | 2003-12-19 | 2005-06-22 | 大日本网目版制造株式会社 | 图形处理装置、图形处理方法和计算机可读程序 |
US20110219038A1 (en) * | 2010-03-02 | 2011-09-08 | International Business Machines Corporation | Simplified entity relationship model to access structure data |
CN101968888A (zh) * | 2010-09-08 | 2011-02-09 | 东莞电子科技大学电子信息工程研究院 | 一种适用于移动终端的矢量图形填充方法 |
CN106384385A (zh) * | 2016-09-17 | 2017-02-08 | 北京航空航天大学 | 一种基于图论的人体形态建模方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111402368A (zh) * | 2019-01-03 | 2020-07-10 | 福建天泉教育科技有限公司 | 一种绘制图形的矫正方法及终端 |
CN111402368B (zh) * | 2019-01-03 | 2023-04-11 | 福建天泉教育科技有限公司 | 一种绘制图形的矫正方法及终端 |
CN111145293A (zh) * | 2019-12-18 | 2020-05-12 | 北京城市网邻信息技术有限公司 | 用于重建户型图轮廓的方法、装置及电子设备 |
CN111145293B (zh) * | 2019-12-18 | 2020-12-29 | 北京城市网邻信息技术有限公司 | 用于重建户型图轮廓的方法、装置及电子设备 |
CN113760414A (zh) * | 2020-06-02 | 2021-12-07 | 北京字节跳动网络技术有限公司 | 绘制图形的方法和装置 |
CN113760414B (zh) * | 2020-06-02 | 2023-11-28 | 北京字节跳动网络技术有限公司 | 绘制图形的方法和装置 |
CN112214811A (zh) * | 2020-10-09 | 2021-01-12 | 中建八局第三建设有限公司 | 基于bfs算法的地质剖面图封闭区域查找填充方法 |
CN117253052A (zh) * | 2023-11-20 | 2023-12-19 | 广州中望龙腾软件股份有限公司 | 最大闭合区域识别方法、装置、存储介质及计算机设备 |
CN117253052B (zh) * | 2023-11-20 | 2024-01-23 | 广州中望龙腾软件股份有限公司 | 最大闭合区域识别方法、装置、存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106934842B (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106934842A (zh) | 闭合区域的识别方法和装置 | |
Holten et al. | Force‐directed edge bundling for graph visualization | |
CN107564077B (zh) | 一种绘制道路网的方法及装置 | |
WO2002091220A2 (en) | Dynamical method for obtaining global optimal solution of general nonlinear programming problems | |
CN112632844A (zh) | 从工程制图中提取和分析信息 | |
Sohn et al. | An implicit regularization for 3D building rooftop modeling using airborne lidar data | |
CN114863385B (zh) | 道路曲面信息生成方法、装置、设备和计算机可读介质 | |
Hmida et al. | Knowledge base approach for 3d objects detection in point clouds using 3d processing and specialists knowledge | |
Huhnt | Reconstruction of edges in digital building models | |
KR102209076B1 (ko) | 가상 키보드 오타 보정을 위한 방법과 시스템 및 비-일시적인 컴퓨터 판독가능한 기록 매체 | |
Tong et al. | Area‐preservation simplification of polygonal boundaries by the use of the structured total least squares method with constraints | |
Maier | Optimal arc spline approximation | |
Blaise et al. | Efficient curvature-constrained least cost route optimization on parallel architectures | |
CN108520532B (zh) | 识别视频中物体运动方向的方法及装置 | |
Nguyen et al. | Realistic road path reconstruction from GIS data | |
CN106920269A (zh) | 图形处理方法和装置 | |
CN109801428A (zh) | 纸币边缘直线的检测方法、检测装置及终端 | |
JPWO2009104218A1 (ja) | 地図表示装置 | |
CN111125564B (zh) | 热力图生成方法、装置、计算机设备及存储介质 | |
Qin et al. | Dynamic Detection of Topological Information from Grid‐Based Generalized Voronoi Diagrams | |
CN114004552A (zh) | 一种地下水质风险评估方法和系统 | |
Mikhailov et al. | Control flow graph visualization in compiled software engineering | |
CN114693717B (zh) | 图像处理方法、装置、设备及计算机可读存储介质 | |
CN117708261B (zh) | 地图数据处理方法、装置、设备、存储介质及程序产品 | |
Zhang | A congruent hybrid model for conflation of satellite image and road database |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |