CN102521857A - 电子毛笔书写笔形角度控制方法 - Google Patents
电子毛笔书写笔形角度控制方法 Download PDFInfo
- Publication number
- CN102521857A CN102521857A CN2011103844183A CN201110384418A CN102521857A CN 102521857 A CN102521857 A CN 102521857A CN 2011103844183 A CN2011103844183 A CN 2011103844183A CN 201110384418 A CN201110384418 A CN 201110384418A CN 102521857 A CN102521857 A CN 102521857A
- Authority
- CN
- China
- Prior art keywords
- angle
- stroke
- combination
- strokes
- handwriting
- 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
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种电子毛笔书写笔形角度控制方法,涉及计算机图形处理技术领域,包括步骤:S1:当绘制笔迹到笔画的转折或弯折处时,获取触摸设备获得的或根据笔迹的行进角度计算得到的当前笔形的笔形角度;S2:根据所述笔形角度绘制当前笔形。本发明提高了电子毛笔书写的笔迹在笔画转折或弯折处的模拟程度和真实感。
Description
技术领域
本发明涉及计算机图形处理技术领域,特别涉及一种电子毛笔书写笔形角度控制方法。
背景技术
中国毛笔书法是一门古老而深邃的艺术,是中华民族艺术宝库中一颗璀璨夺目的明珠,它伴随着中华文明的发展而发展。在计算机高速发展的今天,人们希望能使书法与时俱进,与现代科技相融合,如何在计算机上逼真的模拟出毛笔的书写效果是很多专家学者研究的方向。在众多的相关研究工作中,模拟毛笔书写笔迹主要的方法是采用硬件来获取输入数据,通过软件算法来对这些数据进行修正处理,以实现毛笔书写的效果,达到模拟真实毛笔动作的目的,如采用光导纤维来模拟倒立的毛笔笔头,通过在毛笔上添加传感器来捕捉捕获位置、压力等数据,并将这些数据转换成毛笔的各个参数,然后通过一系列的软件修正算法,来修正笔迹形状,模拟笔迹的书写效果。这些实现方法中,需要专用于毛笔笔迹的书写的硬件设备,设备成本高,同时,运笔过程中的“提按使转”无法得以体现,毛笔书写运行过程中若没有提按的参与,书法线条将是直来直去,僵硬呆板,线条质量就很差,甚至达不到书法艺术最起码的要求。
由于在电子毛笔书写过程中,行笔方向并不是沿一条直线或是一定曲率的曲线,可能出现笔画转折或弯折,若此时绘制笔形的角度没有变化,那么在笔画转折或弯折处的笔迹将会和真实的毛笔笔画相差甚远,使得电子毛笔书写的模拟程度不高,缺乏真实感。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何提高电子毛笔书写的笔迹在笔画转折或弯折处的模拟程度和真实感。
(二)技术方案
为解决上述技术问题,本发明提供了一种电子毛笔书写笔形角度控制方法,包括步骤:
S1:当绘制笔迹到笔画的转折或弯折处时,获取触摸设备获得的或根据笔迹的行进角度计算得到的当前笔形的笔形角度;
S2:根据所述笔形角度绘制当前笔形。
其中,步骤S1中,触摸设备获得当前笔形的笔形角度的方式为:触摸设备的触摸屏检测触摸笔在屏幕平面上投影线与屏幕X轴的夹角,以所述夹角为当前笔形的笔形角度。
其中,步骤S1中,笔迹出现顿笔或回锋的情况时,笔形角度即为所述行进角度,否则按如下公式计算得到当前笔形的笔形角度Angle:
Angle=Angleprev+Anglediff×TrunRatio
其中,TrunRatio为角度调整的比例,VEER为预设转折或弯折处笔迹上的点数,Pprev为前一点的压力值,Angleprev为前一点处笔形角度,Anglediff为当前点与前一点的笔迹的行进角度的角度差。
其中,若笔迹上前一点与当前点的压力比值小于预设阈值,并且当前点压力大于预设压力值,则认为发生顿笔,顿笔时笔形角度与笔迹的行进角度一致。
其中,若笔迹上当前点和前一点的角度差大于预设角度阈值,则认为发生回锋,回锋时笔形角度与笔迹的行进角度一致。
其中,所述预设角度阈值为170°。
其中,所述笔迹的行进角度为笔迹上当前点与下一点的连线与X轴的夹角,所述笔迹为直线笔迹或曲线笔迹。
其中,所述笔迹的行进角度为曲线笔迹上当前点的切线与X轴的夹角。
其中,所述步骤S2中绘制笔形的方式为:
根据预设的最大笔宽W和当前触摸设备感应的压力确定所述笔形沿笔杆方向的大圆半径:
d2=W×pressure
根据如下公式确定笔尖方向的小圆半径:
d1=d2×k×pressure
在两个圆的同一侧分别绘制一条与两圆都相切的直线,以形成封闭的形状,在两圆的直径和两切线形成梯形,所述梯形的高度为:
h=H×pressure
其中,H表示预设的最大笔形长度,k为形状比例参数。
其中,所述k取值为0~1的浮点数,所述pressure量化到0~1浮点数。
(三)有益效果
本发明通过在笔迹的转折或转折处时对笔形进行适当的角度控制,从而提高了电子毛笔书写的笔迹在笔画转折或弯折处的模拟程度和真实感。
附图说明
图1是本发明实施例的一种电子毛笔书写笔形角度控制方法流程图。
图2是图1的方法中笔形示意图;
图3是图1方法中触摸屏设备获取笔形角度的示意图;
图4是采用贝塞尔曲线进行笔迹插值示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
如图1所示,本发明实施例的电子毛笔书写笔形角度控制方法包括:
步骤S101,当绘制笔迹到笔画的转折或弯折处时,获取触摸设备获得的或根据笔迹的行进角度计算得到的当前笔形的笔形角度。
本实施例中的笔形如图2所示,绘制方法如下:
根据预设的最大笔宽W和当前触摸设备感应的压力确定所述笔形沿笔杆方向的大圆半径:
d2=W×pressure
根据如下公式确定笔尖方向的小圆半径:
d1=d2×k×pressure
在两个圆的同一侧分别绘制一条与两圆都相切的直线,以形成封闭的形状,在两圆的直径和两切线形成梯形,所述梯形的高度为:
h=H×pressure
其中,H表示预设的最大笔行长度,k为形状比例参数,取值为0~1的浮点数,pressure量化到0~1浮点数。
本发明中的笔形并不限于上述绘制方法和笔形形状,只要笔形为非圆形笔形即可。本实施例中的笔形角度,是指笔杆在触摸屏平面上的投影的二维角度,对应于图2中笔形的大头朝向的角度。
传统的书法技法要求笔杆的方向要朝向运笔的方向,也就是顺峰行笔,但实际情况很多时候并不是这种情况,或者说不太可能严格按照这种要求去做,比如在写横笔时,往往是先向下顿笔,然后向右侧峰行笔,在逐渐转向顺峰行笔,如果再顿笔后突然将笔杆变为横向,书写效果不好,而且也不易做到,因此,很多情况下毛笔的笔杆方向与运笔方向是不同的,因此需要对笔形角度进行控制。
如果触摸设备的触摸屏支持触摸笔的倾斜角度检测,则笔形角度的计算可以根据倾斜角计算,从毛笔的物理形状上可以看出,笔尖总是朝向笔杆的反方向的,因此,只要知道触摸笔在屏幕平面上投影就能计算出笔形角度,如图3所示,角R为设备提供的触摸笔在XY平面上投影与X轴的夹角,也就是当前点处的笔形角度,即当前笔形角度。
通常情况下笔杆的倾斜率与笔形角度相等,但也不是绝对的,考虑以下情况,当毛笔进行调峰或者逆峰行笔时,则笔杆的倾斜率与笔形角度不同,甚至相反,因此,还要与行笔方向一起综合考虑来确定笔形方向。当行笔方向与笔杆倾斜角度差值小于等于90°时,笔形角度等于笔杆在书写平面上的投影线与X轴的夹角,当行笔方向与倾斜角度差值大于90°时,笔形角度与笔杆的倾斜角度相反。
对于不支持触摸笔倾斜率检测的设备来说,笔形角度的计算只能通过笔迹的行进角度来推算。笔迹的行进角度为笔迹上当前点与下一点的连线与X轴的夹角,该笔迹为直线笔迹或曲线笔迹。若为曲线笔迹时,优选地,行进角度为曲线笔迹上当前点的切线与X轴的夹角。下面简单介绍一下笔迹曲线的插值方法。
多数情况下,笔形角度与行进角度相等。因此以行进角度作为笔形角度。顺峰行笔是笔法的基本要求,因此顺锋时行进角度即为笔形角度。
在笔迹出现转折或弯折时,若是顿笔或回锋情况发生则笔形角度就为行进角度。
判断当前点是否为顿笔,若笔迹上前一点(本文中“前一点”或“当前点”之类的术语指的是生成笔迹时笔迹上的触摸点或插值点)与当前点的压力比值小于预设阈值,如0.7,并且当前点压力大于预设压力值,如0.65,则认为发生顿笔,顿笔时笔形角度与笔迹的行进角度一致。
判断当前点是否为回峰,若笔迹上当前点和前一点的角度差大于预设角度阈值(如:170°),则认为发生回锋,回锋时笔形角度与笔迹的行进角度一致。否则可以按如下过程计算笔形角度Angle:
Angle=Angleprev+Anglediff×TrunRatio
其中,TrunRatio为角度调整的比例,VEER为预设转折或转折处笔迹上的点数,Pprev为前一点的压力值,Angleprev为前一点处笔形角度,Anglediff为当前点与前一点的笔迹的行进角度的角度差。
步骤S102,根据在步骤S101中得到笔形角度,绘制当前笔形
本发明中生成笔迹时采用贝塞尔曲线插值法,插值示意图如图4所示,插值步骤如下:
步骤1,以触摸点(触摸笔滑过时触摸屏感应到的点)为控制点计算贝塞尔曲线轨迹,本实施例中,计算贝塞尔曲线轨迹的方式为:以当前点的前一点为控制点,从当前点的前二点向当前点与当前点的前一点的中点计算贝塞尔曲线轨迹。
步骤2,根据以下公式计算插值点:
其中,insertCount为两点间插值点个数,distance为沿贝塞尔曲线轨迹方向上距离已插值部分最近的一个触摸点到其前一点的距离,width为已插值部分绘制的最后一个笔形的宽度,number_per_shape为每个笔形需要绘制的点的个数。
如图4所示,P0、P1、P2、P3为连续的几个触摸点,P3为当前点,当P3触摸事件发生时,笔迹已经处理到IPL0位置(即已插值到IPL0点),此时,计算IPL0到P2间的插值点,根据最后显示笔形宽度width和预设的每个笔形需要绘制的点的个数number_per_shape,采用上述公式计算IPL0和P2两点间插值点个数,其中,distance为从IPL0到P2的曲线长度。
步骤3,判断insertCount是否小于1,若小于1,则增加已插值的贝塞尔曲线的长度,跳转到步骤2,否则执行步骤4。
步骤4,计算插值点的插值步长stepLength=distance/insertCount。
步骤5,按所述步长在所述贝塞尔曲线轨迹上长度为上述distance的部分上插入一个点。
步骤6,重复执行步骤2~步骤5,直到最后一个触摸点。由于上述计算贝塞尔曲线轨迹的特殊性(贝塞尔曲线绘制总是从当前点的前二点绘制到当前的前一点与当前点的中点,因此,该中点与当前点之间总是不能被处理),在重复过程中,当已插值的贝塞尔曲线到达最后一个触摸点与其前一触摸点的中点时,在最后一个触摸点到其与其前一触摸点的中点的直线轨迹上按所述步骤2~步骤6进行直线插值,即该中点与当前点之间用直线连接,在直线上按步骤2~步骤6进行插值。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (10)
1.一种电子毛笔书写笔形角度控制方法,其特征在于,包括步骤:
S1:当绘制笔迹到笔画的转折或弯折处时,获取触摸设备获得的或根据笔迹的行进角度计算得到的当前笔形的笔形角度;
S2:根据所述笔形角度绘制当前笔形。
2.如权利要求1所述的电子毛笔书写笔形角度控制方法,其特征在于,步骤S1中,触摸设备获得当前笔形的笔形角度的方式为:触摸设备的触摸屏检测触摸笔在屏幕平面上投影线与屏幕X轴的夹角,以所述夹角为当前笔形的笔形角度。
3.如权利要求1所述的电子毛笔书写笔形角度控制方法,其特征在于,步骤S1中,笔迹出现顿笔或回锋的情况时,笔形角度即为所述行进角度,否则按如下公式计算得到当前笔形的笔形角度Angle:
Angle=Angleprev+Anglediff×TrunRatio
其中,TrunRatio为角度调整的比例,VEER为预设转折或弯折处笔迹上的点数,Pprev为前一点的压力值,Angleprev为前一点处笔形角度,Anglediff为当前点与前一点的笔迹的行进角度的角度差。
4.如权利要求3所述的电子毛笔书写笔形角度控制方法,其特征在于,若笔迹上前一点与当前点的压力比值小于预设阈值,并且当前点压力大于预设压力值,则认为发生顿笔,顿笔时笔形角度与笔迹的行进角度一致。
5.如权利要求3所述的电子毛笔书写笔形角度控制方法,其特征在于,若笔迹上当前点和前一点的角度差大于预设角度阈值,则认为发生回锋,回锋时笔形角度与笔迹的行进角度一致。
6.如权利要求5所述的电子毛笔书写笔形角度控制方法,其特征在于,所述预设角度阈值为170°。
7.如权利要求1~6中任一项所述的电子毛笔书写笔形角度控制方法,其特征在于,所述笔迹的行进角度为笔迹上当前点与下一点的连线与X轴的夹角,所述笔迹为直线笔迹或曲线笔迹。
8.如权利要求1~6中任一项所述的电子毛笔书写笔形角度控制方法,其特征在于,所述笔迹的行进角度为曲线笔迹上当前点的切线与X轴的夹角。
9.如权利要求1~6中任一项所述的电子毛笔书写笔形角度控制方法,其特征在于,所述步骤S2中绘制笔形的方式为:
根据预设的最大笔宽W和当前触摸设备感应的压力确定所述笔形沿笔杆方向的大圆半径:
d2=W×pressure
根据如下公式确定笔尖方向的小圆半径:
d1=d2×k×pressure
在两个圆的同一侧分别绘制一条与两圆都相切的直线,以形成封闭的形状,在两圆的直径和两切线形成梯形,所述梯形的高度为:
h=H×pressure
其中,H表示预设的最大笔形长度,k为形状比例参数。
10.如权利要求9所述的电子毛笔书写笔形角度控制方法,其特征在于,所述k取值为0~1的浮点数,所述pressure量化到0~1浮点数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103844183A CN102521857B (zh) | 2011-11-28 | 2011-11-28 | 电子毛笔书写笔形角度控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103844183A CN102521857B (zh) | 2011-11-28 | 2011-11-28 | 电子毛笔书写笔形角度控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102521857A true CN102521857A (zh) | 2012-06-27 |
CN102521857B CN102521857B (zh) | 2013-10-23 |
Family
ID=46292759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103844183A Active CN102521857B (zh) | 2011-11-28 | 2011-11-28 | 电子毛笔书写笔形角度控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102521857B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103336590A (zh) * | 2013-07-17 | 2013-10-02 | 天脉聚源(北京)传媒科技有限公司 | 一种输入方法及装置 |
CN104423729A (zh) * | 2013-08-26 | 2015-03-18 | 夏普株式会社 | 触摸屏装置以及显示装置 |
CN104777944A (zh) * | 2014-01-13 | 2015-07-15 | 范钦雄 | 一种基于笔影检测模拟手绘板的方法 |
CN107240330A (zh) * | 2017-06-27 | 2017-10-10 | 北京新国人智慧科技股份有限公司 | 练字笔迹显示方法及系统、智能练字终端及智能练字系统 |
CN109284062A (zh) * | 2018-09-19 | 2019-01-29 | 北京集创北方科技股份有限公司 | 一种触摸数据处理方法、装置、终端和介质 |
CN110045906A (zh) * | 2018-01-17 | 2019-07-23 | 北京方正手迹数字技术有限公司 | 虚拟毛笔书写的显示方法、显示系统 |
WO2020113410A1 (zh) * | 2018-12-04 | 2020-06-11 | 深圳市柔宇科技有限公司 | 调节方法、电子显示装置和书写显示系统 |
CN111427497A (zh) * | 2019-05-17 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 笔迹显示方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226441A (zh) * | 2007-01-17 | 2008-07-23 | 北京书生国际信息技术有限公司 | 一种实现笔锋效果的手写输入方法 |
CN101373539A (zh) * | 2008-10-07 | 2009-02-25 | 广东威创视讯科技股份有限公司 | 毛笔笔迹的书写方法及书写装置 |
CN102214072A (zh) * | 2011-07-13 | 2011-10-12 | 广州市凡拓数码科技有限公司 | 一种as3实现中国书法电子体验的方法 |
-
2011
- 2011-11-28 CN CN2011103844183A patent/CN102521857B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226441A (zh) * | 2007-01-17 | 2008-07-23 | 北京书生国际信息技术有限公司 | 一种实现笔锋效果的手写输入方法 |
CN101373539A (zh) * | 2008-10-07 | 2009-02-25 | 广东威创视讯科技股份有限公司 | 毛笔笔迹的书写方法及书写装置 |
CN102214072A (zh) * | 2011-07-13 | 2011-10-12 | 广州市凡拓数码科技有限公司 | 一种as3实现中国书法电子体验的方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103336590B (zh) * | 2013-07-17 | 2016-12-28 | 天脉聚源(北京)传媒科技有限公司 | 一种输入方法及装置 |
CN103336590A (zh) * | 2013-07-17 | 2013-10-02 | 天脉聚源(北京)传媒科技有限公司 | 一种输入方法及装置 |
CN104423729A (zh) * | 2013-08-26 | 2015-03-18 | 夏普株式会社 | 触摸屏装置以及显示装置 |
CN104777944A (zh) * | 2014-01-13 | 2015-07-15 | 范钦雄 | 一种基于笔影检测模拟手绘板的方法 |
CN104777944B (zh) * | 2014-01-13 | 2018-06-22 | 范钦雄 | 一种基于笔影检测模拟手绘板的方法 |
CN107240330A (zh) * | 2017-06-27 | 2017-10-10 | 北京新国人智慧科技股份有限公司 | 练字笔迹显示方法及系统、智能练字终端及智能练字系统 |
CN110045906B (zh) * | 2018-01-17 | 2020-11-17 | 北京方正手迹数字技术有限公司 | 虚拟毛笔书写的显示方法、显示系统 |
CN110045906A (zh) * | 2018-01-17 | 2019-07-23 | 北京方正手迹数字技术有限公司 | 虚拟毛笔书写的显示方法、显示系统 |
CN109284062A (zh) * | 2018-09-19 | 2019-01-29 | 北京集创北方科技股份有限公司 | 一种触摸数据处理方法、装置、终端和介质 |
CN109284062B (zh) * | 2018-09-19 | 2021-09-07 | 北京集创北方科技股份有限公司 | 一种触摸数据处理方法、装置、终端和介质 |
WO2020113410A1 (zh) * | 2018-12-04 | 2020-06-11 | 深圳市柔宇科技有限公司 | 调节方法、电子显示装置和书写显示系统 |
CN113168252A (zh) * | 2018-12-04 | 2021-07-23 | 深圳市柔宇科技股份有限公司 | 调节方法、电子显示装置和书写显示系统 |
CN111427497A (zh) * | 2019-05-17 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 笔迹显示方法及装置 |
CN111427497B (zh) * | 2019-05-17 | 2021-08-24 | 杭州海康威视数字技术股份有限公司 | 笔迹显示方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102521857B (zh) | 2013-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521857B (zh) | 电子毛笔书写笔形角度控制方法 | |
CN102521858B (zh) | 电子毛笔书写笔迹生成方法 | |
CN102520849B (zh) | 电子毛笔书写方法及系统 | |
CN111381754B (zh) | 笔迹处理方法、设备及介质 | |
WO2012097729A1 (zh) | 一种手写原笔迹的笔锋实现方法及实现装置 | |
CN102156585B (zh) | 手写输入控制方法及具有鼠标操作功能的手写输入装置 | |
CN104309373B (zh) | 一种基于视觉的多功能绘图仪 | |
JP5706001B2 (ja) | 手書き原筆跡の実現方法、実現装置及び電子装置 | |
CN105551339A (zh) | 基于虚拟现实技术的书法练习系统及方法 | |
CN102496176B (zh) | 一种基于力信息的钢笔书法表达方法 | |
CN109564496B (zh) | 交互式显示叠覆系统及相关方法 | |
CN106445386A (zh) | 一种笔迹显示方法及装置 | |
CN106909246A (zh) | 一种电子书写擦除方法及智能触摸电视 | |
CN102236441A (zh) | 互动式三维影像显示系统及方法 | |
CN102521856B (zh) | 电子毛笔书写笔形变形方法 | |
CN105468208A (zh) | 一种电子白板轨迹跟踪方法和装置 | |
CN101673407A (zh) | 以平面图形表现地下管线三维图形的制图方法 | |
CN204160967U (zh) | 一种基于视觉的多功能绘图仪 | |
CN103345773A (zh) | 一种基于力反馈技术的毛笔建模方法 | |
CN102332173B (zh) | 一种基于向量代数的简明软笔效果生成方法 | |
CN204414906U (zh) | 一种数学教学板 | |
CN103927105A (zh) | 一种用户界面显示方法及电子设备 | |
CN202378556U (zh) | 抛物线定义教学演示尺 | |
CN205768210U (zh) | 高等数学绘图仪 | |
CN105224204A (zh) | 参数输入方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |