基于触摸屏的毛笔笔形处理方法和装置制造方法及图纸

技术编号:11371627 阅读:76 留言:0更新日期:2015-04-30 05:04
本发明专利技术提供一种基于触摸屏的毛笔笔形处理方法和装置。方法,包括:检测用户当前的触摸点位置;根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标;根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度;采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户。

【技术实现步骤摘要】
基于触摸屏的毛笔笔形处理方法和装置
本专利技术涉及通信技术,尤其涉及一种基于触摸屏的毛笔笔形处理方法和装置。
技术介绍
随着触摸屏技术的不断发展,现有智能终端大多采用触摸屏。用户可以通过触摸屏与智能终端进行交互,从而便捷地完成智能终端的操作过程。而且,针对智能终端的各种应用也被广泛开发。例如,在终端设备上进行绘画的应用程序(简称:APP)等。用户可以从应用提供商处下载并安装绘画APP。当用户需要使用时,可以打开该APP进入操作界面,在操作界面上,用户可以通过手指在触摸屏上操作,从而画出各种图案,或者写字等。现有技术中,用户有时希望在触摸屏上写出的字形为毛笔笔形,因此,如何呈现毛笔笔形成为亟待解决的问题。
技术实现思路
本专利技术提供一种基于触摸屏的毛笔笔形处理方法和装置,以在触摸屏上呈现毛笔笔形。本专利技术提供一种基于触摸屏的毛笔笔形处理方法,包括:检测用户当前的触摸点位置;根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标;根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度;采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户。本专利技术提供一种基于触摸屏的毛笔笔形处理装置,包括:检测模块,用于检测用户当前的触摸点位置;坐标确定模块,用于根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标;笔形宽度确定模块,用于根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度;绘制显示模块,用于采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户。本专利技术,通过用户当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,可以确定当前渲染点的坐标;根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,可以确定笔形宽度;进一步可以采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户,从而可以在触摸屏上呈现毛笔笔形,满足用户的需求。附图说明图1为本专利技术基于触摸屏的毛笔笔形处理方法实施例的流程图;图2为本专利技术基于触摸屏的毛笔笔形处理装置实施例的流程图。具体实施方式图1为本专利技术基于触摸屏的毛笔笔形处理方法实施例的流程图,如图1所示,本实施例的方法可以包括:步骤101、检测用户当前的触摸点位置。具体来说,当用户需要在触摸屏上写出毛笔笔形的字体时,用户可以在触摸屏上进行触摸操作,相应的,处理器可以检测用户在该触摸屏上操作的触摸点位置。本实施例并不限定检测该触摸点位置的具体算法,本领域技术人员可以根据需要自行选择或设计出所需精度的检测算法。本实施例中,可以将检测到的当前的触摸点位置的坐标记为(xn,yn)。步骤102、根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标。为了逼真地呈现出毛笔渲染的效果,本实施例需要根据当前触摸点的坐标来确定出当前渲染点的坐标,该渲染点的坐标与单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标相关。具体来说,毛笔在宣纸上书写时,在运笔过后,宣纸上的墨迹逐渐扩散,墨迹的轨迹与毛笔运动轨迹有一定延迟,既毛笔书写过后宣纸上的墨迹逐渐扩散开形成最终笔画,因此,本实施例需要采用触摸点来得出具有一定时延的渲染点,从而可以逼真地模拟毛笔笔形有延时渲染的效果。在具体实现时,可以采用下述公式(1)来确定渲染点的坐标(xn′,yn′):其中,n为单笔中触摸点的个数,xn′-1,xn′-2,xn′-3分别为前一个、前两个、前三个渲染点的横坐标,yn′-1,yn′-2,yn′-3分别为前一个、前两个、前三个渲染点的纵坐标。本领域技术人员可以理解的是,上述公式(1)也可以进行合理变形,例如所乘的系数可以改变,或者,在n≥3时,均采用1/4(xn+2xn′-1+xn′-2)。步骤103、根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度。为了逼真地呈现出毛笔笔形向周围渲染的效果,本实施例在确定笔形宽度时可以考虑单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离。在具体实现时,可以采用下述公式(2)来确定笔形宽度width:其中,n为单笔中触摸点的个数,K为笔形变化系数,baseWidth为笔形基本宽度,startcount为单笔起笔处的触摸点的个数,q为变化指数,distance为当前触摸点和前一个渲染点之间的距离,本领域技术人员可以理解的是,上述公式(2)也可以进行合理变形,例如,不管n与startcount之间的大小关系,均可以采用其中一个表达式来计算笔形宽度width。优选的,K的取值可以为30,baseWidth的取值可以为20,q取值可以为0.6。步骤104、采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户。具体来说,若当前渲染点不为最后一点,则可以用宽度为笔形宽度width的连接线连接前一渲染点及当前渲染点,其中连接线起始处及结尾处连接有直径为笔形宽度width的半圆,该半圆能够使得连接线接缝处较为平滑。若当前渲染点为最后一点,且单笔中渲染点的个数小于等于3个,则用宽度为笔形宽度width的连接线连接前一渲染点及当前渲染点,其中连接线起始处及结尾处连接有直径为笔形宽度width的半圆;若当前渲染点是最后一点且单笔中渲染点的个数大于3个,则在当前渲染点后添加至少一个收笔渲染点,并以连接线连接最末渲染点及各个收笔渲染点,连接线的宽度为上次连接线宽度乘以收笔宽度衰减系数G,以增加毛笔结尾处拖拽的效果。举例来说,该收笔渲染点的横纵坐标xln,yln由下述公式(3)确定:xln=2xl-1+(xl-1-xl-2)·(D+1)、yln=2yl-1+(yl-1-yl-2)·(D+1)(3)其中,xl-1为当前收笔渲染点的前一渲染点的横坐标,xl-2为当前收笔渲染点的前两渲染点的横坐标,yl-1为当前收笔渲染点的前一渲染点的纵坐标,yl-2为当前收笔渲染点的前两渲染点的纵坐标,D为收笔宽度衰减系数。其中,其中distancel1_l2为当前收笔渲染点的前一渲染点到前两渲染点的距离,distancel2_l3为当前收笔渲染点的前两渲染点到前三渲染点的距离,endCount为添加的收笔渲染点个数,p为收笔指数。优选的,endCount可以取为5,G可以取0.8。本实施例,通过用户当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,可以确定当前渲染点的坐标;根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,可以确定笔形宽度;进一步可以采用宽度为笔形宽度width的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,本文档来自技高网...
基于触摸屏的毛笔笔形处理方法和装置

【技术保护点】
一种基于触摸屏的毛笔笔形处理方法,其特征在于,包括:检测用户当前的触摸点位置;根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标;根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度;采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户。

【技术特征摘要】
1.一种基于触摸屏的毛笔笔形处理方法,其特征在于,包括:检测用户当前的触摸点位置;根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标;根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度;采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,并显示给该用户。2.根据权利要求1所述的方法,其特征在于,所述根据当前触摸点位置的坐标、单笔中所包含的触摸点的个数以及前一个或者前几个渲染点的坐标,确定当前渲染点的坐标,包括:采用下述公式(1)来确定渲染点的坐标(x′n,y′n):其中,n为单笔中触摸点的个数,xn为当前的触摸点位置的横坐标,yn为当前的触摸点位置的纵坐标,x′n-1,x′n-2,x′n-3分别为前一个、前两个、前三个渲染点的横坐标,y′n-1,y′n-2,y′n-3分别为前一个、前两个、前三个渲染点的纵坐标。3.根据权利要求2所述的方法,其特征在于,所述根据单笔中所包含的触摸点的个数、笔形基本宽度、单笔起笔处的触摸点的个数、当前触摸点和前一个渲染点之间的距离,确定笔形宽度,包括:采用下述公式(2)来确定笔形宽度width:其中,n为单笔中触摸点的个数,K为笔形变化系数,baseWidth为笔形基本宽度,startcount为单笔起笔处的触摸点的个数,q为变化指数,distance为当前触摸点和前一个渲染点之间的距离,4.根据权利要求3所述的方法,其特征在于,所述采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点以进行毛笔笔形绘制,包括:若当前渲染点不为最后一点,则采用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点,其中连接线起始处及结尾处连接有直径为笔形宽度的半圆;若当前渲染点为最后一点,且单笔中渲染点的个数小于等于3个,则用宽度为笔形宽度的连接线连接前一渲染点及当前渲染点,其中连接线起始处及结尾处连接有直径为笔形宽度的半圆;若当前渲染点是最后一点且单笔中渲染点的个数大于3个,则在当前渲染点后添加至少一个收笔渲染点,并以连接线连接最末渲染点及各个收笔渲染点,连接线的宽度为上次连接线宽度乘以收笔宽度衰减系数。5.根据权利要求4所述的方法,其特征在于,所述收笔渲染点的坐标采用下述公式(3)确定:xln=2xl-1+(xl-1-xl-2)·(D+1)、yln=2yl-1+(yl-1-yl-2)·(D+1)(3)其中,xl-1为当前收笔渲染点的前一渲染点的横坐标,xl-2为当前收笔渲染点的前两渲染点的横坐标,yl-1为当前收笔渲染点的前一渲染点的纵坐标,yl-2为当前收笔渲染点的前两渲染点的纵坐标,D为收笔宽度衰减系数;其中distancel1_l2为当前收笔渲染点的前一渲染点到前两渲染点的距离,distancel2_l3为当前收笔渲染...

【专利技术属性】
技术研发人员:李硕高玉军
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1