掌桥专利:专业的专利平台
掌桥专利
首页

笔画渲染方法、装置、存储介质以及终端

文献发布时间:2023-06-19 12:18:04


笔画渲染方法、装置、存储介质以及终端

技术领域

本申请涉及电子画板技术领域,尤其涉及一种笔画渲染方法、装置、存储介质以及终端。

背景技术

随着科学技术的发展,终端也越来越多地出现在人们生活中,人们可以运行终端中的各种应用程序去实现各种功能,例如用户可以通过电子画板或者绘图软件笔画书写,因此关于笔画渲染方法也成为本领域技术人员研究的重点之一。

发明内容

本申请提供一种笔画渲染方法、装置、存储介质以及终端,可以解决相关技术中在擦除场景和撤销场景中,对所有剩余部分进行重新绘制,存在耗时长、功耗高、刷新不流畅的技术问题。

第一方面,本申请实施例提供一种笔画渲染方法,该方法包括:

基于用户在电子画板中的擦除操作或者撤销操作,确定所述电子画板中的操作区域以及所述操作区域中的非操作笔画,所述操作区域的面积小于所述电子画板的面积;

将所述操作区域中所有原始笔画删除,以及在所述操作区域中重新渲染所述非操作笔画。

第二方面,本申请实施例提供一种笔画渲染装置,该装置包括:

渲染确定模块,用于基于用户在电子画板中的擦除操作或者撤销操作,确定所述电子画板中的操作区域以及所述操作区域中的非操作笔画,所述操作区域的面积小于所述电子画板的面积;

渲染实现模块,用于将所述操作区域中所有原始笔画删除,以及在所述操作区域中重新渲染所述非操作笔画。

第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法的步骤。

第四方面,本申请实施例提供一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序。

本申请一些实施例提供的技术方案带来的有益效果至少包括:

本申请提供一种笔画渲染方法,首先基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积;然后将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。由于可以先基于用户操作在电子画板中确定较小的操作区域以及非操作笔画,然后可以仅仅将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画,而不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,提升电子画板的刷新流畅性。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种笔画渲染方法的示例性系统架构图;

图2为本申请实施例提供的一种笔画渲染方法的系统交互图;

图3为本申请另一实施例提供的一种笔画渲染方法的流程示意图;

图4为本申请另一实施例提供的一种电子画板的示意图;

图5为本申请另一实施例提供的一种笔画渲染方法的流程示意图;

图6为本申请另一实施例提供的一种电子画板的示意图;

图7为本申请另一实施例提供的一种电子画板的示意图;

图8为本申请另一实施例提供的一种电子画板的示意图;

图9A为本申请另一实施例提供的笔画结构示意图;

图9B为本申请另一实施例提供的一种电子画板的示意图;

图10为本申请另一实施例提供的一种电子画板的示意图;

图11为本申请另一实施例提供的一种电子画板的示意图;

图12为本申请另一实施例提供的一种笔画渲染装置的结构示意图;

图13为本申请另一实施例提供的一种笔画渲染装置的结构示意图;

图14为本申请实施例提供了一种终端的结构示意图。

具体实施方式

为使得本申请的特征和优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

图1为本申请实施例提供的一种笔画渲染方法的示例性系统架构图。

如图1所示,系统架构可以包括设置于终端100中的处理器101、电子画板102。

当终端100为硬件时,可以是各种电子设备,包括但不限于智能手表、智能手机、平板电脑、膝上型便携式计算机和台式计算机等。当终端100为软件时,可以是安装在上述所列举的电子设备中,其可以实现呈多个软件或软件模块(例如:用来提供分布式服务),也可以实现成单个软件或软件模块,在此不作具体限定。

电子画板102可以认为是终端100中对用户可见的虚拟屏幕,用户可以通过与电子画板102配套的触摸笔、手指触摸或者鼠标控制虚拟画笔与电子画板102进行交互,电子画板102可以接收用户针对电子画板102的操作,并生成对应的信号发送至处理器101,处理器102基于该信号控制电子画板102显示相关内容,进行实现在电子画板102进行绘画等操作。

应理解,图1中的终端、处理器以及电子画板的数目仅是示意性的,根据实现需要,可以是任意数量的终端、处理器以及电子画板。

请参阅图2,图2为本申请实施例提供的一种笔画渲染方法的系统交互图,可以理解的,在本申请实施例中,执行主体可以终端或者终端中的处理器,还可以是终端中执行笔画渲染运行的相关服务,为方便描述下面以执行主体为终端中的处理器为例,结合图1和图2介绍一种笔画渲染方法中系统交互过程。

S201、用户在电子画板中进行擦除操作或者撤销操作。

S202、处理器基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积。

可选地,基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取用户在电子画板中的第一操作,第一操作为点擦除操作;确定电子画板中所有原始笔画与第一操作对应的点擦除笔画重合的部分,将重合的部分确定为相交笔画;根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可选地,基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取用户在电子画板中的第二操作,第二操作为线擦除操作;确定电子画板中所有原始笔画与第二操作对应的线擦除笔画重合的部分,将重合的部分在电子画板中所有原始笔画对应的笔画确定为相交笔画;根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可选地,基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取用户在电子画板中的第三操作,第三操作为撤销操作;确定撤销操作在电子画板中所有原始笔画对应的待撤销原始笔画,将待撤销原始笔画确定为相交笔画;根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可选地,根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值;根据第一最大值以及第二最大值确定第一坐标,根据第一最大值以及第二最小值确定第二坐标,根据第一最小值以及第二最大值确定第三坐标,根据第一最小值以及第二最小值确定第四坐标;根据第一坐标、第二坐标、第三坐标以及第四坐标确定操作区域。

可选地,根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画,还包括:确定操作区域中除去相交笔画之外的原始笔画,以及将相交笔画之外的原始笔画确定为非操作笔画。

可选地,获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值,包括:获取相交笔画中所有笔画点在电子画板中的笔画点坐标,笔画点坐标包括横坐标值以及纵坐标值;将笔画点坐标中横坐标值的最大值作为相交笔画在电子画板中横坐标上的第一最大值,以及将笔画点坐标中横坐标值的最小值作为相交笔画在电子画板中横坐标上的第一最小值;将笔画点坐标中纵坐标值的最大值作为相交笔画在电子画板中纵坐标上的第二最大值,以及将笔画点坐标中纵坐标值的最小值作为相交笔画在电子画板中纵坐标上的第二最小值。

可选地,当相交笔画中所有笔画点包括原始笔画点以及点擦除笔画点时,将相交笔画中的所有原始笔画点和/或所有点擦除笔画点作为相交笔画中所有笔画点。

S203、处理器将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。

在本申请实施例中,首先基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积;然后将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。由于可以先基于用户操作在电子画板中确定较小的操作区域以及非操作笔画,然后可以仅仅将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画,而不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,提升电子画板的刷新流畅性。

请参阅图3,图3为本申请另一实施例提供的一种笔画渲染方法的流程示意图。

如图3所示,该方法包括:

S301、基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积。

可以理解的,本申请实施例中提供的笔画渲染方法主要应用于电子画板或者具有电子画板的绘图软件中,其中电子画板可以认为是一个实体设备还可以认为是一个虚拟设备,电子画板主要用于接收用户输入的各种操作以及显示各种操作对应的内容。

请参阅图4,图4为本申请另一实施例提供的一种电子画板的示意图。如图4所示,在终端400中可以存在一个绘图软件410,用户460点击绘图软件410可以进入到绘图软件410中的电子画板420中,绘图软件410中可以至少包括书写选项430、擦除选项440以及撤销选项450。用户460可以通过手指、书写笔或者其他外部设备点击书写选项430之后,与电子画板420进行触摸并在电子画板420中形成对应形状的轨迹,这种轨迹可以认为是笔画470,各种笔画470可以构成图画或者文字。

当用户在电子画板中绘制出至少一个笔画之后,那么可能需要擦除一个或者多个笔画的一部分,还可能需要完全擦除一个或者多个笔画,还可能需要撤销一个或者多个完整的笔画,那么用户需要在电子画板中进行擦除操作或者撤销操作,用户在电子画板中进行擦除操作或者撤销操作的具体方式可以是,用户点击绘图软件中的擦除选项或者撤销选项之后,进行电子画板中具体位置的擦除操作或者撤销操作;还可以是通过语音指令、命令行指令进行擦除操作或者撤销操作。

相关技术中,电子画板或者绘图软件中的书写、擦除以及撤销是基本功能,在擦除场景和撤销场景中,通常需要计算笔画被擦除或者撤销之后的剩余部分,并重新绘制剩余部分出来,以保证效果的一致性。但是对所有剩余部分进行重新绘制,存在耗时长、功耗高、刷新不流畅的技术问题。

为了解决上述技术问题,在本申请实施例中,在获取到用户在电子画板中的擦除操作或者撤销操作之后,可以先基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域,其中操作区域也即电子画板中需要进行擦除笔画或者撤销笔画对应的区域,当用户不是对电子画板中的所有笔画都进行擦除或者撤销时,那么操作区域的面积必定是小于电子画板的面积的。

进一步地,在确定电子画板中的操作区域之后,还可以确定操作区域中的非操作笔画,非操作笔画是指操作区域中除去需要进行擦除或者撤销操作的笔画之后剩余的笔画,也即非操作笔画是指操作区域中不需要进行擦除或者撤销操作的笔画。

S302、将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。

可以理解的,由于操作区域为电子画板中需要进行擦除笔画或者撤销笔画对应的区域,那么电子画板中操作区域之外的区域是不需要擦除笔画或者撤销笔画的,因此可以仅仅对操作区域之内的笔画进行擦除或者撤销操作即可。

进一步地,如果直接操作区域之内的某一个或者多个笔画进行擦除或者撤销操作,那么在进行擦除或者撤销操作之后,操作区域之内剩余的笔画的效果会发生变化。

因此在本申请实施例中为了避免这个问题,在对操作区域之内的笔画进行擦除或者撤销操作时,可以先可以将操作区域中所有原始笔画都进行删除,其中原始笔画为用户在进行擦除操作或者撤销操作之前绘制的正常笔画,那么这个操作也即删除了操作区域中需要进行擦除或者撤销操作的笔画,同时也删除了操作区域中不需要进行擦除或者撤销操作的笔画,然后需要在操作区域中重新渲染非操作笔画,也即重新渲染(绘制)操作区域中不需要进行擦除或者撤销操作的笔画,以还原操作区域中不需要进行擦除或者撤销操作的笔画的显示效果。

基于上述笔画渲染方法,在擦除或者撤销场景中,由于不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,那么用户可以在更短的时间内完成一次擦除或者撤销操作,降低用户等待的时间,提升用户体验;另外在擦除操作中,可以提升擦除效率,保证擦除渲染的位置移植紧随手指,降低延迟,提升用户体验,而且可以降低对GPU资源依赖下线,可以在更多型号的设备上应用本申请中的笔画渲染方法,也即可以广泛用于笔形模拟等应用中。

在本申请实施例中,首先基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积;然后将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。由于可以先基于用户操作在电子画板中确定较小的操作区域以及非操作笔画,然后可以仅仅将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画,而不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,提升电子画板的刷新流畅性。

请参阅图5,图5为本申请另一实施例提供的一种笔画渲染方法的流程示意图。

如图5所示,该方法包括:

S501、获取用户在电子画板中的第一操作,第一操作为点擦除操作。

可以理解的,在本申请实施例中擦除操作可以包括点擦除操作以及线擦除操作,因此本申请实施例中将点擦除操作和线擦除操作对应的实施过程进行分别介绍。

用户正在电子画板中进行擦除操作之前,电子画板中已经存在了用户正常绘制的笔画也即原始笔画,在实际场景中,有时用户并不想要直接删除整条原始笔画,仅仅想要删除整条原始笔画中的部分笔画,也即用户需要进行点擦除操作,此时用户可以在电子画板中针对想要点擦除的原始笔画绘制一条点擦除笔画,点擦除笔画可以认为是连续的,以便于根据点擦除笔画与原始笔画接触位置确定需要在原始笔画中擦除的部分,也即用户针对电子画板中的原始笔画输入了第一操作也即点擦除操作。

S502、确定电子画板中所有原始笔画与第一操作对应的点擦除笔画重合的部分,将重合的部分确定为相交笔画。

由于当用户输入第一操作也即点操作之后,代表用户不想要直接删除整条原始笔画,仅仅想要删除整条原始笔画中的部分笔画,因此可以获取确定电子画板中所有原始笔画与第一操作对应的点擦除笔画重合的部分,其中重合部分的大小是由原始笔画的宽度、点擦除笔画的宽度以及原始笔画与点擦除笔画之间的相对位置决定的。

由于用户在进行点擦除操作时,可以通过控制点擦除笔画的轨迹确定点擦除笔画与原始笔画重合的部分,因此重合的部分可以认为是用户想要擦除的部分,那么可以将重合的部分确定为相交笔画。

S503、根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可以理解的,点擦除笔画与原始笔画重合的部分也即相交笔画的面积是小于电子画板中所有原始笔画的总面积,那么为了不对所有的原始笔画都进行擦除,可以先根据相交笔画的一些属性信息,确定相交笔画在电子画板中的一个大概操作区域,操作区域的面积小于电子画板的面积,且操作区域中至少包括了需要进行点擦除操作的相交笔画。

进一步地,由于操作区域是包括相交笔画的一个大概区域,因此操作区域还可能包括了其他不需要进行点擦除操作的原始笔画,因此还需要确定操作区域中的不需要进行点擦除操作的原始笔画也即非操作笔画。

请参阅图6,图6为本申请另一实施例提供的一种电子画板的示意图。如图6所示,在终端600中可以存在一个绘图软件610,用户点击绘图软件610可以进入到绘图软件610中的电子画板620中,绘图软件610中可以至少包括书写选项630、点擦除选项6401、线擦除选项6402以及撤销选项650。用户660可以通过手指、书写笔或者其他外部设备点击书写选项630之后,与电子画板620进行触摸并在电子画板620中形成对应形状的轨迹,这种轨迹可以认为是原始笔画670,各种原始笔画670可以构成图画或者文字。

当用户660想要进行点擦除操作时,可以通过手指、书写笔或者其他外部设备点击点擦除选项6401,然后通过手指、书写笔或者其他外部设备在电子画板620绘制出点擦除笔画680,终端中的处理器可以通过电子画板620,获取用户660用户针对电子画板620中的原始笔画670输入的上述第一操作也即点擦除操作。

在确定点擦除操作之后,可以确定电子画板620中所有原始笔画670与第一操作对应的点擦除笔画680重合的部分,将重合的部分确定为相交笔画690,还可以根据相交笔画690确定电子画板620中的操作区域6100以及操作区域6100中的非操作笔画6110。

S504、获取用户在电子画板中的第二操作,第二操作为线擦除操作。

用户正在电子画板中进行擦除操作之前,电子画板中已经存在了用户正常绘制的笔画也即原始笔画,在实际场景中,有时用户想要直接删除整条原始笔画,也即用户需要进行线擦除操作,此时用户可以在电子画板中针对想要线擦除的原始笔画绘制一条线擦除笔画,线擦除笔画可以认为是连续的,以便于根据线擦除笔画接触的原始笔画确定需要擦除的笔画,也即用户针对电子画板中的原始笔画输入了第二操作也即线擦除操作。

S505、确定电子画板中所有原始笔画与第二操作对应的线擦除笔画重合的部分,将重合的部分在电子画板中所有原始笔画对应的笔画确定为相交笔画。

由于当用户输入第二操作也即线擦除操作之后,代表用户想要直接删除整条原始笔画,因此可以获取确定电子画板中所有原始笔画与第二操作对应的线擦除笔画重合的部分,其中重合部分的大小是由原始笔画的宽度、线擦除笔画的宽度以及原始笔画与线擦除笔画之间的相对位置决定的。

由于用户在进行线擦除操作时,可以通过控制线擦除笔画的轨迹确定线擦除笔画与原始笔画重合的部分,因此重合的部分在电子画板中所有原始笔画对应的笔画,可以认为是用户想要线擦除的原始笔画,那么可以将重合的部分在电子画板中所有原始笔画对应的笔画确定为相交笔画。

S506、根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可以理解的,原始笔画与线擦除笔画重合的部分也即相交笔画的面积是小于电子画板中所有原始笔画的总面积,那么为了不对所有的原始笔画都进行擦除,可以先根据相交笔画的一些属性信息,确定相交笔画在电子画板中的一个大概操作区域,操作区域的面积小于电子画板的面积,且操作区域中至少包括了需要进行线擦除操作的相交笔画。

进一步地,由于操作区域是包括相交笔画的一个大概区域,因此操作区域还可能包括了其他不需要进行点线擦除操作的原始笔画,因此还需要确定操作区域中的不需要进行线擦除操作的原始笔画也即非操作笔画。

请参阅图7,图7为本申请另一实施例提供的一种电子画板的示意图。如图7所示,在终端700中可以存在一个绘图软件710,用户点击绘图软件710可以进入到绘图软件710中的电子画板720中,绘图软件710中可以至少包括书写选项730、点擦除选项7401、线擦除选项7402以及撤销选项750。用户760可以通过手指、书写笔或者其他外部设备点击书写选项730之后,与电子画板720进行触摸并在电子画板720中形成对应形状的轨迹,这种轨迹可以认为是原始笔画770,各种原始笔画770可以构成图画或者文字。

当用户760想要进行线擦除操作时,可以通过手指、书写笔或者其他外部设备点击线擦除选项7402,然后通过手指、书写笔或者其他外部设备在电子画板720绘制出线擦除笔画780,终端中的处理器可以通过电子画板720,获取用户760用户针对电子画板720中的原始笔画770输入的上述第二操作也即线擦除操作。

在确定线擦除操作之后,可以确定电子画板720中所有原始笔画770与第二操作对应的线擦除笔画780重合的部分,将重合的部分在电子画板720中所有原始笔画770对应的笔画确定为相交笔画790,还可以根据相交笔画790确定电子画板720中的操作区域7100以及操作区域7100中的非操作笔画7110。

S507、获取用户在电子画板中的第三操作,第三操作为撤销操作。

在本申请实施例中,除了可以针对原始笔画进行擦除操作之外,还可以针对原始笔画进行撤销操作,用户正在电子画板中进行撤销操作之前,电子画板中已经存在了用户正常绘制的笔画也即原始笔画,在实际场景中,有时用户想要直接撤销之前步骤中绘制的笔画,也即用户需要进行撤销操作,此时用户可以在电子画板中针对想要撤销的原始笔画输入撤销指令,撤销指令可以包括待撤销的具体原始笔画,以便于根据撤销指令确定撤销的笔画,也即用户针对电子画板中的原始笔画输入了第三操作也即撤销操作。

S508、确定撤销操作在电子画板中所有原始笔画对应的待撤销原始笔画,将待撤销原始笔画确定为相交笔画。

由于当用户输入第三操作也即撤销操作之后,代表用户想要撤销之前绘制的原始笔画,因此可以根据第三操作中对应的撤销指令中携带的原始笔画信息,确定具体需要撤销哪一个或者多个原始笔画,这些原始笔画可以认为是待撤销原始笔画,还可以将这些待撤销原始笔画确定为相交笔画。

S509、根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可以理解的,只要不是对电子画板中的所有原始笔画都进行撤销,那么相交笔画也即待撤销原始笔画的面积是小于电子画板中所有原始笔画的总面积,那么为了不对所有的原始笔画都进行擦除,可以先根据相交笔画也即待撤销原始笔画的一些属性信息,确定相交笔画在电子画板中的一个大概操作区域,操作区域的面积小于电子画板的面积,且操作区域中至少包括了需要进行撤销操作的相交笔画。

进一步地,由于操作区域是包括相交笔画的一个大概区域,因此操作区域还可能包括了其他不需要进行点擦除操作的原始笔画,因此还需要确定操作区域中的不需要进行线擦除操作的原始笔画也即非操作笔画。

请参阅图8,图8为本申请另一实施例提供的一种电子画板的示意图。如图8所示,在终端800中可以存在一个绘图软件810,用户点击绘图软件810可以进入到绘图软件810中的电子画板820中,绘图软件810中可以至少包括书写选项830、点擦除选项8401、线擦除选项8402以及撤销选项850。用户860可以通过手指、书写笔或者其他外部设备点击书写选项830之后,与电子画板820进行触摸并在电子画板820中形成对应形状的轨迹,这种轨迹可以认为是原始笔画870,各种原始笔画870可以构成图画或者文字。

当用户860想要进行撤销操作时,可以通过手指、书写笔或者其他外部设备点击撤销选项850预测次数,代表需要撤销一个或者多个原始笔画870,例如,点击撤销选项850一次,代表需要撤销之前一个步骤中的原始笔画870;点击撤销选项850两次,代表需要撤销之前两次步骤中的原始笔画870,依次类推;另外,还可以在通过手指、书写笔或者其他外部设备点击撤销选项850之后,直接选中需要撤销的原始笔画870,终端中的处理器可以通过电子画板820,获取用户860用户针对电子画板820中的原始笔画870输入的上述第三操作也即撤销操作。

在确定撤销操作之后,可以确定撤销操作在电子画板820中所有原始笔画对应的待撤销原始笔画,将待撤销原始笔画确定为相交笔画890,还可以根据相交笔画890确定电子画板820中的操作区域8100以及操作区域8100中的非操作笔画8110。

进一步的,在上述步骤中都需要根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画,那么一种可行的实施方式是:第一步,在电子画板中建立一个坐标系,并获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值。

请参阅图9A,图9A为本申请另一实施例提供的笔画结构示意图。如图9A所示,在终端900中可以存在一个绘图软件910,绘图软件910中包括电子画板920,其中电子画板920中的所有笔画都是有笔画点构成,也即所有原始笔画970是由至少一个原始笔画点9701构成,点擦除笔画是由至少一个点擦除笔画点构成,线擦除笔画是由至少一个线擦除笔画点构成。

那么获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值的一种可行的实施方式包括:首先获取相交笔画中所有笔画点在电子画板中的笔画点坐标,笔画点坐标包括横坐标值以及纵坐标值,其中,由于相交笔画可能是点擦除操作中对应的相交笔画,可以是线擦除操作中对应的相交笔画,还可以是撤销操作中对应的相交笔画,因此当相交笔画是点擦除操作中对应的相交笔画时,相交笔画中所有笔画点包括原始笔画点以及点擦除笔画点,可以将相交笔画中的所有原始笔画点和/或所有点擦除笔画点作为相交笔画中所有笔画点;当相交笔画是线擦除操作中对应的相交笔画或者撤销操作中对应的相交笔画时,相交笔画为完成的原始笔画,因此相交笔画中所有笔画点可以仅仅包括原始笔画点,可以将相交笔画中的所有原始笔画点作为相交笔画中所有笔画点。

然后将笔画点坐标中横坐标值的最大值作为相交笔画在电子画板中横坐标上的第一最大值,以及将笔画点坐标中横坐标值的最小值作为相交笔画在电子画板中横坐标上的第一最小值;以及将笔画点坐标中纵坐标值的最大值作为相交笔画在电子画板中纵坐标上的第二最大值,以及将笔画点坐标中纵坐标值的最小值作为相交笔画在电子画板中纵坐标上的第二最小值。

第二步,根据第一最大值以及第二最大值确定第一坐标,也即将第一最大值作为第一坐标的横坐标,第二最大值作为第一坐标的纵坐标;根据第一最大值以及第二最小值确定第二坐标,也即将第一最大值作为第二坐标的横坐标,将第二最小值作为第二坐标的纵坐标;根据第一最小值以及第二最大值确定第三坐标,也即将第一最小值作为第三坐标的横坐标,将第二最大值作为第三坐标的纵坐标;根据第一最小值以及第二最小值确定第四坐标,也即将第一最小值作为第四坐标的横坐标,将第二最小值作为第四坐标的纵坐标,最后根据第一坐标、第二坐标、第三坐标以及第四坐标确定一个矩形区域,将该矩形区域作为操作区域。

在根据相交笔画确定电子画板中的操作区域之后,可以确定操作区域中除去相交笔画之外的原始笔画,以及将相交笔画之外的原始笔画确定为非操作笔画。

S510、将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。

可以理解的,由于操作区域为电子画板中需要进行擦除笔画或者撤销笔画对应的区域,那么电子画板中操作区域之外的区域是不需要擦除笔画或者撤销笔画的,因此可以仅仅对操作区域之内的笔画进行擦除或者撤销操作即可。

进一步地,如果直接操作区域之内的某一个或者多个笔画进行擦除或者撤销操作,那么在进行擦除或者撤销操作之后,操作区域之内剩余的笔画的效果会发生变化。

因此在本申请实施例中为了避免这个问题,在对操作区域之内的笔画进行擦除或者撤销操作时,可以先可以将操作区域中所有原始笔画都进行删除,其中原始笔画为用户在进行擦除操作或者撤销操作之前绘制的正常笔画,那么这个操作也即删除了操作区域中需要进行擦除或者撤销操作的笔画,同时也删除了操作区域中不需要进行擦除或者撤销操作的笔画,然后需要在操作区域中重新渲染非操作笔画,也即重新渲染(绘制)操作区域中不需要进行擦除或者撤销操作的笔画,以还原操作区域中不需要进行擦除或者撤销操作的笔画的显示效果。

请参阅图9B,图9B为本申请另一实施例提供的一种电子画板的示意图。如图9B所示,在终端900中可以存在一个绘图软件,用户点击绘图软件可以进入到绘图软件中的电子画板920中,在确定用户的第一操作也即点擦除操作之后,可以确定电子画板920中所有原始笔画970与第一操作对应的点擦除笔画980重合的部分,将重合的部分确定为相交笔画990,还可以根据相交笔画990确定电子画板920中的操作区域9100以及操作区域9100中的非操作笔画9110,最后可以将操作区域9100中所有原始笔画970删除,以及在操作区域9100中重新渲染非操作笔画9110。

请参阅图10,图10为本申请另一实施例提供的一种电子画板的示意图。如图10所示,在终端1000中可以存在一个绘图软件,用户点击绘图软件可以进入到绘图软件中的电子画板1020中,在确定线擦除操作之后,可以确定电子画板1020中所有原始笔画1070与第二操作对应的线擦除笔画重合的部分,将重合的部分在电子画板1020中所有原始笔画1070对应的笔画确定为相交笔画1090,还可以根据相交笔画1090确定电子画板1020中的操作区域10100以及操作区域10100中的非操作笔画10110,最后可以将操作区域10100中所有原始笔画1070删除,以及在操作区域10100中重新渲染非操作笔画10110。

请参阅图11,图11为本申请另一实施例提供的一种电子画板的示意图。如图11所示,在终端1100中可以存在一个绘图软件,用户点击绘图软件可以进入到绘图软件中的电子画板1120中,在确定撤销操作之后,可以确定撤销操作在电子画板1120中所有原始笔画1170对应的待撤销原始笔画,将待撤销原始笔画确定为相交笔画1190,还可以根据相交笔画1190确定电子画板1120中的操作区域11100以及操作区域11100中的非操作笔画11110,最后可以将操作区域11100中所有原始笔画1070删除,以及在操作区域11100中重新渲染非操作笔画11110。

基于上述笔画渲染方法,在擦除或者撤销场景中,由于不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,那么用户可以在更短的时间内完成一次擦除或者撤销操作,降低用户等待的时间,提升用户体验;另外在擦除操作中,可以提升擦除效率,保证擦除渲染的位置移植紧随手指,降低延迟,提升用户体验,而且可以降低对GPU资源依赖下线,可以在更多型号的设备上应用本申请中的笔画渲染方法,也即可以广泛用于笔形模拟等应用中。

请参阅图12,图12为本申请另一实施例提供的一种笔画渲染装置的结构示意图。

如图12所示,笔画渲染装置1200包括:

渲染确定模块1210,用于基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积。

渲染实现模块1220,用于将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。

请参阅图13,图13为本申请另一实施例提供的一种笔画渲染装置的结构示意图。

如图13所示,笔画渲染装置1300包括:

第一操作获取模块1310,用于获取用户在电子画板中的第一操作,第一操作为点擦除操作。

第一相交笔画确定模块1320,用于确定电子画板中所有原始笔画与第一操作对应的点擦除笔画重合的部分,将重合的部分确定为相交笔画。

第一区域确定模块1330,用于根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

第二操作获取模块1340,用于获取用户在电子画板中的第二操作,第二操作为线擦除操作。

第二相交笔画确定模块1350,用于确定电子画板中所有原始笔画与第二操作对应的线擦除笔画重合的部分,将重合的部分在电子画板中所有原始笔画对应的笔画确定为相交笔画。

第二区域确定模块1360,用于根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

第三操作获取模块1370,用于获取用户在电子画板中的第三操作,第三操作为撤销操作。

第三相交笔画确定模块1380,用于确定撤销操作在电子画板中所有原始笔画对应的待撤销原始笔画,将待撤销原始笔画确定为相交笔画。

第三区域确定模块1390,用于根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

其中,第一区域确定模块1330、第二区域确定模块1360以及第三区域确定模块1390,还用于获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值;根据第一最大值以及第二最大值确定第一坐标,根据第一最大值以及第二最小值确定第二坐标,根据第一最小值以及第二最大值确定第三坐标,根据第一最小值以及第二最小值确定第四坐标;根据第一坐标、第二坐标、第三坐标以及第四坐标确定操作区域。

第一区域确定模块1330、第二区域确定模块1360以及第三区域确定模块1390,还用于确定操作区域中除去相交笔画之外的原始笔画,以及将相交笔画之外的原始笔画确定为非操作笔画。

其中,获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值,包括:获取相交笔画中所有笔画点在电子画板中的笔画点坐标,笔画点坐标包括横坐标值以及纵坐标值;将笔画点坐标中横坐标值的最大值作为相交笔画在电子画板中横坐标上的第一最大值,以及将笔画点坐标中横坐标值的最小值作为相交笔画在电子画板中横坐标上的第一最小值;将笔画点坐标中纵坐标值的最大值作为相交笔画在电子画板中纵坐标上的第二最大值,以及将笔画点坐标中纵坐标值的最小值作为相交笔画在电子画板中纵坐标上的第二最小值。

进一步地,当相交笔画中所有笔画点包括原始笔画点以及点擦除笔画点时,将相交笔画中的所有原始笔画点和/或所有点擦除笔画点作为相交笔画中所有笔画点。

渲染实现模块13100,用于将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。

基于上述笔画渲染装置,在擦除或者撤销场景中,由于不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,那么用户可以在更短的时间内完成一次擦除或者撤销操作,降低用户等待的时间,提升用户体验;另外在擦除操作中,可以提升擦除效率,保证擦除渲染的位置移植紧随手指,降低延迟,提升用户体验,而且可以降低对GPU资源依赖下线,可以在更多型号的设备上应用本申请中的笔画渲染装置,也即可以广泛用于笔形模拟等应用中。

在本申请实施例中,一种笔画渲染装置包括:渲染确定模块,用于基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积;渲染实现模块,用于将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。由于可以先基于用户操作在电子画板中确定较小的操作区域以及非操作笔画,然后可以仅仅将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画,而不需要将电子画板中的所有笔画都删除,也不需要对电子画板中所有非操作笔画都进行渲染,可以大大减少在擦除操作或者撤销操作中的耗时以及功耗,提升电子画板的刷新流畅性。

本申请实施例还提供了一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行如上述实施例中的任一项的方法的步骤。

进一步地,请参见图14,图14为本申请实施例提供了一种终端的结构示意图。如图14所示,终端1400可以包括:至少一个中央处理器1401,至少一个网络接口1404,用户接口1403,存储器1405,至少一个通信总线1402。

其中,通信总线1402用于实现这些组件之间的连接通信。

其中,用户接口1403可以包括显示屏(Display)、摄像头(Camera),可选用户接口1403还可以包括标准的有线接口、无线接口。

其中,网络接口1404可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。

其中,中央处理器1401可以包括一个或者多个处理核心。中央处理器1401利用各种接口和线路连接整个终端1400内的各个部分,通过运行或执行存储在存储器1405内的指令、程序、代码集或指令集,以及调用存储在存储器1405内的数据,执行终端1400的各种功能和处理数据。可选的,中央处理器1401可以采用数字信号处理(Digital SignalProcessing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。中央处理器1401可集成中央中央处理器(Central Processing Unit,CPU)、图像中央处理器(GraphicsProcessing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到中央处理器1401中,单独通过一块芯片进行实现。

其中,存储器1405可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1405包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1405可用于存储指令、程序、代码、代码集或指令集。存储器1405可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1405可选的还可以是至少一个位于远离前述中央处理器1401的存储装置。如图14所示,作为一种计算机存储介质的存储器1405中可以包括操作系统、网络通信模块、用户接口模块以及笔画渲染程序。

在图14所示的终端1400中,用户接口1403主要用于为用户提供输入的接口,获取用户输入的数据;而中央处理器1401可以用于调用存储器1405中存储的笔画渲染程序,并具体执行以下操作:

基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,操作区域的面积小于电子画板的面积;将操作区域中所有原始笔画删除,以及在操作区域中重新渲染非操作笔画。

可选地,基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取用户在电子画板中的第一操作,第一操作为点擦除操作;确定电子画板中所有原始笔画与第一操作对应的点擦除笔画重合的部分,将重合的部分确定为相交笔画;根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可选地,基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取用户在电子画板中的第二操作,第二操作为线擦除操作;确定电子画板中所有原始笔画与第二操作对应的线擦除笔画重合的部分,将重合的部分在电子画板中所有原始笔画对应的笔画确定为相交笔画;根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可选地,基于用户在电子画板中的擦除操作或者撤销操作,确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取用户在电子画板中的第三操作,第三操作为撤销操作;确定撤销操作在电子画板中所有原始笔画对应的待撤销原始笔画,将待撤销原始笔画确定为相交笔画;根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画。

可选地,根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画,包括:获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值;根据第一最大值以及第二最大值确定第一坐标,根据第一最大值以及第二最小值确定第二坐标,根据第一最小值以及第二最大值确定第三坐标,根据第一最小值以及第二最小值确定第四坐标;根据第一坐标、第二坐标、第三坐标以及第四坐标确定操作区域。

可选地,根据相交笔画确定电子画板中的操作区域以及操作区域中的非操作笔画,还包括:确定操作区域中除去相交笔画之外的原始笔画,以及将相交笔画之外的原始笔画确定为非操作笔画。

可选地,获取相交笔画在电子画板中横坐标上的第一最大值以及第一最小值,以及纵坐标上的第二最大值以及第二最小值,包括:获取相交笔画中所有笔画点在电子画板中的笔画点坐标,笔画点坐标包括横坐标值以及纵坐标值;将笔画点坐标中横坐标值的最大值作为相交笔画在电子画板中横坐标上的第一最大值,以及将笔画点坐标中横坐标值的最小值作为相交笔画在电子画板中横坐标上的第一最小值;将笔画点坐标中纵坐标值的最大值作为相交笔画在电子画板中纵坐标上的第二最大值,以及将笔画点坐标中纵坐标值的最小值作为相交笔画在电子画板中纵坐标上的第二最小值。

可选地,当相交笔画中所有笔画点包括原始笔画点以及点擦除笔画点时,将相交笔画中的所有原始笔画点和/或所有点擦除笔画点作为相交笔画中所有笔画点。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上为对本申请所提供的一种笔画渲染方法、装置、存储介质以及终端的描述,对于本领域的技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

相关技术
  • 笔画渲染方法、装置、存储介质以及终端
  • 三维模型及材质合并方法、装置、终端、存储介质以及渲染方法
技术分类

06120113241067