一种几何图形绘制的方法、装置、设备及存储介质
技术领域
本申请涉及电子白板领域,尤其涉及一种几何图形绘制的方法、装置、设备及存储介质。
背景技术
交互式系统通常会提供电子白板功能,用户可以在电子白板上绘制一些简单的几何图形。
目前,用户在电子白板上绘制几何图形需要预先设置图形列表,图形列表包含了用户可能会绘制的几何图形。当用户需要绘制某种几何图形时,需要先在图形列表中选择该几何图形,然后再进行绘制。这种方法使得用户在每次绘制图形时都需要先进行选择操作,过程复杂,且用户只能选择图形列表中的已有图形,使得几何图形绘制过程不够灵活,用户体验性差。
发明内容
为了解决上述技术问题,本申请提供了一种几何图形绘制的方法、装置、设备及存储介质,通过识别用户的手绘几何图形,将手绘几何图形转化为规整几何图形,简单方便地实现了几何图形的绘制,增强了几何图形绘制过程的灵活性,提高了用户体验感。
为了实现上述目的,本申请实施例提供的技术方案如下:
本申请实施例提供一种几何图形绘制的方法,所述方法包括:
获取从书写开始到书写结束期间的采样点坐标序列和所述采样点坐标序列构成的手绘几何图形;所述采样点坐标序列中的采样点按顺序形成采样点坐标列表;
根据所述手绘几何图形获取包含所述手绘几何图形的最小外接矩形;
根据所述最小外接矩形和所述采样点坐标列表获得第一顶点、第二顶点和第三顶点;所述第一顶点、所述第二顶点和所述第三顶点为所述手绘几何图形上的采样点;
根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点确定所述手绘几何图形对应的目标几何图形;
绘制所述手绘几何图形对应的目标几何图形。
可选的,所述根据所述最小外接矩形和所述采样点坐标列表获得第一顶点、第二顶点和第三顶点,包括:
确定所述最小外接矩形的中心点;
计算所述采样点坐标列表中的每个采样点和所述中心点的第一距离,取所述第一距离最远的采样点作为第一顶点;
计算所述采样点坐标列表中的每个采样点和所述第一顶点的第二距离,取所述第二距离最远的采样点作为第二顶点;
计算所述采样点坐标列表中的每个采样点到第一线段的第一垂线距离,取所述第一垂线距离最远的采样点作为第三顶点;所述第一线段为连接所述第一顶点和所述第二顶点所形成的线段。
可选的,所述目标几何图形包括:目标线段、目标三角形、目标角、目标四边形、目标曲线;所述目标四边形包括目标矩形、目标平行四边形和目标普通四边形;所述目标曲线包括目标圆形和目标椭圆形;
所述根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点确定所述手绘几何图形对应的目标几何图形,包括:
根据所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标线段,如果是,确定所述手绘几何图形对应的目标几何图形为所述目标线段;
根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标三角形或所述目标角,如果是,确定所述手绘几何图形对应的所述目标几何图形为所述目标三角形或所述目标角;
根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标四边形,如果是,确定所述手绘几何图形对应的所述目标几何图形为所述目标四边形;
根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标曲线,如果是,确定所述手绘几何图形对应的所述目标几何图形为所述目标曲线。
可选的,所述根据所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标线段,如果是,确定所述手绘几何图形对应的目标几何图形为所述目标线段,包括:
计算所述第三顶点到过所述第一线段的直线的第二垂线距离;
判断所述第二垂线距离是否小于第一阈值,如果小于第一阈值,则所述手绘几何图形对应的目标几何图形为所述目标线段。
可选的,所述绘制所述手绘几何图形对应的目标几何图形,包括:
当所述手绘几何图形对应的目标几何图形为所述目标线段时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
擦除所述手绘几何图形,绘制所述第一线段;所述第一线段为所述目标线段。
可选的,所述根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标三角形或所述目标角,如果是,确定所述手绘几何图形对应的目标几何图形为所述目标三角形或所述目标角,包括:
根据所述第一顶点、所述第二顶点和所述第三顶点在所述采样点坐标列表中的序号位置,将所述采样点坐标列表分为第一列表、第二列表和第三列表;所述第一列表包含所述第一顶点,所述第二列表包含所述第二顶点,所述第三列表包含所述第三顶点;
当所述第一列表、所述第二列表和所述第三列表中的采样点形成的图形均为线段时,所述手绘几何图形对应的目标几何图形为所述目标三角形;
当第四列表和第五列表中的采样点形成的图形为线段,第六列表中的采样点形成的图形不为线段且采样点数量小于第二阈值时,所述手绘几何图形对应的目标几何图形为所述目标角;所述第四列表和所述第五列表为所述第一列表、所述第二列表和所述第三列表中的两个列表,所述第六列表为所述第一列表、所述第二列表和所述第三列表中的另一个列表。
可选的,所述绘制所述手绘几何图形对应的目标几何图形,包括:
当所述手绘几何图形对应的目标几何图形为所述目标三角形时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
擦除所述手绘几何图形,连接所述第一顶点、所述第二顶点和所述第三顶点,绘制所述目标三角形;
当所述手绘几何图形对应的目标几何图形为所述目标角时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
擦除所述手绘几何图形,连接所述第四列表中包含的顶点和所述第五列表中包含的顶点形成第二线段,连接所述第五列表中包含的顶点和所述第六列表中包含的顶点形成第三线段,连接所述第二线段和所述第三线段形成所述目标角。
可选的,所述根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标四边形,如果是,确定所述手绘几何图形对应的目标几何图形为所述目标四边形,包括:
根据所述第一顶点、所述第二顶点和所述第三顶点在所述采样点坐标列表中的序号位置,将所述采样点坐标列表分为第一列表、第二列表和第三列表;
当所述第一列表、所述第二列表和所述第三列表中有两个列表中的采样点形成的图形为线段,另一个列表中的采样点形成的图形不为线段且采样点数量大于第二阈值时,所述手绘几何图形对应的目标几何图形为所述目标四边形;
计算第七列表中每一个采样点到所述第一线段的第三垂线距离,取第三垂线距离最远的采样点作为所述第四顶点;列表中的采样点形成的图形不为线段且采样点数量大于所述第二阈值的列表称之为所述第七列表;
计算所述第一顶点、所述第二顶点、所述第三顶点和所述第四顶点形成的四个内角的角度;
判断四个内角是否均满足第一范围;
如果均满足所述第一范围,则所述手绘几何图形对应的目标几何图形为所述目标矩形;
如果不是均满足所述第一范围,判断所述四个内角中的对角的角度差是否均小于第三阈值;
如果均小于第三阈值,则所述手绘几何图形对应的目标几何图形为所述目标平行四边形;
如果不是均小于第三阈值,则所述手绘几何图形对应的目标几何图形为所述目标普通四边形。
可选的,所述绘制所述手绘几何图形对应的目标几何图形,包括:
当所述手绘几何图形对应的目标几何图形为所述目标矩形时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
计算所述第一顶点、第二顶点、第三顶点和第四顶点形成的四条线段的长度并排序;所述第一顶点、第二顶点、第三顶点和第四顶点形成的四条线段为相邻的顶点相连所形成的四条线段;
取第一长度值作为长,取第三长度值作为宽,以所述第一顶点作为基点,根据所述长和所述宽,计算第五顶点、第六顶点和第七顶点;
根据所述第一顶点、所述第五顶点、所述第六顶点和所述第七顶点绘制所述目标矩形;
当所述手绘几何图形对应的目标几何图形为所述目标平行四边形时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
以所述第一顶点、所述第二顶点和所述第三顶点为基点,计算第八顶点的坐标,连接所述第一顶点、所述第二顶点、所述第三顶点和所述第八顶点绘制所述目标平行四边形;
当所述手绘几何图形对应的目标几何图形为所述目标普通四边形时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
顺序连接所述第一顶点、所述第二顶点、所述第三顶点和所述第四顶点中的相邻两点,绘制所述目标普通四边形。
可选的,所述根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标曲线,如果是,确定所述手绘几何图形对应的目标几何图形为所述目标曲线,包括:
根据所述第一顶点、所述第二顶点和所述第三顶点在所述采样点坐标列表中的序号位置,将所述采样点坐标列表分为第一列表、第二列表和第三列表;
连接所述第一顶点和所述第三顶点形成第四线段,连接所述第二顶点和所述第四顶点形成第五线段;
判断所述第四线段和所述第六线段的长度差的绝对值是否小于等于第四阈值,判断所述第七线段和所述第五线段的长度差的绝对值是否小于等于第四阈值,所述第四阈值为所述第一线段长度的六分之一;所述第六线段为连接所述第四顶点和所述第一顶点形成的线段;所述第七线段为连接所述第二顶点和所述第三顶点形成的线段;
如果均小于等于所述第四阈值,则所述手绘几何图形对应的目标几何图形为所述目标曲线;
判断所述第一角、所述第二角、所述第三角和所述第四角是否均满足所述第一范围,所述第一角为所述第三顶点、所述第一顶点和所述第四顶点形成的角,所述第二角为所述第一顶点、所述第四顶点和所述第二顶点形成的角,所述第三角为所述第四顶点、所述第二顶点和所述第三顶点形成的角,所述第四角为所述第二顶点、所述第三顶点和所述第一顶点形成的角;
如果均满足所述第一范围,所述手绘几何图形对应的目标几何图形为所述目标圆形;
如果不是均满足所述第一范围,所述手绘几何图形对应的目标几何图形为所述目标椭圆形。
可选的,所述绘制所述手绘几何图形对应的目标几何图形,包括:
当所述手绘几何图形对应的所述目标几何图形为所述目标圆形时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
根据所述最小外接矩形计算第一圆心坐标,取第一线段和第八线段的和的四分之一作为半径,根据所述第一圆心坐标和所述半径,绘制所述目标圆形;所述第八线段为连接所述第三顶点和所述第四顶点形成的线段;
当所述手绘几何图形对应的目标几何图形为所述目标椭圆形时,所述绘制所述手绘几何图形对应的目标几何图形,包括:
取所述第一线段的二分之一作为第一半径,取所述第八线段的二分之一作为第二半径,计算所述第一线段和水平轴的夹角,根据所述最小外接矩形计算第二圆心坐标,根据所述第二圆心坐标、所述第一半径、所述第二半径和所述夹角绘制所述目标椭圆形。
可选的,所述方法还包括:
当无法确定所述手绘几何图形为所述目标几何图形时,输出所述手绘几何图形。
本申请实施例还提供了一种几何图形绘制的装置,所述装置包括:
第一获取单元,用于获取从书写开始到书写结束期间的采样点坐标序列和所述采样点坐标序列构成的手绘几何图形;所述采样点坐标序列中的采样点按顺序形成采样点坐标列表;
第二获取单元,用于根据所述手绘几何图形获取包含所述手绘几何图形的最小外接矩形;
第三获取单元,用于根据所述最小外接矩形和所述采样点坐标列表获得第一顶点、第二顶点和第三顶点;所述第一顶点、所述第二顶点和所述第三顶点为所述手绘几何图形上的采样点;
确定单元,用于根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点确定所述手绘几何图形对应的目标几何图形;
绘制单元,用于绘制所述手绘几何图形对应的目标几何图形。
本申请实施例还提供了一种几何图形绘制的设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现所述的几何图形绘制的方法。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储计算机程序,所述计算机程序用于执行所述的几何图形绘制的方法。
通过上述技术方案可知,本申请具有以下有益效果:
本申请实施例提供了一种几何图形绘制的方法,包括:获取从书写开始到书写结束期间的采样点坐标序列和采样点坐标序列构成的手绘几何图形,并使采样点坐标序列中的采样点按顺序形成采样点坐标列表。根据手绘几何图形获取包含手绘几何图形的最小外接矩形,再根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点。其中,第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点。根据采样点坐标列表、第一顶点、第二顶点和第三顶点确定手绘几何图形对应的目标几何图形,最后,绘制手绘几何图形对应的目标几何图形。通过本申请实施例提供的几何图形绘制的方法,可以基于用户在电子白板中的手绘几何图形,利用几何原理将用户的手绘几何图形自动识别并转换为规整的几何图形。本申请实现几何图形绘制的过程简单、灵活,且提升了用户的体验感。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种几何图形绘制的方法的流程图;
图2为本申请实施例提供的确定目标几何图形的流程图;
图3为本申请实施例提供的手绘线段;
图4为本申请实施例提供的手绘三角形;
图5为本申请实施例提供的手绘角;
图6为本申请实施例提供的手绘矩形;
图7为本申请实施例提供的手绘平行四边形;
图8为本申请实施例提供的手绘普通四边形;
图9为本申请实施例提供的手绘圆形;
图10为本申请实施例提供的手绘椭圆形;
图11为本申请实施例提供的识别后的目标线段;
图12为本申请实施例提供的识别后的目标三角形;
图13为本申请实施例提供的识别后的目标角;
图14为本申请实施例提供的识别后的目标矩形;
图15为本申请实施例提供的识别后的目标平行四边形;
图16为本申请实施例提供的识别后的目标普通四边形;
图17为本申请实施例提供的识别后的目标圆形;
图18为本申请实施例提供的识别后的目标椭圆形;
图19为本申请实施例提供的一种几何图形绘制的装置的示意图。
图20为本申请实施例提供的一种几何图形绘制的设备结构图;
图21为本申请实施例提供的一种计算机可读存储介质示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。
为了便于理解和解释本申请实施例提供的技术方案,下面先对本申请实施例的背景技术进行说明。
交互式系统通常会提供电子白板功能,用户可以在电子白板上绘制一些简单的几何图形。目前,用户在电子白板上绘制几何图形需要预先设置图形列表,图形列表包含了用户可能会绘制的几何图形。当用户需要绘制某种几何图形时,需要先在图形列表中选择该几何图形,然后再进行绘制。这种方法使得用户在每次绘制图形时都需要先进行选择操作,过程复杂,且用户只能选择图形列表中的已有图形,使得几何图形绘制过程不够灵活,用户体验性差。
基于此,本申请实施例提供了一种几何图形绘制的方法,包括:获取从书写开始到书写结束期间的采样点坐标序列和采样点坐标序列构成的手绘几何图形,并使采样点坐标序列中的采样点按顺序形成采样点坐标列表。根据手绘几何图形获取包含手绘几何图形的最小外接矩形,再根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点。其中,第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点。根据采样点坐标列表、第一顶点、第二顶点和第三顶点确定手绘几何图形对应的目标几何图形,最后,绘制手绘几何图形对应的目标几何图形。
方法实施例
为了便于理解本申请实施例提供的技术方案,下面结合附图对本申请实施例提供的几何图形绘制的方法进行说明。
参见图1,图1为本申请实施例提供的一种几何图形绘制的方法的流程图,如图1所示,该方法可以包括S101~S105:
S101:获取从书写开始到书写结束期间的采样点坐标序列和采样点坐标序列构成的手绘几何图形;采样点坐标序列中的采样点按顺序形成采样点坐标列表。
当用户在电子白板上进行几何图形的手绘时,用户会操作鼠标进行绘制。在鼠标按下,鼠标拖动,鼠标抬起的过程中,电子白板连接的操作系统会持续进行点的采样,并保存所有采样点的点坐标。所有采样点的点坐标会构成采样点坐标序列,通过电子白板可以向用户显示出采样点坐标系列构成的手绘几何图形。
另外,操作系统进行采样点的点坐标采样时,会按顺序将这些点坐标放到一个列表里面,即采样点坐标序列中的采样点按顺序可以形成采样点坐标列表。采样点在采样点坐标列表中都有一个序号,利用序号可以表征采样点在采样点坐标列表中的位置。
S102:根据手绘几何图形获取包含手绘几何图形的最小外接矩形。
获得用户的手绘几何图形之后,获取手绘几何图形的最小外接矩形。其中,最小外接矩形是指以二维坐标表示的若干二维形状(例如点、线段、多边形)的最大范围,即以给定的二维形状各顶点中的最大横坐标、最小横坐标、最大纵坐标、最小纵坐标定下边界的矩形。最小外接矩形包含给定的二维形状,且最小外接矩形的边与坐标轴平行。
S103:根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点;第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点。
根据获取的手绘几何图形的最小外接矩形,获取的采样点坐标列表,可以获得手绘几何图形的第一顶点、第二顶点和第三顶点。其中,第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点,也是采样点坐标列表中的采样点。
根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点,具体包括如下步骤:
确定最小外接矩形的中心点;
计算采样点坐标列表中的每个采样点和中心点的第一距离,取第一距离最远的采样点作为第一顶点;
计算采样点坐标列表中的每个采样点和第一顶点的第二距离,取第二距离最远的采样点作为第二顶点;
计算采样点坐标列表中的每个采样点到第一线段的第一垂线距离,取第一垂线距离最远的采样点作为第三顶点;第一线段为连接第一顶点和第二顶点所形成的线段。
需要注意的是,在通过手绘几何图形确定目标几何图形的过程中,都需要确定第一顶点、第二顶点和第三顶点。第一顶点、第二顶点和第三顶点是手绘几何图形上的采样点,通过第一顶点、第二顶点和第三顶点的坐标信息和其在采样点坐标列表中的序号位置,可以得到表征目标几何图形的特征信息,根据特征信息,可以得到手绘几何图形对应的目标几何图形。因此确定第一顶点、第二顶点和第三顶是确定手绘几何图形对应的目标几何图形的必要过程。
S104:根据采样点坐标列表、第一顶点、第二顶点和第三顶点确定手绘几何图形对应的目标几何图形。
根据采样点坐标列表中的采样点及其采样点在列表中的序号,第一顶点、第二顶点和第三顶点,可以确定手绘几何图形对应的目标几何图形。
其中,目标几何图形包括:目标线段、目标三角形、目标角、目标四边形、目标曲线;目标四边形包括目标矩形、目标平行四边形和目标普通四边形;目标曲线包括目标圆形和目标椭圆形。
需要注意的是,在判断用户的手绘几何图形对应的目标几何图形时,都首先需要确定手绘几何图形的第一顶点、第二顶点和第三顶点。再根据采样点坐标列表和获得的第一顶点、第二顶点和第三顶点依次确定用户的手绘图形是否为目标线段、目标三角形、目标角、目标四边形和目标曲线,即先判断用户的手绘几何图形是否为目标线段,不是目标线段,再判断是否为目标三角形或目标角,如果不是目标三角形或目标角,再判断是否为目标矩形、目标平行四边形、目标普通四边形,如果均不是,最后再判断是否为目标圆或目标椭圆。详细的确定目标几何图形的过程可参见后续的实施例,在此不再赘述。
S105:绘制手绘几何图形对应的目标几何图形。
当确定了手绘几何图形对应的目标几何图形之后,需要将原有的用户的手绘几何图形进行擦除,再对目标几何图形进行绘制,即确定了手绘几何图形对应的目标几何图形之后,进行相应的目标几何图形的绘制。目标几何图形的绘制包含目标线段、目标三角形、目标角、目标矩形、目标平行四边形、目标普通四边形、目标圆形和目标椭圆形的绘制,具体的目标几何图形绘制的过程可见后续实施例,此处不再赘述。
需要注意的是,绘制目标几何图形之后,目标几何图形显示在电子白板上。在电子白板上,擦除用户的手绘几何图形,绘制并显示相应的目标几何图形的过程,可以由和电子白板相连接的操作系统来完成。
通过本申请实施例提供的一种几何图形绘制的方法,该方法包括:获取从书写开始到书写结束期间的采样点坐标序列和采样点坐标序列构成的手绘几何图形,并使采样点坐标序列中的采样点按顺序形成采样点坐标列表。根据手绘几何图形获取包含手绘几何图形的最小外接矩形,再根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点。其中,第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点。根据采样点坐标列表、第一顶点、第二顶点和第三顶点确定手绘几何图形对应的目标几何图形,最后,绘制手绘几何图形对应的目标几何图形。通过本申请实施例提供的几何图形绘制的方法,可以基于用户在电子白板中的手绘几何图形,利用几何原理将用户的手绘几何图形自动识别并转换为规整的几何图形。本申请实现几何图形绘制的过程简单、灵活,且提升了用户的体验感。
为了更好的理解本申请实施例的技术方案,结合图2对S104中确定目标几何图形的具体过程进行了说明。图2为本申请实施例提供的确定目标几何图形的流程图,包括如下步骤S201-S204:
S201:根据第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标线段,如果是,确定手绘几何图形对应的目标几何图形为目标线段。
根据第一顶点、第二顶点和第三顶点的坐标可以判断用户的手绘几何图形是否为目标线段,如果是,则可以确定用户所绘制的几何图形为线段。
上述判断用户的手绘几何图形是否为线段的步骤为:
计算第三顶点到过第一线段的直线的第二垂线距离;
判断第二垂线距离是否小于第一阈值,如果小于第一阈值,则手绘几何图形对应的目标几何图形为目标线段。
其中,第一阈值可以选择接近0的值,例如,0到0.1之间的值。但这里不限制第一阈值的大小,第一阈值可以根据实际情况进行选取。
为了更清楚地说明S201,参见图3,图3为本申请实施例提供的手绘线段。
图3中手绘线段的最小外接矩形如虚线所示,图3中手绘线段上的第一顶点、第二顶点和第三顶点分别为顶点A、顶点B和顶点C。计算顶点C到线段AB所在直线的垂线距离,判断得知垂线距离小于第一阈值,则图3中的手绘几何图形对应的目标几何图形为目标线段。
S202:根据采样点坐标列表、第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标三角形或目标角,如果是,确定手绘几何图形对应的目标几何图形为目标三角形或目标角。
在判断手绘几何图形不是目标线段之后,根据采样点坐标列表、第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标三角形或目标角,具体步骤包括:
根据第一顶点、第二顶点和第三顶点在采样点坐标列表中的序号位置,将采样点坐标列表分为第一列表、第二列表和第三列表;第一列表包含第一顶点,第二列表包含第二顶点,第三列表包含第三顶点。例如,采样点坐标列表中采集了300个采样点,则有300个采样点的坐标,此300个采样点在列表中依次排序,即从0开始,300个采样点的序号为0-299。假设第一顶点的序号为30,第二顶点的序号为80,第三顶点的序号为200。那么可以将序号为30-79的采样点放到第一列表中,将序号为80-199的采样点放到第二列表中,将序号为200-299,序号0-29的点放到第三列表中,从而得到第一列表、第二列表和第三列表。可以理解的是,第一列表中包含序号为30的第一顶点,第二列表中包含序号为80的第二顶点,第三列表中包含序号为200的第三顶点。
当第一列表、第二列表和第三列表中的采样点形成的图形均为线段时,手绘几何图形对应的目标几何图形为目标三角形。需要注意的是,可以按照判断手绘几何图形是否目标线段的方式,判断第一列表、第二列表和第三列表中的采样点构成的图形是否均为线段。以第一列表为例,根据第一列表中的采样点形成的图形确定图形的最小外接矩形,根据该最小外接矩形和第一列表的采样点,获得第一列表中的三个顶点。其中,三个顶点为第一列表中的采样点,也是第一列表中的采样点构成的图形上的顶点。再根据第一列表中的三个顶点判断第一列表中的采样点构成的图形是否为线段。可以理解的是,当第一列表、第二列表和第三列表中的采样点形成的图形均为线段时,三个线段可以构成一个三角形,即手绘几何图形对应的目标几何图形为目标三角形。
当第四列表和第五列表中的采样点形成的图形为线段,第六列表中的采样点形成的图形不为线段且采样点数量小于第二阈值时,手绘几何图形对应的目标几何图形为目标角;第四列表和第五列表为第一列表、第二列表和第三列表中的两个列表,第六列表为第一列表、第二列表和第三列表中的另一个列表。例如,第二阈值取值为5,即第六列表中的采样点为5个,则当第六列表中的采样点数量小于5,且第六列表中的采样点形成的图形不为线段、第四列表和第五列表中的采样点形成的图形为线段时,手绘几何图形对应的目标几何图形为目标角。也就是说,第一列表、第二列表和第三列表中的两个列表中的采样点形成的图形为线段,另一个列表中的采样点形成的图形不为线段,且采样点数量小于第二阈值,则可以判定用户的手绘几何图形对应的目标几何图形为目标角。
为了更清楚地说明S202,参见图4和图5,图4为本申请实施例提供的手绘三角形,图5为本申请实施例提供的手绘角。
从图4和图5中可知,第一顶点、第二顶点、第三顶点分别为顶点A、顶点B和顶点C,最小外接矩形的中心点为O。根据顶点A、顶点B和顶点C在采样点坐标列表中的序号位置,将采样点坐标列表分为第一列表、第二列表和第三列表。第一列表中包含顶点A,第一列表中包含顶点B,第一列表中包含顶点C。
如图4所示,当第一列表、第二列表和第三列表中的采样点形成的图形均为线段时,即判断结果是AC、AB、BC均为线段时,手绘几何图形对应的目标几何图形为目标三角形。
如图5所示,当第一列表和第三列表中的采样点形成的图形为线段,第二列表中的采样点形成的图形不为线段且采样点数量小于第二阈值(如5个)时,手绘几何图形对应的目标几何体图形为目标角。即第一列表中的采样点构成了线段AB,第三列表中的采样点构成了线段AC,而第二列表中的采样点并没有构成图形,即没有构成线段,且第三列表中的采样点小于5个,则图5中的手绘几何图形对应的目标几何图形为目标角。
S203:根据采样点坐标列表、第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标四边形,如果是,确定手绘几何图形对应的目标几何图形为目标四边形。
在判断手绘几何图形不是目标线段,也不是目标三角形和目标角之后,根据采样点坐标列表、第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标四边形,其具体步骤如下:
根据第一顶点、第二顶点和第三顶点在采样点坐标列表中的序号位置,将采样点坐标列表分为第一列表、第二列表和第三列表。关于详细的获得第一列表、第二列表和第三列表的过程这里不再赘述。
当第一列表、第二列表和第三列表中有两个列表中的采样点形成的图形为线段,另一个列表中的采样点形成的图形不为线段且采样点数量大于第二阈值时,手绘几何图形对应的目标几何图形为目标四边形。可以理解的是,当第一列表、第二列表和第三列表中有两个列表的采样点形成的图形为线段,另一个列表中的采样点形成的图形不为线段且采样点数量大于第二阈值时,可以判定手绘几何图形对应的目标几何图形为目标四边形。其中,第二阈值可以根据实际情况进行取值,例如第二阈值可以取为第一列表的采样点个数或者第二列表的采样点个数。
进一步,在判断手绘几何图形为目标四边形的基础上,可以判断手绘几何图形是否为目标矩形、目标平行四边形或目标普通四边形,具体如下:
计算第七列表中每一个采样点到第一线段的第三垂线距离,取第三垂线距离最远的采样点作为第四顶点,其中,列表中的采样点形成的图形不为线段且采样点数量大于所述第二阈值的列表称之为所述第七列表。可以理解的是,第七列表为第一列表、第二列表和第三列表中的一个列表。
计算第一顶点、第二顶点、第三顶点和第四顶点形成的四个内角的角度,判断四个内角是否均满足第一范围,所述第一范围为接近直角的角度范围,例如,第一范围为80度到100度。
如果四个内角的角度均满足所述第一范围,则手绘几何图形对应的目标几何图形为目标矩形。
如果四个内角的角度不是均满足第一范围,则进一步判断四个内角中的对角的角度差是否均小于第三阈值,如果均小于第三阈值,则手绘几何图形对应的目标几何图形为目标平行四边形。其中,第三阈值可以为接近0度的角度,例如0度到0.1度之间的度数。但这里不限制第三阈值的大小,第三阈值可以根据实际情况进行选取。
如果四个内角的角度不是均满足第一范围,且四个内角中的对角的角度差也不满足均小于第三阈值,则手绘几何图形对应的目标几何图形为目标普通四边形。
为了更清楚地说明S203,参见图6、图7和图8,图6为本申请实施例提供的手绘矩形,图7为本申请实施例提供的手绘平行四边形,图8为本申请实施例提供的手绘普通四边形。
从图6、图7和图8中可知,第一顶点、第二顶点、第三顶点分别为顶点A、顶点B和顶点C,最小外接矩形的中心点为O。根据顶点A、顶点B和顶点C在采样点坐标列表中的序号位置,将采样点坐标列表分为第一列表、第二列表和第三列表。第一列表中包含顶点A,第一列表中包含顶点B,第一列表中包含顶点C。
通过判断可知第二列表、第三列表中的采样点形成的图形为线段,第一列表中的采样点形成的图形不为线段且采样点数量大于第二阈值,此时,手绘几何图形对应的目标几何图形为目标四边形。即第二列表中的采样点构成了线段BC,第三列表中的采样点构成了线段CA,而第一列表中的采样点形成的图形并非线段,而是一个由BD和DA组成的折线,并且第三列表中的采样点数量大于第二阈值,此时手绘几何图形对应的目标几何图形为目标四边形。
进一步,第七列表即为第一列表,计算第一列表中每一个采样点到线段AB的垂线距离,取垂线距离最远的采样点作为第四顶点,即顶点D。
计算顶点A、顶点B、顶点C和顶点D形成的四个内角的角度,即计算角ACB、角CBD、角BDA、角DAC的角度,判断四个内角是否均满足第一范围(如80度到100度),即判断四个内角是否近似为直角。
通过计算,图6中的四个内角的角度均在80度到100度内,可以确定图6中的手绘几何图形对应的目标几何图形为目标矩形。
通过计算,图7和图8中的四个内角的角度不是均在80度到100度内,进一步计算对角的角度差,即计算角ACB和角BDA的角度差、角CBD和角DAC的角度差。
通过计算,图7中的两组对角的角度差均小于第三阈值(如0.1度),可以确定图7中的手绘几何图形对应的目标几何图形为目标平行四边形。
通过计算,图8中的两组对角的角度差也不满足均小于第三阈值,可以确定图8中的手绘几何图形对应的目标几何图形为目标普通四边形。
S204:根据采样点坐标列表、第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标曲线,如果是,确定手绘几何图形对应的目标几何图形为目标曲线。
在判断手绘几何图形不是目标线段、目标三角形、目标角,也不是目标四边形之后,根据采样点坐标列表、第一顶点、第二顶点和第三顶点判断手绘几何图形是否为目标曲线,其具体步骤如下:
根据第一顶点、第二顶点和第三顶点在采样点坐标列表中的序号位置,将采样点坐标列表分为第一列表、第二列表和第三列表。关于详细的获得第一列表、第二列表和第三列表的过程这里不再赘述。
连接所述第一顶点和所述第三顶点形成第四线段,连接所述第二顶点和所述第四顶点形成第五线段。
若第一列表、第二列表和第三列表中的采样点形成的图形均不为线段,则手绘几何图形对应的目标几何图形可能为目标圆形或目标椭圆形。进一步,判断第四线段和第六线段的长度差的绝对值是否小于等于第四阈值,判断第七线段和第五线段的长度差的绝对值是否小于等于第四阈值,第四阈值为第一线段长度的六分之一。第六线段为连接第四顶点和第一顶点形成的线段,第七线段为连接第二顶点和第三顶点形成的线段。如果长度差的绝对值均小于等于第四阈值,则手绘几何图形对应的目标几何图形为目标曲线。
进一步,在判断手绘几何图形为目标曲线的基础上,可以判断手绘几何图形是否为目标圆形或目标椭圆形,具体如下:
判断第一角、第二角、第三角和第四角是否均满足第一范围,第一角为第三顶点、第一顶点和第四顶点形成的角,第二角为第一顶点、第四顶点和第二顶点形成的角,第三角为第四顶点、第二顶点和第三顶点形成的角,第四角为第二顶点、第三顶点和第一顶点形成的角;
如果均满足第一范围,手绘几何图形对应的目标几何图形为目标圆形;
如果不是均满足第一范围,手绘几何图形对应的目标几何图形为目标椭圆形。
为了更清楚地说明S204,参见图9和图10,图9为本申请实施例提供的手绘圆形,图10为本申请实施例提供的手绘椭圆形。
从图9和图10中可知,第一顶点、第二顶点、第三顶点分别为顶点A、顶点B和顶点C。最小外接矩形的中心点为O。根据顶点A、顶点B和顶点C在采样点坐标列表中的序号位置,将采样点坐标列表分为第一列表、第二列表和第三列表。第一列表中包含顶点A,第一列表中包含顶点B,第一列表中包含顶点C。
判断得知第一列表、第二列表和第三列表中的采样点形成的图形均不为线段,则手绘几何图形对应的目标几何图形可能为目标圆形或目标椭圆形。进一步,判断线段AC和线段AD的长度差的绝对值是否小于等于线段AB长度的六分之一,判断线段BC和线段BD的长度差的绝对值是否小于等于线段AB长度的六分之一,判断结果为均小于等于线段AB长度的六分之一,则手绘几何图形对应的目标几何图形为目标曲线。
进一步,在判断手绘几何图形为目标曲线的基础上,判断手绘几何图形是目标圆形还是目标椭圆形,具体如下:
判断角CAD、角ADB、角DBC和角BCA的角度值是否均满足80度到100度的范围,当均满足80度到100度的范围,则手绘几何图形对应的目标几何图形为目标圆形,如图9所示。如果不是均满足80度到100度的范围,则手绘几何图形对应的目标几何图形为目标椭圆形,如图10所示。
为了更好的理解本申请实施例的技术方案,对S105中的绘制手绘几何图形对应的目标几何图形的具体情况进行说明,可知目标几何图形包括目标线段、目标三角形、目标角、目标矩形、目标平行四边形、目标普通四边形,则具体情况如下:
当手绘几何图形对应的目标几何图形为目标线段时,绘制手绘几何图形对应的目标几何图形,包括:擦除手绘几何图形,绘制第一线段,第一线段为目标线段。以图3为例,操作系统会擦除原有的用户绘制的手绘线段,进而连接并显示线段AB,线段AB即为图11中的目标线段。
当手绘几何图形对应的目标几何图形为目标三角形时,绘制手绘几何图形对应的目标几何图形,包括:擦除手绘几何图形,连接第一顶点、第二顶点和第三顶点,绘制目标三角形。以图4为例,擦除原有的用户绘制的手绘三角形,进而连接线段AB、线段BC和线段CA,可以得到如图12所示的目标三角形。
当手绘几何图形对应的目标几何图形为目标角时,绘制手绘几何图形对应的目标几何图形,包括:擦除手绘几何图形,连接第四列表中包含的顶点和第五列表中包含的顶点形成第二线段,连接第五列表中包含的顶点和六列表中包含的顶点形成第三线段,连接第二线段和第三线段形成所述目标角。以图5为例,第四列表即为第一列表,第五列表即为第三列表,第六列表即为第二列表。首先擦除原有的用户绘制的手绘角,连接顶点A和顶点B,构成线段AB,连接顶点A和顶点C,构成线段AC,连接线段AB和线段AC,构成图13所示的目标角。
当手绘几何图形对应的目标几何图形为目标矩形时,绘制手绘几何图形对应的目标几何图形,包括:
计算第一顶点、第二顶点、第三顶点和第四顶点形成的四条线段的长度并排序;第一顶点、第二顶点、第三顶点和第四顶点形成的四条线段为相邻的顶点相连所形成的四条线段;
取第一长度值作为长,取第三长度值作为宽,以第一顶点作为基点,根据长和宽,计算第五顶点、第六顶点和第七顶点。其中,第五顶点、第六顶点和第七顶点为第二顶点、第三顶点和第四顶点的新坐标所在的点。
根据第一顶点、第五顶点、第六顶点和第七顶点绘制目标矩形。
以图6为例,计算线段AC、线段CB、线段BD和线段DA的长度值,并将四个线段按照线段的长度进行排序,可知第一长度值的线段为线段CB,则将线段BC的长度作为矩形长的长度。第三长度值为线段AC,则将线段AC的长度作为矩形宽的长度。以顶点A作为基点,根据获得的矩形长和矩形宽的长度,计算顶点B、C、D的新坐标。连接顶点A和顶点B、C、D的新坐标对应的点,即可得到图14中的目标矩形。
当手绘几何图形对应的目标几何图形为目标平行四边形时,绘制手绘几何图形对应的目标几何图形,包括:以第一顶点、第二顶点和第三顶点为基点,计算第八顶点的坐标,根据第一顶点、第二顶点、第三顶点和第八顶点绘制目标平行四边形。以图7为例,以顶点A、B和C为基点,计算顶点D的新坐标,连接顶点A、C和B和顶点D的新坐标对应的点,即可得到图15中所示的目标平行四边形。
当手绘几何图形对应的目标几何图形为目标普通四边形时,绘制手绘几何图形对应的目标几何图形,包括:顺序连接第一顶点、第二顶点、第三顶点和第四顶点中的相邻两点,绘制目标普通四边形。以图8为例,顺序连接顶点A、C、B和D,即可得到图16中所示的目标普通四边形。
当手绘几何图形对应的目标几何图形为目标圆形时,绘制手绘几何图形对应的目标几何图形,包括:根据最小外接矩形计算第一圆心坐标,取第一线段和第八线段的和的四分之一作为半径,根据第一圆心坐标和所述半径,绘制目标圆形,第八线段为连接第三顶点和第四顶点形成的线段。以图9中的手绘圆形为例,先擦除用户所绘制的手绘圆。再根据最小矩形计算第一圆心坐标,第一圆心即为O点,取线段AB和线段CD的和的四分之一作为半径。根据O点坐标和半径可以绘制目标圆形,即可得到图17中的目标圆形。
当手绘几何图形对应的目标几何图形为目标椭圆形时,绘制手绘几何图形对应的目标几何图形,包括:取第一线段的二分之一作为第一半径,取第八线段的二分之一作为第二半径,计算第一线段和水平轴的夹角,根据最小外接矩形计算第二圆心坐标,根据第二圆心坐标、第一半径、第二半径和夹角绘制目标椭圆形。以图10中的手绘椭圆形为例,先擦除用户所绘制的手绘椭圆。再取最小外接矩形的中心点O作为第二圆心,取线段AB的二分之一作为第一半径,即长半径,取线段CD的二分之一作为第二半径,即短半径,计算线段AB和水平轴的夹角。则可以根据中心点O坐标,长半径,短半径和夹角绘制目标椭圆形,即可得到如图18所示的目标椭圆形。
需要注意的是,存在无法确定手绘几何图形为目标几何图形的情况,在此情况下,输出手绘几何图形。也就是说,存在用户的手绘几何图形为五边形等其它手绘图形的情况,即当用户的手绘几何图形对应的目标几何图形不是目标线段、目标三角形、目标角、目标四边形或目标曲线时,直接输出用户的手绘几何图形,将用户的手绘几何图形显示在电子白板中。
通过本申请实施例提供的一种几何图形绘制的方法,该方法包括:获取从书写开始到书写结束期间的采样点坐标序列和采样点坐标序列构成的手绘几何图形,并使采样点坐标序列中的采样点按顺序形成采样点坐标列表。根据手绘几何图形获取包含手绘几何图形的最小外接矩形,再根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点。其中,第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点。根据采样点坐标列表、第一顶点、第二顶点和第三顶点确定手绘几何图形对应的目标几何图形,最后,绘制手绘几何图形对应的目标几何图形。通过本申请实施例提供的几何图形绘制的方法,可以基于用户在电子白板中的手绘几何图形,利用几何原理将用户的手绘几何图形自动识别并转换为规整的几何图形。本申请实现几何图形绘制的过程简单、灵活,且提升了用户的体验感。
装置实施例
参见图19,图19为本申请实施例提供的一种几何图形绘制的装置的示意图。在本申请实施例中,所述装置具体可以包括:
第一获取单元1901,用于获取从书写开始到书写结束期间的采样点坐标序列和所述采样点坐标序列构成的手绘几何图形;所述采样点坐标序列中的采样点按顺序形成采样点坐标列表。
第二获取单元1902,用于根据所述手绘几何图形获取包含所述手绘几何图形的最小外接矩形。
第三获取单元1903,用于根据所述最小外接矩形和所述采样点坐标列表获得第一顶点、第二顶点和第三顶点;所述第一顶点、所述第二顶点和所述第三顶点为所述手绘几何图形上的采样点。
确定单元1904,用于根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点确定所述手绘几何图形对应的目标几何图形。
绘制单元1905,用于绘制所述手绘几何图形对应的目标几何图形。
可选的,在本实施例的一些实施方式中,所述第三获取单元1903包括:
第一确定子单元,用于确定所述最小外接矩形的中心点;
第一计算子单元,用于计算所述采样点坐标列表中的每个采样点和所述中心点的第一距离,取所述第一距离最远的采样点作为第一顶点;
第二计算子单元,用于计算所述采样点坐标列表中的每个采样点和所述第一顶点的第二距离,取所述第二距离最远的采样点作为第二顶点;
第三计算子单元,用于计算所述采样点坐标列表中的每个采样点到第一线段的第一垂线距离,取所述第一垂线距离最远的采样点作为第三顶点;所述第一线段为连接所述第一顶点和所述第二顶点所形成的线段。
可选的,在本实施例的一些实施方式中,所述目标几何图形包括:目标线段、目标三角形、目标角、目标四边形、目标曲线,所述目标四边形包括目标矩形、目标平行四边形和目标普通四边形,所述目标曲线包括目标圆形和目标椭圆形;
所述确定单元1904包括:
第一判断子单元,用于根据所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标线段,如果是,确定所述手绘几何图形对应的目标几何图形为所述目标线段;
第二判断子单元,用于根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标三角形或所述目标角,如果是,确定所述手绘几何图形对应的所述目标几何图形为所述目标三角形或所述目标角;
第三判断子单元,用于根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标四边形,如果是,确定所述手绘几何图形对应的所述目标几何图形为所述目标四边形;
第四判断子单元,用于根据所述采样点坐标列表、所述第一顶点、所述第二顶点和所述第三顶点判断所述手绘几何图形是否为所述目标曲线,如果是,确定所述手绘几何图形对应的所述目标几何图形为所述目标曲线。
可选的,在本实施例的一些实施方式中,所述第一判断子单元包括:
第四计算子单元,用于计算所述第三顶点到过所述第一线段的直线的第二垂线距离;
第五判断子单元,用于判断所述第二垂线距离是否小于第一阈值,如果小于第一阈值,则所述手绘几何图形对应的目标几何图形为所述目标线段。
可选的,在本实施例的一些实施方式中,所述绘制单元1905包括:
目标线段绘制子单元,用于当所述手绘几何图形对应的目标几何图形为所述目标线段时,擦除所述手绘几何图形,绘制所述第一线段;所述第一线段为所述目标线段。
可选的,在本实施例的一些实施方式中,所述第二判断子单元包括:
第一划分子单元,用于根据所述第一顶点、所述第二顶点和所述第三顶点在所述采样点坐标列表中的序号位置,将所述采样点坐标列表分为第一列表、第二列表和第三列表;所述第一列表包含所述第一顶点,所述第二列表包含所述第二顶点,所述第三列表包含所述第三顶点;
第二确定子单元,用于当所述第一列表、所述第二列表和所述第三列表中的采样点形成的图形均为线段时,所述手绘几何图形对应的目标几何图形为所述目标三角形;
第三确定子单元,用于当第四列表和第五列表中的采样点形成的图形为线段,第六列表中的采样点形成的图形不为线段且采样点数量小于第二阈值时,所述手绘几何图形对应的目标几何图形为所述目标角;所述第四列表和所述第五列表为所述第一列表、所述第二列表和所述第三列表中的两个列表,所述第六列表为所述第一列表、所述第二列表和所述第三列表中的另一个列表。
可选的,在本实施例的一些实施方式中,所述绘制单元1905包括:
目标三角形绘制子单元,用于当所述手绘几何图形对应的目标几何图形为所述目标三角形时,擦除所述手绘几何图形,连接所述第一顶点、所述第二顶点和所述第三顶点,绘制所述目标三角形;
目标角绘制子单元,用于当所述手绘几何图形对应的目标几何图形为所述目标角时,擦除所述手绘几何图形,连接所述第四列表中包含的顶点和所述第五列表中包含的顶点形成第二线段,连接所述第五列表中包含的顶点和所述第六列表中包含的顶点形成第三线段,连接所述第二线段和所述第三线段形成所述目标角。
可选的,在本实施例的一些实施方式中,所述第三判断子单元包括:
第二划分子单元,用于根据所述第一顶点、所述第二顶点和所述第三顶点在所述采样点坐标列表中的序号位置,将所述采样点坐标列表分为第一列表、第二列表和第三列表;
第四确定子单元,用于当所述第一列表、所述第二列表和所述第三列表中有两个列表中的采样点形成的图形为线段,另一个列表中的采样点形成的图形不为线段且采样点数量大于第二阈值时,所述手绘几何图形对应的目标几何图形为所述目标四边形;
第五计算子单元,用于计算第七列表中每一个采样点到所述第一线段的第三垂线距离,取第三垂线距离最远的采样点作为所述第四顶点;列表中的采样点形成的图形不为线段且采样点数量大于所述第二阈值的列表称之为所述第七列表;
第六计算子单元,用于计算所述第一顶点、所述第二顶点、所述第三顶点和所述第四顶点形成的四个内角的角度;
第六判断子单元,用于判断四个内角是否均满足第一范围;
第五确定子单元,用于当所述第六判断子单元的判断结果为均满足所述第一范围,则所述手绘几何图形对应的目标几何图形为所述目标矩形;
第七判断子单元,用于当所述第七判断子单元的判断结果为不是均满足所述第一范围,判断所述四个内角中的对角的角度差是否均小于第三阈值;
第六确定子单元,用于当第七判断子单元中的判断结果为均小于第三阈值时,所述手绘几何图形对应的目标几何图形为所述目标平行四边形;
第六确定子单元,用于第七判断子单元中的判断结果为不是均小于第三阈值,则所述手绘几何图形对应的目标几何图形为所述目标普通四边形。
可选的,在本实施例的一些实施方式中,当所述手绘几何图形对应的目标几何图形为所述目标矩形时,所述绘制单元1905包括目标矩形绘制子单元;
所述目标矩形绘制子单元包括:
第七计算子单元,用于计算所述第一顶点、第二顶点、第三顶点和第四顶点形成的四条线段的长度并排序;所述第一顶点、第二顶点、第三顶点和第四顶点形成的四条线段为相邻的顶点相连所形成的四条线段;
第八计算子单元,用于取第一长度值作为长,取第三长度值作为宽,以所述第一顶点作为基点,根据所述长和所述宽,计算第五顶点、第六顶点和第七顶点;
第一连接子单元,用于根据所述第一顶点、所述第五顶点、所述第六顶点和所述第七顶点绘制所述目标矩形;
当所述手绘几何图形对应的目标几何图形为所述目标平行四边形时,所述绘制单元1905包括目标平行四边形绘制子单元;
所述目标平行四边形绘制子单元包括:
第九计算子单元,用于以所述第一顶点、所述第二顶点和所述第三顶点为基点,计算第八顶点的坐标,根据所述第一顶点、所述第二顶点、所述第三顶点和所述第八顶点绘制所述目标平行四边形;
当所述手绘几何图形对应的目标几何图形为所述目标普通四边形时,所述绘制单元1905包括目标普通四边形绘制子单元;
所述目标普通四边形绘制子单元包括:
第二连接子单元,用于顺序连接所述第一顶点、所述第二顶点、所述第三顶点和所述第四顶点中的相邻两点,绘制所述目标普通四边形。
可选的,在本实施例的一些实施方式中,所述第四判断子单元包括:
第三划分子单元,用于根据所述第一顶点、所述第二顶点和所述第三顶点在所述采样点坐标列表中的序号位置,将所述采样点坐标列表分为第一列表、第二列表和第三列表;
第三连接子单元,用于连接所述第一顶点和所述第三顶点形成第四线段,连接所述第二顶点和所述第四顶点形成第五线段;
第八判断子单元,用于判断所述第四线段和所述第六线段的长度差的绝对值是否小于等于第四阈值,判断所述第七线段和所述第五线段的长度差的绝对值是否小于等于第四阈值,所述第四阈值为所述第一线段长度的六分之一;所述第六线段为连接所述第四顶点和所述第一顶点形成的线段,所述第七线段为连接所述第二顶点和所述第三顶点形成的线段;
第七确定子单元,用于当第八判断子单元的判断结果为均小于所述第四阈值,所述手绘几何图形对应的目标几何图形为所述目标曲线;
第九判断子单元,用于判断所述第一角、所述第二角、所述第三角和所述第四角是否均满足所述第一范围,所述第一角为所述第三顶点、所述第一顶点和所述第四顶点形成的角,所述第二角为所述第一顶点、所述第四顶点和所述第二顶点形成的角,所述第三角为所述第四顶点、所述第二顶点和所述第三顶点形成的角,所述第四角为所述第二顶点、所述第三顶点和所述第一顶点形成的角;
第八确定子单元,用于当所述第九判断子单元的判断结果为均满足所述第一范围,所述手绘几何图形对应的目标几何图形为所述目标圆形;
第九确定子单元,用于当所述第九判断子单元的判断结果为不是均满足所述第一范围,所述手绘几何图形对应的目标几何图形为所述目标椭圆形。
可选的,在本实施例的一些实施方式中,所述绘制单元1905包括:
目标圆形绘制子单元,用于当所述手绘几何图形对应的所述目标几何图形为所述目标圆形时,根据所述最小外接矩形计算第一圆心坐标,取第一线段和第八线段的和的四分之一作为半径,根据所述第一圆心坐标和所述半径,绘制所述目标圆形;所述第八线段为连接所述第三顶点和所述第四顶点形成的线段;
目标椭圆形绘制子单元,用于当所述手绘几何图形对应的目标几何图形为所述目标椭圆形时,取所述第一线段的二分之一作为第一半径,取所述第八线段的二分之一作为第二半径,计算所述第一线段和水平轴的夹角,根据所述最小外接矩形计算第二圆心坐标,根据所述第二圆心坐标、所述第一半径、所述第二半径和所述夹角绘制所述目标椭圆形。
可选的,在本实施例的一些实施方式中,所述装置还包括:
输出单元,用于当无法确定所述手绘几何图形为所述目标几何图形时,输出所述手绘几何图形。
通过本申请实施例提供的一种几何图形绘制的装置,获取从书写开始到书写结束期间的采样点坐标序列和采样点坐标序列构成的手绘几何图形,并使采样点坐标序列中的采样点按顺序形成采样点坐标列表。根据手绘几何图形获取包含手绘几何图形的最小外接矩形,再根据最小外接矩形和采样点坐标列表获得第一顶点、第二顶点和第三顶点。其中,第一顶点、第二顶点和第三顶点为手绘几何图形上的采样点。根据采样点坐标列表、第一顶点、第二顶点和第三顶点确定手绘几何图形对应的目标几何图形,最后,绘制手绘几何图形对应的目标几何图形。通过本申请实施例提供的几何图形绘制的装置,可以基于用户在电子白板中的手绘几何图形,利用几何原理将用户的手绘几何图形自动识别并转换为规整的几何图形。本申请实现几何图形绘制的过程简单、灵活,且提升了用户的体验感。
另外,本申请实施例还提供了一种几何图形绘制的设备,如图20所示,该图示出了本申请实施例提供的一种几何图形绘制的设备结构图。所述设备包括:存储器2001,处理器2002,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述实施例所述的几何图形绘制的方法。
另外,本申请实施例还提供了一种计算机可读存储介质,如图21所示,该图示出了本申请实施例提供的一种计算机可读存储介质示意图。所述计算机可读存储介质中存储计算机程序2101,所述计算机程序2101用于执行如上述实施例所述的几何图形绘制的方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见系统部分说明即可。
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。