CN101373539A - 毛笔笔迹的书写方法及书写装置 - Google Patents
毛笔笔迹的书写方法及书写装置 Download PDFInfo
- Publication number
- CN101373539A CN101373539A CNA2008101989928A CN200810198992A CN101373539A CN 101373539 A CN101373539 A CN 101373539A CN A2008101989928 A CNA2008101989928 A CN A2008101989928A CN 200810198992 A CN200810198992 A CN 200810198992A CN 101373539 A CN101373539 A CN 101373539A
- Authority
- CN
- China
- Prior art keywords
- raindrop
- point
- sampled point
- writing
- current
- 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
本发明公开一种毛笔笔迹的书写方法及书写装置,其应用雨点模型,并据预设的毛笔模型的各初始参数值、所捕捉的采样点的位置坐标和压力值来确定采样点的雨点模型的各个参数,包括该雨点模型中各雨点的上、下半圆的直径、圆心距以及该雨点模型的旋转角度,并用该雨点模型填充采样点,由于是采用雨点模型来实现毛笔笔迹的书写,雨点的形状更近似于毛笔与纸面接触的实际几何模型,从而能够更加生动地模拟各种毛笔特效,此外,通过计算出的雨点模型中各雨点的上、下半圆直径、圆心距以及旋转角度,将上下半圆的两个端点相连接,填充连接后所形成的雨点模型,并将该雨点模型填充对应的采样点,所采用的雨点模型简单、连接方便,计算量较小,书写效率高。
Description
技术领域
本发明涉及计算机笔迹书写技术领域,特别涉及一种毛笔笔迹的书写方法及书写装置。
背景技术
毛笔书写是十分具有中国特色的一种文化,因此,如何在计算机上逼真地模拟出毛笔的书写效果成为很多人的研究方向,在现有技术中,计算机上模拟毛笔笔迹的书写通常具有两种方式,其一是通过纯软件的方式实现毛笔笔迹的书写,这种方式,所有的计算都在软件的代码中实现,计算量大,使得在书写过程中所占用的资源多、效率不高,此外,在实际的毛笔书写过程中,由于书写力度的不同,可能会有书写笔迹分叉等现象的出现,而这种通过纯软件的方式无法获得毛笔书写的压力值,无法实现对毛笔书写笔迹的完整模拟;其二是通过采用硬件的方式实现毛笔笔迹的模拟书写,其通过硬件捕获压感等数据,并将这些数据转换成毛笔的各个参数,以实现毛笔书写的效果,这种方式,由于是主要通过硬件方式来实现,不具有用软件来修正笔迹的灵活性,同时,该硬件设备专用于毛笔笔迹的书写,设备成本高。
第40卷第8期的《计算机研究与发展》(2003年8月出版)中公布的《基于经验的虚拟毛笔模型》一文,提出了一种基于经验的参数化物理模型方式,其通过只考虑笔刷与纸面接触部分的变化情况,省略了造型方面和计算每一根毛笔的笔毛变化的复杂情况,从而节省了大量计算,使得流畅运笔成为可能,这里的参数化物理模型包括:采用雨滴模型以及雨滴模型的变种来模拟笔刷与直面的接触区域、并通过笔刷基本参数、动作变化来驱动笔刷与纸面接触模型的转化,但是,在该篇论文中,并没有说明具体如何确定对应的雨滴模型、如何根据雨滴模型实现毛笔笔迹的书写,在实现上具有一定的困难。
发明内容
本发明的第一个目的在于提供一种毛笔笔迹的书写方法,其可以较为逼真地模拟现实毛笔笔迹书写的效果,且效率高。
为达到上述目的,本发明采用以下技术方案:
一种毛笔笔迹的书写方法,包括步骤:
初始化毛笔的初始墨量值、初始笔大小以及初始笔锋角度;
捕捉画笔移动路径上的采样点的位置坐标及压力值;
根据当前采样点的位置坐标、上一采样点的位置坐标,计算所述当前采样点的运笔速度以及笔锋的偏转角度;
根据所述初始墨量值、所述压力值、所述运笔速度计算所述当前采样点的墨量值,并根据该墨量值确定该当前采样点对应的雨点模型类别;
根据所述初始笔大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前采样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;
根据所述初始笔锋角度、所述偏转角度,确定所述当前采样点对应的雨点模型的旋转角度;
根据所述各雨点的上半圆直径、下半圆直径、上下半圆的圆心距、以及所述旋转角度,确定所述当前采样点对应的雨点模型,并用该雨点模型填充所述当前采样点。
根据上述本发明的方案,其主要根据预设的毛笔模型的各初始参数值、以及所捕捉的采样点的位置坐标和压力值来确定采样点的雨点模型的各个参数,包括该雨点模型对应的各个雨点的上半圆直径、下半圆直径、上下半圆圆心距以及该雨点模型的旋转角度,并用该雨点模型填充采样点,由于是采用雨点模型来实现毛笔笔迹的书写,雨点的形状更近似于毛笔与纸面接触的实际几何模型,从而能够更加生动地模拟各种毛笔特效,此外,其通过计算出的雨点模型中各雨点的上半圆直径、下半圆直径、上下半圆圆心距以及旋转角度,将上下半圆的两个端点相连接后,即可形成本发明方案所应用的雨点模型,填充连接后所形成的雨点模型,并将该雨点模型填充对应的采样点,重复计算填充所捕捉的采样点,即可实现毛笔笔记的书写,本发明方案中所采用的雨点模型简单、连接方便,计算量较小,书写效率高。
本发明的第二个目的在于提供一种毛笔笔迹的书写装置,其可以较为逼真地模拟显示毛笔笔迹书写的效果,且效率高。
为达到上述目的,本发明采用以下技术方案:
一种毛笔笔迹的书写装置,包括:
初始化模块,用于初始化毛笔的初始墨量值、初始笔大小以及初始笔锋角度;
与初始化模块连接的采样点捕捉模块,用于捕捉画笔移动路径上的采样点的位置坐标及压力值;
与所述采样点捕捉模块连接的偏转角度确定模块,用于根据当前采样点的位置坐标、上一采样点的位置坐标,计算所述当前采样点的笔锋的偏转角度;
与所述采样点捕捉模块连接的运笔速度确定模块,用于根据所述当前采样点的位置坐标、所述上一采样点的位置坐标,计算所述当前采样点的运笔速度;
与所述初始化模块、所述采样点捕捉模块、所述偏转角度确定模块、所述运笔速度确定模块连接的雨点模型参数确定模块,用于根据所述初始墨量值、所述压力值、所述运笔速度计算所述当前采样点的墨量值,并根据所述墨量值确定该当前采样点对应的雨点模型类别,并根据所述初始笔大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前采样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;以及根据所述初始笔锋角度、所述偏转角度,确定所述当前采样点对应的雨点模型的旋转角度;
与所述雨点模型参数确定模块连接的填充模块,用于根据上半圆直径、所述下半圆直径、所述上下半圆的圆心距、所述旋转角度,确定所述当前采样点对应的雨点模型,并用该雨点模型填充所述当前采样点。
根据上述本发明的方案,其主要根据预设的毛笔模型的各初始参数值、以及所捕捉的采样点的位置坐标和压力值来确定采样点的雨点模型的各个参数,包括该雨点模型对应的各个雨点的上半圆直径、下半圆直径、上下半圆圆心距以及该雨点模型的旋转角度,并用该雨点模型填充采样点,由于是采用雨点模型来实现毛笔笔迹的书写,雨点的形状更近似于毛笔与纸面接触的实际几何模型,从而能够更加生动地模拟各种毛笔特效,此外,其通过计算出的雨点模型中各雨点的上半圆直径、下半圆直径、上下半圆圆心距以及旋转角度,将上下半圆的两个端点相连接后,即可形成本发明所应用的雨点模型,填充连接后所形成的雨点模型,并将该雨点模型填充对应的采样点,重复计算并填充所捕捉的采样点,即可实现毛笔笔迹的书写,本发明方案中所采用的雨点模型简单、连接方便,计算量较小,书写效率高。
附图说明
图1是本发明的一个雨点的实现过程示意图;
图2是本发明的各雨点模型的转换关系示意图;
图3是本发明方法实施例一的流程示意图;
图4是本发明方法实施例二的流程示意图;
图5是根据本发明在威创公司的IDB硬件平台上的书写效果示意图;
图6是根据本发明由于墨量减少导致毛笔书写笔迹分叉的效果示意图;
图7是根据本发明由于书写速度快导致的笔划大小变化的效果示意图;
图8是根据本发明由于书写力度大导致毛笔书写笔迹的分叉程度减轻的效果示意图;
图9是本发明装置实施例一的结构示意图;
图10是本发明装置实施例二的结构示意图。
具体实施方式
在本发明的毛笔笔迹的书写方法和书写装置中,所书写出来的毛笔笔迹的基本元素是雨点模型,雨点模型中的基本元素是雨点,参见图1所示,是本发明的一个雨点的实现过程示意图,其是先绘制出上、下两个半圆,然后用线条分别将这两个半圆位于同一侧的端点进行连接,形成一个封闭的图形,最后对该封闭的图形进行填充,从而得到我们所需要的雨点效果。
在毛笔笔迹的书写过程中,由于毛笔墨量的减少,可能会导致书写出来的毛笔笔迹出现分叉的现象,因此,在本发明方案中,用填充单位来表示毛笔,毛笔由填充单位组成,每个填充单位由三个横向排列的雨点组成,并通过控制这三个雨点的大小比例来实现毛笔分叉过程中的效果。参加图2所示,是本发明的各雨点模型的转换关系示意图,其定义了有三种模型:模型一、模型二、模型三,其中,在毛笔的墨量充足的情况下,所对应的雨点模型为模型一,此时,填充单位的三个雨点中,只需显示中间的那个雨点;当毛笔的墨量减少到一定程度时,毛笔会出现分叉的现象,此时开始显示填充单位两侧的雨点,且位于两侧的这两个雨点所占的比例较小;当毛笔的墨量严重不足时,所书写的毛笔笔迹的分叉现象也会比较严重,此时,位于两侧的两个雨点所占的比例较大,填充单位由三个近似的雨点组成。
为了能够使模拟出来的填充单位更接近于真实情况,可根据实际毛笔书写经验设定第一预设墨量值、第二预设墨量值,该第一预设墨量值、第二预设墨量值跟毛笔的初始墨量值有关,对于不同的初始墨量值,所设定的第一预设墨量值、第二预设墨量值有所不同。
根据初始墨量值及预先设定的第一预设墨量值、第二预设墨量值:
如果当前采样点的墨量值大于或者等于第一预设墨量值,则判定该当前采样点对应的雨点模型为第一类雨点模型,即上述模型一;
如果当前采样点的墨量值小于所述第一预设墨量值、且大于或者等于第二预设墨量值,则判定该当前采样点对应的雨点模型为第二类雨点模型,即上述模型二;
如果当前采样点的墨量值小于所述第二预设墨量值,则判定该当前采样点对应的雨点模型为第三类雨点模型,即上述模型三。
此外,根据实际毛笔书写的情况,毛笔笔头具有不同的大小规格,用不同大小的毛笔笔头所书写的毛笔笔迹,粗细程度有所不同,表现在本发明中的书写笔迹上,则是不同大小的毛笔笔头,其所使用的填充单位的大小有所不同,从而导致所书写出来的毛笔笔迹的粗细有所不同。
据此,本发明预先设置一个参照值,该参照值确定了一个预设标准大小的毛笔,以及所对应的填充单位的上半圆直径、下半圆直径、上下半圆圆心距,当选用不同大小的毛笔时,根据该毛笔大小与该参照值的预设标准大小的比例,确定该毛笔所对应的上半圆直径、下半圆直径、上下半圆圆心距,且跟预设的参照值呈正比例关系。
由于毛笔笔迹在分叉过程中,可以具有不同的分叉程度,出于对计算简便的考虑,本发明定义了上述三种雨点模型,同时,还可以定义出各雨点模型中,所包含的各个雨点与填充单位的比例关系,根据雨点模型的类别的不同、各雨点在雨点模型中所处位置的不同(左侧、右侧、中间),比例大小有所不同,从而,在知晓了填充单位的大小、以及雨点模型类别后,根据该预设的比例关系,即可对该雨点模型进行确定。
根据上述预设的确立关系,以下针对本发明的各个具体实施例进行详细描述。在以下的描述中,首先针对本发明的毛笔笔迹的书写方法的具体实施例进行详细描述,其次再对本发明的毛笔笔迹的书写装置的具体实施例进行具体描述。
实施例一:
参见图3所示,是本发明的毛笔笔迹的书写方法实施例一的流程示意图,其具体包括步骤:
步骤S101:该步骤是初始化步骤,以初始化毛笔的初始墨量值、初始笔大小、初始笔锋角度,进入步骤S102,其中,初始墨量值、初始笔大小可以由用户自由选择,初始笔锋角度可以根据书写时的前两个采样点具体确定;
步骤S102:捕捉毛笔移动路径上的采样点的位置坐标及压力值,进入步骤S103;
步骤S103:根据当前采样点的位置坐标、上一采样点的位置坐标,计算当前采样点的运笔速度、当前采样点的笔锋的偏转角度,进入步骤S104;
步骤S104:根据初始墨量值、压力值、以及当前采样点的运笔速度计算当前采样点的墨量值,并根据该墨量值判断该当前采样点对应的雨点模型类型;根据初始笔大小、预设参照值、预设的该雨点模型中各雨点与填充单位的比例关系,确定该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距;并根据初始笔锋角度、笔锋的偏转角度,确定当前采样点对应的雨点模型的旋转角度,进入步骤S105;
步骤S105:根据上述雨点模型中个雨点的上半圆直径、下半圆直径、上下半圆圆心距、以及旋转角度,确定该雨点模型,并用该雨点模型填充该当前采样点。
在一次的运笔过程中,可重复执行上述步骤S102至步骤S105,实现该次运笔过程中的笔迹书写,在进行下一次运笔时,再执行上述步骤S101至步骤S105,即可实现持续的毛笔笔迹的书写。
其中,在初始化毛笔的初始笔锋角度时,可以是根据一次运笔过程中、起笔时的两个采样点的位置坐标来确定,通过计算这两个初始采样点所形成的直线的斜率,可计算出该直线所形成的直线的角度,该角度即为初始笔锋角度。
在计算采样点的运笔速度时,可根据当前采样点的位置坐标、上一采样点的位置坐标来进行计算,由于只采用两个采样点来进行计算可能会导致所计算出来的运笔速度的变化过大,因此,也可以是以与当前采样点相邻的多个采样点的位置坐标为基础,计算出这多个采样点的平均速度,并将该平均速度作为该当前采样点的运笔速度,使得运笔速度的变化不至于太剧烈,比较趋于平缓,根据捕捉采样点的频率的不同,可以采用不同个数的临近采样点,通常情况下,可统计与当前采样点临近的k个采样点的平均速度,其中k大于等于2且小于等于10。
在计算采样点的运笔速度时,可以是根据预定个数的临近采样点的路程距离来计算,例如,通过统计与当前采样点临近的k(k值为2到10之间)个采样点的平均速度作为当前采样点的运笔速度时,计算公式可以是:
Vn=(Ln-(k-1)+Ln-(k-2)+Ln-(k-3)+...Ln-1+Ln)/k
其中,k的值为2到10之间的一个值,所述Vn表示所述当前采样点的运笔速度,所述Ln-(k-1)表示在前的第k-1个临近采样点与在前的第k个临近采样点的路程距离,所述Ln-(k-2)表示在前的第k-2个临近采样点与在前的第k-1个临近采样点的路程距离,所述Ln-(k-3)表示在前的第k-3个临近采样点与在前的第k-2个临近采样点的路程距离,所述Ln-1表示上一个临近采样点与在前的第二个临近采样点的路程距离,所述Ln表示当前采样点与上一个临近采样点的路程距离;
在计算当前采样点的墨量值时,可根据初始墨量值、压力值、以及当前采样点的运笔速度进行计算,由于墨量值的持续变化,在表现方式上,该采样点的墨量值跟上一个临近采样点的墨量值相关,因此,可通过上一个临近采样点的墨量值来确定当前采样点的墨量值,并可通过下述公式进行计算:
k_hairy=A*(k1_hairy-1)+B*Press+C*Vn
其中,k_hairy表示当前采样点的墨量值,k1_hairy表示上一采样点的墨量值,Press表示该当前采样点的压力值,Vn表示该当前采样点的运笔速度,A、B、C分别代表上一个临近采样点的墨量值、当前采样点的压力值、当前采样点的运笔速度在确定该当前采样点的墨量值时所占用的比例系数,根据初始墨量值、所应用设备的硬件敏感度的不同,A、B、C可以具有不同的取值,在本发明方案中,根据预设墨量值,预先设定对应于该预设墨量值的A、B、C,在具体计算时,根据所选用的预设墨量值的多少,确定所使用的A、B、C的值。通过实践证明,当A在0.2到0.7之间、B在0.01到0.06之间、C在0.01到0.07之间时可以获得较好的效果。
此外,在根据初始笔大小、预设参照值、预设的该雨点模型中各雨点与填充单位的比例关系,确定该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距时,具体的过程可以是:
根据初始笔大小、预设参照值,通过计算初始笔大小与预设参照值的标准毛笔大小的比例关系,可确定该当前采样点所对应的填充单位的大小,并计算出该填充单位的上半圆直径、下半圆直径、上下半圆圆心距;
随后,根据所确定的雨点模型类别、预设的该雨点模型中各雨点与填充单位的比例关系、以及上述所确定的填充单位的各参数,按照该比例关系计算出该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距。
在根据墨量值判断当前采样点对应的雨点模型类型时,可以通过所选取的初始墨量值、采样上述方式予以确定,在此不予赘述。
在根据初始笔锋角度、笔锋的偏转角度,确定当前采样点对应的雨点模型的旋转角度时,可以有各种不同的实现方式,具体包括:
其一:通过计算当前采样点与上一个采样点所形成直线的角度,并直接将该角度作为该当前采样点对应的雨点模型的旋转角度;
其二:通过计算当前采样点与上一临近采样点所形成的直线的角度(即当前采样点的笔锋偏转角度)、以及上一个临近采样点与之前第二个临近采样点所形成的直线的角度(即上一个采样点的笔锋偏转角度),并计算这两个角度之间的差值:
如果该差值过小,即如果该差值小于第一预设角度值,由于差值小,重复计算可能会造成计算上的复杂性,影响效率,因此,可不对该雨点模型在上一次旋转的基础上进行旋转,即将上一个采样点的雨点模型的旋转角度作为该当前采样点的旋转角度实现对当前采样点的填充;
如果该差值过小,即如果该差值大于第二预设角度值,由于差值过大,若直接以该当前采样点的笔锋偏转角度进行填充可能会使所书写出来的笔迹出现变化角度过大、笔迹变化过于突兀的现象,因此,此时可对该当前采样点的旋转角度进行修正,以使毛笔笔迹不会过于突兀:
如果该差值介于上述第一预设角度值、第二预设角度值之间,即大于或者等于第一预设角度值、且小于或者等于第二预设角度值,则可以直接以该当前采样点的旋转角度作为其对应的雨点模型的旋转角度,在具体操作上,也可以是在上一个采样点的雨点模型的旋转角度的基础上,旋转该差值角度;
其三:由于在初始书写时,毛笔笔迹的书写不规则,可能会出现过于突兀的现象,因此,可预先设定一个预设采样点门限值:
如果当前采样点在当前运笔过程中所处位置位于该预设采样点门限值范围内,例如,假设所设定的预设采样点门限值为5,当前采样点为第3个采样点,则通过将该当前采样点的偏转角度与上一个采样点的偏转角度进行比较,如果二者的差值大于了预设角度门限值,则对该当前采样点的旋转角度进行修正,将上一采样点的旋转角度增加预定角度值后作为当前采样点的旋转角度,该预定角度值可以根据实际情况进行设定,否则,即二者的差值不超过预设角度门限值,则直接将该当前采样点的偏转角度作为该当前采样点的旋转角度;或者也可以是,在该预设采样点门限值范围内的各个采样点均根据上述预定角度值进行修正;
如果当前采样点在当前运笔过程中所处位置位于该预设采样点门限值范围外,例如,假设所设定的采样点门限值为5,当前采样点为第8个采样点等,如果毛笔的书写速度不是很快,在具体的判断方式上,即为当前采样点与上一个采样点之间的路程距离没有超过第一预设距离门限值时,可以直接将上一个采样点的旋转角度作为该当前采样点的旋转角度,如果超过上述第一预设距离门限值,则通过上述预设角度值进行修正。
此外,在采用本发明的雨点模型填充当前采样点时,由于雨点模型是上端细、下端宽的结构,因此,在只采用一个雨点模型来填充当前采样点的情况下,如果该雨点模型对应的填充单元不够大,可能会导致书写笔迹的上端出现锯齿现象,为了避免出现这种情况,可以用多个大小等同、且相互横向排列的雨点模型填充当前采样点,即毛笔是由多个大小等同的填充单位组成,优选为2到6个。
实施例二:
参见图4所示,是本发明毛笔笔迹的书写方法实施例二的流程示意图,在本实施例中,增加了添加补充取样点的步骤,这是因为,在书写速度过快的情况下,所书写出来的毛笔笔迹会有一个从大变小的过程,本实施例中的方案同时对这种情况进行了处理。
在本实施例中,具体包括步骤:
步骤S201:初始化毛笔的初始墨量值、初始笔大小、初始笔锋角度,进入步骤S202;
步骤S202:捕捉毛笔移动路径上的采样点的位置坐标及压力值,进入步骤S203;
步骤S203:根据当前采样点的位置坐标、上一采样点的位置坐标,计算当前采样点与上一采样点的路程距离,进入步骤S204;
步骤S204:判断该路程距离是否大于第二预设距离门限值,若是,则进入步骤S205,若否,则进入步骤S209;
步骤S205:根据预设方式,在当前采样点与上一采样点之间增加补充取样点,进入步骤S206;
步骤S206:计算补充取样点的笔划大小、运笔速度、笔锋的偏转角度,进入步骤S207;
步骤S207:根据初始墨量值、压力值、补充取样点的运笔速度,计算当前补充取样点的墨量值,并根据该当前补充取样点的墨量值,确定该当前补充取样点对应的雨点模型;并根据补充取样点的笔划大小、预设参照值、预设的雨点模型中各雨点与填充单位的比例关系,确定该当前补充取样点对应的雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距,并根据初始笔锋角度、当前补充取样点的笔锋的偏转角度,确定该补充取样点对应的雨点模型的旋转角度,进入步骤S208;
步骤S208:根据上述补充取样点对应的雨点模型中各雨点的上半圆直径、下半圆直径、上下半圆圆心距、以及该雨点模型的旋转角度,确定该补充取样点对应的雨点模型,并用该雨点模型填充所述当前补充取样点;
步骤S209:根据当前采样点的位置坐标、上一采样点的位置坐标,计算当前采样点的运笔速度、当前采样点的笔锋的偏转角度,进入步骤S210;
步骤S210:根据初始墨量值、压力值、以及当前采样点的运笔速度计算当前采样点的墨量值,并根据该墨量值判断该当前采样点对应的雨点模型类型;根据初始笔大小、预设参照值、预设的该雨点模型中各雨点与填充单位的比例关系,确定该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距;并根据初始笔锋角度、笔锋的偏转角度,确定当前采样点对应的雨点模型的旋转角度,进入步骤S211;
步骤S211:根据上述雨点模型中个雨点的上半圆直径、下半圆直径、上下半圆圆心距、以及旋转角度,确定该雨点模型,并用该雨点模型填充该当前采样点。
其中,在当前采样点与上一采样点之间增加补充取样点时,具体可以是在该当前采样点与所述上一采样点的连接路径上,每隔预定距离e增加一个补充取样点。
由于当前采样点与上一采样点之间的路程距离超出第二预设距离门限值的程度的不同,采用同一个预定距离e可能会导致所增加的补充取样点过于紧密或者过于稀疏的情况,以至于影响毛笔书写的整体效果,为了避免这种情况的发生,可根据当前采样点与上一采样点之间的路程距离超出预设距离门限值的程度,确定不同的预定距离e,具体可表现为,若当前采样点与上一采样点之间的距离处于其中的一个预定范围时,对应一个预定距离e值,当处于另一个预定范围时,对应一个预设距离e值,可以设置有多个预定范围,分别对应多个预定距离e值。
设定当前采样点与上一采样点的距离为Ln,在当前采样点与上一采样点之间所增加的补充取样点的个数共有n个,其中n为整数,并假设已根据该Ln所处范围选取了适当的预定距离e值,则在当前采样点与上一采样点之间所增加的补充取样点的个数n为Ln除以e之后所得结果的整数值,即所增加的补充取样点的个数为n=[Ln/e]个。
此外,在增加了补充取样点,计算补充取样点的笔划大小时,可以根据初始笔大小、所增加的补充取样点的总个数以及当前补充取样点所处的位置顺序确定该当前补充取样点的笔划大小,具体可表现为通过初始笔大小、在当前采样点与上一采样点之间所增加的采样点的总个数、该当前补充取样点是所增加的第几个补充取样点来进行确定。具体应用时,可通过下述公式进行确定:
m_Pensize=Pensize-(Pensize/n)*m;
其中,Pensize表示所述初始笔大小,m_Pensize表示当前补充取样点的笔划大小,n表示在当前采样点与上一采样点之间所增加的补充取样点的总个数,m表示该当前补充取样点是当前采样点与上一采样点之间的连接路径上的第m个补充取样点。
在计算补充取样点的运笔速度时,可根据当前补充取样点的位置坐标、上一个补充取样点的位置坐标来进行计算,由于只采用两个点计算运笔速度可能会导致所计算出来的运笔速度的变化过大,因此,可以是以与当前补充采样点相邻、在前的多个补充取样点(当在前的补充取样点不足时,使用在前的、与其临近的采样点)的位置坐标为基础,计算出这多个补充取样点的平均速度,并将该平均速度作为该当前补充取样点的运笔速度,使得运笔速度的变化不至于太剧烈,比较趋于平缓,可以采用不同个数的临近补充取样点,通常情况,可统计与当前补充取样点临近的k(k为2到10)个补充取样点(或者采样点)的平均速度。
在计算补充取样点的运笔速度时,可以是根据前后预定个数的补充取样点的路程距离来计算,例如,通过统计与当前补充取样点临近的k(k为2到10之间)个补充取样点的平均速度作为当前补充取样点的运笔速度时,计算公式可以是:
Vn=(Ln-(k-1)+Ln-(k-2)+Ln-(k-3)+...Ln-1+Ln)/k
其中K的值为2到10之间的一个值。
所述Vn表示所述当前补充取样点的运笔速度,所述Ln-(k-1)表示在前的第k-1个临近补充取样点与在前的第k个临近补充取样点的路程距离,所述Ln-(k-2)表示在前的第k-2个临近补充取样点与在前的第k-1个临近补充取样点的路程距离,所述Ln-(k-3)表示在前的第k-3个临近补充取样点与在前的第k-2个临近补充取样点的路程距离,所述Ln-1表示上一个临近补充取样点与在前的第二个临近补充取样点的路程距离,所述Ln表示当前补充取样点与上一个临近补充取样点的路程距离,其中,此处所涉及的各临近补充取样点,在没有补充取样点的情况下则为相应的采样点。
在计算补充取样点的墨量值时,可以根据初始墨量值、压力值、以及当前补充取样点的运笔速度来进行计算,由于墨量值的持续变化,在具体表现方式上,则表现为与上一个临近的补充取样点(在没有补充取样点的情况下为采样点)的墨量值相关,具体可通过下述计算公式进行计算:
k_hairy=A*(k1_hairy-1)+B*Press+C*Vn
其中,k_hairy表示当前补充取样点的墨量值,k1_hairy表示上一补充取样点(在没有补充取样点的情况下为采样点)的墨量值,Press表示该当前补充取样点的压力值,Vn表示该当前补充取样点的运笔速度,A、B、C分别代表上一个临近补充取样点的墨量值、当前补充取样点的压力值、当前补充取样点的运笔速度在确定该当前补充取样点的墨量值时所占用的比例系数,根据初始墨量值、所应用设备的硬件敏感度的不同,A、B、C可以具有不同的取值,在本发明方案中,根据预设墨量值,预先设定对应于该预设墨量值的A、B、C,在具体计算时,根据所选用的预设墨量值的多少,确定所使用的A、B、C的值。通过实践证明,当A在0.2到0.7之间、B在0.01到0.06之间、C在0.01到0.07之间时可以获得较好的效果。
此外,在根据补充取样点的笔划大小、预设参照值、预设的该雨点模型中各雨点与填充单位的比例关系,确定该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距时,具体的过程可以是:
根据上面所计算出的补充取样点的笔划大小、预设参照值,通过计算补充取样点的笔划大小与预设参照值的标准毛笔大小的比例关系,可确定该当前补充取样点所对应的填充单位的大小,并计算出该填充单位的上半圆直径、下半圆直径、上下半圆圆心距;
随后,根据所确定的雨点模型类别、以及预设的该雨点模型中各雨点与填充单位的比例关系,按照该比例关系计算出该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距。
在根据墨量值判断当前采样点对应的雨点模型类型时,可以通过所选取的初始墨量值、采样上述方式予以确定,在此不予赘述。
在根据初始笔锋角度、笔锋的偏转角度,确定当前补充取样点对应的雨点模型的旋转角度时,可以有不同的实现方式,具体可以包括:
其一:通过计算当前补充取样点与上一个补充取样点所形成直线的角度,并直接将该角度作为该当前采样点对应的雨点模型的旋转角度,由于在增加补充取样点时,通常是在当前采样点与上一个采样点之间的直线路径上进行添加,因此,任意一个补充取样点与其前一个补充取样点所形成的角度必然相同,因此,此时也可以是计算出其中第一个补充取样点的旋转角度后,可以不用计算后面的各个补充取样点的旋转角度,将该第一个补充取样点的旋转角度直接作为各个补充取样点的旋转角度即可;
其二:通过计算当前补充取样点与上一临近补充取样点所形成的直线的角度(即当前补充取样点的笔锋偏转角度)、以及上一个临近的补充取样点与在前的第二个补充取样点所形成的直线的角度(即上一个补充取样点的笔锋偏转角度),并计算这两个角度之间的差值:
如果该差值过小,即如果该差值小于第一预设角度值,由于差值小,重复计算可能会造成计算上的复杂性,影响效率,因此,可不对该雨点模型在上一次旋转的基础上进行旋转,即将上一个补充取样点的雨点模型的旋转角度作为该当前补充取样点的旋转角度实现对当前补充取样点的填充;
如果该差值过小,即如果该差值大于第二预设角度值,由于差值过大,若直接以该当前补充取样点的笔锋偏转角度进行填充可能会使所书写出来的笔迹出现变化角度过大、笔迹变化过于突兀的现象,因此,此时可对该当前补充取样点的旋转角度进行修正,,以使毛笔笔迹不会过于突兀:
如果该差值介于上述第一预设角度值、第二预设角度值之间,即大于或者等于第一预设角度值、且小于或者等于第二预设角度值,则可以直接以该当前补充取样点的旋转角度作为其对应的雨点模型的旋转角度,在具体操作上,也可以是在上一个补充取样点的雨点模型的旋转角度的基础上,旋转该差值角度;
其中,由于在当前采样点与上一采样点之间增加补充取样点时,通常是将补充取样点增加在当前采样点与上一采样点的直线路径上,这也意味着,任意两个补充取样点所形成的直线的角度都是相同的,即具有相同的变化趋势,因此,在这种情况下,可以只需根据上述方式计算出第一个补充取样点与上一个采样点的旋转角度,对于其后的其他补充取样点,可以不用计算其旋转角度,直接将该第一个补充取样点的旋转角度作为后续的各个补充取样点的旋转角度即可,一直到需要计算当前采样点的下一个采样点的旋转角度,其中上述第一预设角度值小于第二预设角度值;
其三:由于在增加补充取样点时,所增加的第一个补充取样点与上一个采样点所形成的直线的角度、与上一个采样点与在前的第二个采样点所形成的角度可能会有偏差,因此,可首先对这两个角度的差值进行判定,如果差值超过了预设角度门限值,则对该当前补充取样点的旋转角度进行修正,具体可以是将上一采样点的旋转角度增加预定角度值后作为当前第一个补充取样点的旋转角度,该预定角度值可以根据实际情况进行设定,若果差值没有超过预设角度门限值,对于该第一个补充取样点而言,则可以不用进行修正,可以直接将其偏转角度作为它的旋转角度,;
而对于在后的各个补充取样点,由于在添加补充取样点时通常是在当前采样点与上一采样点的直线路径上进行添加,这也意味着,任意两个补充取样点所形成的直线角度均相同,因此,可以直接将上一个补充取样点的旋转角度作为该当前补充取样点的旋转角度;或者,如果是采用其他的曲线方式在当前采样点与上一采样点之间增加补充取样点,也可以采用其他的方式判断是否需要对当前补充取样点的旋转角度进行修正,例如,可通过如上所述的方式等等。
此外,在采用本发明的雨点模型填充当前补充取样点时,由于雨点模型是上端细、下端宽的结构,因此,在只采用一个雨点模型来填充当前补充取样点的情况下,如果该填充单元不够大,可能会导致书写笔迹的上端出现锯齿现象,为了避免出现这种情况,可以用多个大小等同、且相互横向排列的雨点模型填充当前补充取样点,及毛笔是由多个大小等同的填充单位组成,优选为2到6个。
本实施例中的其他技术特征与上述实施例一中的相同,在此不予赘述。
其中,上述第一预设距离门限值与第二预设距离门限值可以相同,也可以不相同。
参见图5所示,是根据本发明方法在威创公司的IDB硬件平台上的书写效果示意图,如图所示,本发明方法较好地模拟出了毛笔书写的效果。
参见图6所示,是根据本发明方法在墨量减少导致毛笔书写笔迹分叉时的效果示意图。在书写过程中,由于墨量值的慢慢减少,毛笔的书写效果也会从饱满变为干涩,从而导致所书写出来的毛笔笔迹出现分叉现象,在墨量值严重不足的情况下,这种分叉现象也更为明显。
参见图7所示,是根据本发明方法在书写速度过快而导致笔划大小变化时的效果示意图,由于书写速度快,笔划大小相应地有一个由大变小的过程,以使得所书写的笔划比较自然,不会过于突兀。
参见图8所示,是根据本发明在书写力度过大导致毛笔书写笔迹的分叉程度减轻时的效果示意图,根据实际毛笔书写的情况,在毛笔的书写笔迹出现分叉的情况下,如果加大书写毛笔的力度,则可以减轻分叉效果,如图8所示,在本发明很好地模拟了这种效果
以下针对本发明的毛笔笔迹的书写装置进行详细描述。
实施例一:
参见图9所示,是本发明毛笔笔迹的书写装置实施例一的结构示意图,其具体包括:
初始化模块301,用于初始化毛笔的初始墨量值、初始笔大小以及初始笔锋角度,其中,初始墨量值、初始笔大小可以由用户自由选择,初始笔锋角度可以根据书写时采样点捕捉模块302所捕捉的最开始的前两个采样点具体确定;
与初始化模块301连接的采样点捕捉模块302,用于捕捉画笔移动路径上的采样点的位置坐标及压力值;
与所述采样点捕捉模块302连接的偏转角度确定模块303,用于根据当前采样点的位置坐标、上一采样点的位置坐标,计算所述当前采样点的笔锋的偏转角度;
与所述采样点捕捉模块302连接的运笔速度确定模块304,用于根据当前采样点的位置坐标、上一采样点的位置坐标,计算该当前采样点的运笔速度;
与所述初始化模块301、所述采样点捕捉模块302、所述偏转角度确定模块303、所述运笔速度确定模块304连接的雨点模型参数确定模块305,用于根据所述初始墨量值、所述压力值、所述运笔速度计算该当前采样点的墨量值,并根据所述墨量值确定该当前采样点对应的雨点模型类别,并根据所述初始笔大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前采样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;以及根据所述初始笔锋角度、所述偏转角度,确定所述当前采样点对应的雨点模型的旋转角度;
与所述雨点模型参数判定模块305连接的填充模块306,用于根据所述上半圆直径、所述下半圆直径、所述上下半圆的圆心距、所述旋转角度,确定所述当前采样点对应的雨点模型,并用该雨点模型填充所述当前采样点。
根据上述本发明的装置,其根据预设的毛笔模型的各初始参数值、以及所捕捉的采样点的位置坐标和压力值来确定采样点的雨点模型的各个参数,包括该雨点模型对应的各个雨点的上半圆直径、下半圆直径、上下半圆圆心距以及该雨点模型的旋转角度,并用该雨点模型填充采样点,由于是采用雨点模型来实现毛笔笔迹的书写,雨点的形状更近似于毛笔与纸面接触的实际几何模型,从而能够更加生动地模拟各种毛笔特效,此外,其通过计算出的雨点模型中各雨点的上半圆直径、下半圆直径、上下半圆圆心距以及旋转角度,将上下半圆的两个端点相连接,形成本发明中所应用的雨点模型,随后填充连接后所形成的雨点模型,并将该雨点模型填充对应的采样点,本发明方案中所采用的雨点模型简单、连接方便,计算量较小,书写效率高。
初始化模块301初始化毛笔的初始笔锋角度时,可以是根据一次运笔过程中起笔时、采样点捕捉模块302所捕捉的最开始的两个采样点的位置坐标来确定,通过计算这两个初始采样点所形成的直线的斜率,可计算出该直线所形成的直线的角度,该角度即为初始笔锋角度。
运笔速度确定模块304计算采样点的运笔速度的具体方式可与上述方法中的相同,在此不予赘述。
雨点模型参数确定模块305计算当前采样点的墨量值、确定该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距、以及确定当前采样点对应的雨点模型的旋转角度的具体方式可与上述方法实施例中所述相同,在此不予赘述。
填充模块306在采用由雨点模块参数模块的各参数所确定的雨点模型填充当前采样点时,由于雨点模型是上端细、下端宽的结构,因此,在只采用一个雨点模型来填充当前采样点的情况下,如果该雨点模型对应的填充单元不够大,可能会导致书写笔迹的上端出现锯齿现象,为了避免出现这种情况,可以用多个大小等同的雨点模型填充当前采样点,即所使用的毛笔由填充单位组成,优选为3个。
实施例二:
参见图10所示,是本发明的毛笔笔迹的书写装置的实施例二的结构示意图,在本实施例中,相对于上述实施例一的不同之处主要在于,本实施例中的方案增加了在当前采样点与上一采样点之间增加补充取样点的方案。这是因为,在毛笔的书写过程中,在书写而速度过快的情况下,所书写出来的毛笔笔迹的大小会有一个从大到小的变化过程,本实施例中的方案对这种情况进行了处理。
如图10所示,在本实施例中,与上述实施例一的不同之处主要在于,本发明的毛笔笔迹的书写装置还包括:
与所述采样点捕捉模块连接的路程距离确定模块307,用于根据所述当前采样点的位置坐标、所述上一采样点的位置坐标,计算所述当前采样点与上一采样点之间的路程距离;
与所述路程距离确定模块307、所述运笔速度确定模块304连接的最短距离判定模块308,用于判断所述路程距离是否大于第二预设距离门限值;
与所述最短距离判定模块308、所述偏转角度确定模块303、所述运笔速度确定模块304连接的取样点补充模块309,用于当所述最短距离判定模块308的判断结果为是时,根据预设方式在所述当前采样点与上一采样点之间增加补充取样点;
与所述取样点补充模块309连接的补充点笔划大小确定模块310,用于计算所述补充取样点的笔划大小;
其中,所述运笔速度确定模块304,还用于计算所述补充取样点的运笔速度;
所述偏转角度确定模块303,还用于计算所述补充取样点的偏转角度;
所述雨点模型参数确定模块305,还跟所述补充点笔划大小确定模块310连接,还用于根据所述初始墨量值、所述压力值、所述运笔速度计算所述当前补充取样点的墨量值,并根据所述当前补充取样点的墨量值确定该当前补充取样点对应的雨点模型类别,并根据所述当前补充取样点的笔划大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前补充取样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;以及根据所述初始笔锋角度、所述偏转角度,确定所述当前补充取样点对应的雨点模型的旋转角度。
根据本实施例中的方案,当最短距离判定模块308的判断结果为当前采样点与上一采样点之间的路程距离大于第二预设距离门限值时,则需要通过取样点补充模块309在该当前采样点与上一采样点之间增加补充取样点,并由运笔速度确定模块304计算出各补充取样点的运笔速度、由偏转角度确定模块303计算出补充取样点的偏转角度、由补充点笔划大小确定模块310计算出补充取样点的笔划大小,并由雨点模型参数模块305计算出各补充取样点对应的雨点模型的各个参数;
如果最短距离判定模块308的判断结果为当前采样点与上一采样点之间的路程距离不大于第二预设距离门限值时,则可根据上述本发明装置实施例一中的方式实现对采样点的填充,在此不予赘述。
其中,取样点补充模块309在当前采样点与上一采样点之间增加补充取样点的方式可与上述本发明方法实施例二中的实现方式相同,在此不予赘述。
补充点笔划大小确定模块310计算补充取样点的笔划大小的方式可与上述本发明方法实施例二中的实现方式相同,在此不予赘述。
运笔速度确定模块304计算补充取样点的运笔速度的方式可与上述本发明方法实施例二中的实现方式相同,在此不予赘述。
雨点模型参数确定模块305计算补充取样点的墨量值、确定该雨点模型中各个雨点的上半圆直径、下半圆直径、上下半圆圆心距、以及确定当前补充取样点对应的雨点模型的偏转角度的方式可与上述本发明方法实施例二中的实现方式相同,在此不予赘述。
填充模块306在填充当前补充取样点时,由于雨点模型是上端细、下端宽的结构,因此,在只采用一个雨点模型来填充当前补充取样点的情况下,如果该填充单元不够大,可能会导致书写笔迹的上端出现锯齿现象,为了避免出现这种情况,可以用多个大小等同的雨点模型填充当前补充取样点,即毛笔是由多个大小等同的填充单位组成,优选为2到6个。
本实施例中的其他技术特征与上述本发明装置实施例一中的相同,在此不予赘述。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。
Claims (10)
1.一种毛笔笔迹的书写方法,其特征在于,包括步骤:
初始化毛笔的初始墨量值、初始笔大小以及初始笔锋角度;
捕捉画笔移动路径上的采样点的位置坐标及压力值;
根据当前采样点的位置坐标、上一采样点的位置坐标,计算所述当前采样点的运笔速度以及笔锋的偏转角度;
根据所述初始墨量值、所述压力值、所述运笔速度计算所述当前采样点的墨量值,并根据该墨量值确定该当前采样点对应的雨点模型类别;
根据所述初始笔大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前采样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;
根据所述初始笔锋角度、所述偏转角度,确定所述当前采样点对应的雨点模型的旋转角度;
根据所述各雨点的上半圆直径、下半圆直径、上下半圆的圆心距、以及所述旋转角度,确定所述当前采样点对应的雨点模型,并用该雨点模型填充所述当前采样点。
2.根据权利要求1所述的毛笔笔迹的书写方法,其特征在于,用2~6个等同且横向排列的所述雨点模型填充所述当前采样点。
3.根据权利要求1所述的毛笔笔迹的书写方法,其特征在于,所述根据墨量值确定该当前采样点对应的雨点模型类别具体包括:
根据所述初始墨量值确定第一预设墨量值、第二预设墨量值,且所述第一预设墨量值小于所述第二预设墨量值;
当所述墨量值大于或者等于所述第一预设墨量值时,确定所述当前采样点对应的雨点模型为第一类雨点模型;
当所述墨量值小于所述第一预设墨量值、且大于或者等于所述第二预设墨量值时,确定所述当前采样点对应的雨点模型为第二类雨点模型;
当所述墨量值小于所述第二预设墨量值时,确定所述当前采样点对应的雨点模型为第三类雨点模型。
4.根据权利要求1所述的毛笔笔迹的书写方法,其特征在于:
根据下述公式确定所述运笔速度:
Vn=(Ln-(k-1)+Ln-(k-2)+Ln-(k-3)+...Ln-1+Ln)/k
其中,所述K为大于等于2且小于等于10的整数,所述Vn表示所述当前采样点的运笔速度,所述Ln-(k-1)表示在前的第k-1个临近采样点与在前的第k个临近采样点的路程距离,所述Ln-(k-2)表示在前的第k-2个临近采样点与在前的第k-1个临近采样点的路程距离,所述Ln-(k-3)表示在前的第k-3个临近采样点与在前的第k-2个临近采样点的路程距离,所述Ln-1表示上一个临近采样点与在前的第二个临近采样点的路程距离,所述Ln表示当前采样点与上一个临近采样点的路程距离;
和/或
根据下述公式确定所述墨量值:
k_hairy=A*(k1_hairy-1)+B*Press+C*Vn
所述k_hairy表示所述当前采样点的墨量值,所述k1_hairy表示上一个采样点的墨量值,所述Press表示所述当前采样点的压力值,所述Vn表示所述当前采样点的运笔速度,A代表上一个临近采样点的墨量值在确定该当前采样点的墨量值时所占用的比例系数,B代表所述当前采样点的压力值在确定该当前采样点的墨量值时所占用的比例系数,C分别代表所述当前采样点的运笔速度在确定该当前采样点的墨量值时所占用的比例系数;
和/或
根据所述初始笔锋角度、所述偏转角度,确定所述当前采样点对应的雨点模型的旋转角度的具体方式包括:
当所述当前采样点所处位置位于预设的采样点门限值范围内时,判断该当前采样点的偏转角度与上一个采样点的偏转角度的差值是否大于预设角度门限值,若是,将上一采样点的旋转角度增加预定角度值后作为所述当前采样点的旋转角度,若否,将上一采样点的旋转角度作为所述当前采样点的旋转角度;
当所述当前采样点所处位置位于该采样点门限值范围外时,判断当前采样点与上一个采样点之间的路程距离是否大于第一预设距离门限值,若是,将上一采样点的旋转角度增加预定角度值后作为所述房前采样点的旋转角度,若否,将上一个采样点的旋转角度作为该当前采样点的旋转角度。
5.根据权利要求1至4任意一项所述的毛笔笔迹的书写方法,其特征在于,在所述捕捉画笔移动路径上的采样点的位置坐标及压力值后,还包括步骤:
根据所述当前采样点的位置坐标、上一采样点的位置坐标,计算所述当前采样点与上一采样点之间的路程距离;
当所述路程距离大于第二预设距离门限值时,在所述当前采样点与所述上一采样点之间增加补充取样点。
6.根据权利要求5所述的毛笔笔迹的书写方法,其特征在于,所述增加补充取样点的方式包括:
根据所述路程距离所处的范围确定预定距离;
在所述当前采样点与所述上一采样点的连接路径上,每隔所述预定距离增加一个补充取样点。
7.根据权利要求5所述的毛笔笔迹的书写方法,其特征在于,还包括:
根据所述初始笔大小、所述补充取样点的总个数以及当前补充取样点的顺序确定该当前补充取样点的笔划大小;
根据当前补充取样点的位置坐标、上一补充取样点或者采样点的位置坐标,计算所述当前补充取样点的运笔速度以及笔锋的偏转角度;
根据所述初始墨量值、所述压力值、所述当前补充取样点的运笔速度计算所述当前补充取样点点的墨量值,并根据所述墨量值确定该当前补充取样点对应的雨点模型类别;
根据所述当前补充取样点的笔划大小、所述预设参照值、所述预设的雨点模型中各雨点与填充单位的比例关系,计算所述当前补充取样点的填充单位中各个雨点的上半圆直径、下半圆直径、上下半圆的圆心距;
根据所述初始笔锋角度、所述当前补充取样点的偏转角度,确定所述当前补充取样点对应的雨点模型的旋转角度;
根据所述当前补充取样点的填充单位中各雨点的上半圆直径、下半圆直径、上下半圆的圆心距、以及所述当前补充取样点对应的雨点模型的旋转角度,确定所述当前补充取样点对应的雨点模型,并用该雨点模型填充所述当前补充取样点。
8.根据权利要求7所述的毛笔笔迹的书写方法,其特征在于,根据下述公式确定当前补充取样点的笔划大小,
m_Pensize=Pensize-(Pensize/n)*m;
所述Pensize表示所述初始笔大小,所述m_Pensize表示当前补充取样点的笔划大小,所述n表示在所述当前采样点与上一采样点之间的补充取样点的总个数,所述m表示该当前补充取样点是所述当前采样点与上一采样点之间的路径上的第m个补充取样点。
9.一种毛笔笔迹的书写装置,其特征在于,包括:
初始化模块,用于初始化毛笔的初始墨量值、初始笔大小以及初始笔锋角度;
与初始化模块连接的采样点捕捉模块,用于捕捉画笔移动路径上的采样点的位置坐标及压力值;
与所述采样点捕捉模块连接的偏转角度确定模块,用于根据当前采样点的位置坐标、上一采样点的位置坐标,计算所述当前采样点的笔锋的偏转角度;
与所述采样点捕捉模块连接的运笔速度确定模块,用于根据所述当前采样点的位置坐标、所述上一采样点的位置坐标,计算所述当前采样点的运笔速度;
与所述初始化模块、所述采样点捕捉模块、所述偏转角度确定模块、所述运笔速度确定模块连接的雨点模型参数确定模块,用于根据所述初始墨量值、所述压力值、所述运笔速度计算所述当前采样点的墨量值,并根据所述墨量值确定该当前采样点对应的雨点模型类别,并根据所述初始笔大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前采样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;以及根据所述初始笔锋角度、所述偏转角度,确定所述当前采样点对应的雨点模型的旋转角度;
与所述雨点模型参数确定模块连接的填充模块,用于根据上半圆直径、所述下半圆直径、所述上下半圆的圆心距、所述旋转角度,确定所述当前采样点对应的雨点模型,并用该雨点模型填充所述当前采样点。
10.根据权利要求9所述的毛笔笔迹的书写装置,其特征在于,还包括:
与所述采样点捕捉模块连接的路程距离确定模块,用于根据所述当前采样点的位置坐标、所述上一采样点的位置坐标,计算所述当前采样点与上一采样点之间的路程距离;
与所述路程距离确定模块、所述运笔速度确定模块连接的最短距离判定模块,用于判断所述路程距离是否大于预设距离门限值;
与所述最短距离判定模块、所述偏转角度确定模块、所述运笔速度确定模块连接的取样点补充模块,用于当所述最短距离判定模块的判断结果为是时,根据预设方式在所述当前采样点与上一采样点之间增加补充取样点;
与所述取样点补充模块连接的补充点笔划大小确定模块,用于计算所述补充取样点的笔划大小;
所述运笔速度确定模块,还用于计算所述补充取样点的运笔速度;
所述偏转角度确定模块,还用于计算所述补充取样点的偏转角度;
所述雨点模型参数确定模块,还跟所述补充点笔划大小确定模块连接,还用于根据所述初始墨量值、所述压力值、所述运笔速度计算所述当前补充取样点的墨量值,并根据所述当前补充取样点的墨量值确定该当前补充取样点对应的雨点模型类别,并根据所述当前补充取样点的笔划大小、预设参照值、预设的所述雨点模型类别中各个雨点与填充单位的比例关系,计算所述当前补充取样点的填充单位中各个雨点的上半圆直径、下半圆直径、及上下半圆的圆心距;以及根据所述初始笔锋角度、所述偏转角度,确定所述当前补充取样点对应的雨点模型的旋转角度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101989928A CN101373539B (zh) | 2008-10-07 | 2008-10-07 | 毛笔笔迹的书写方法及书写装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101989928A CN101373539B (zh) | 2008-10-07 | 2008-10-07 | 毛笔笔迹的书写方法及书写装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101373539A true CN101373539A (zh) | 2009-02-25 |
CN101373539B CN101373539B (zh) | 2010-10-27 |
Family
ID=40447691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101989928A Expired - Fee Related CN101373539B (zh) | 2008-10-07 | 2008-10-07 | 毛笔笔迹的书写方法及书写装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101373539B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882026A (zh) * | 2010-06-30 | 2010-11-10 | 北京捷通华声语音技术有限公司 | 笔迹书写的方法和装置、笔迹模板分类器训练方法和装置 |
CN102103762A (zh) * | 2011-01-31 | 2011-06-22 | 周佳 | 一种手写原笔迹的实现方法 |
CN102332173A (zh) * | 2011-09-13 | 2012-01-25 | 浙江万朋网络技术有限公司 | 一种基于向量代数的简明软笔效果生成方法 |
CN102436348A (zh) * | 2011-11-14 | 2012-05-02 | 中国科学院合肥物质科学研究院 | 一种基于力信息的毛笔书法表达方法 |
CN102521857A (zh) * | 2011-11-28 | 2012-06-27 | 北京盛世宣合信息科技有限公司 | 电子毛笔书写笔形角度控制方法 |
CN102521858A (zh) * | 2011-11-28 | 2012-06-27 | 北京盛世宣合信息科技有限公司 | 电子毛笔书写笔迹生成方法 |
CN103064554A (zh) * | 2012-12-17 | 2013-04-24 | 上海海知信息技术有限公司 | 一种手写输入法的笔迹平滑处理方法及手写输入法 |
CN103383777A (zh) * | 2012-05-03 | 2013-11-06 | 杨志沅 | 划圆方法及其装置 |
CN103559732A (zh) * | 2013-10-15 | 2014-02-05 | 锐达互动科技股份有限公司 | 一种生成毛笔笔迹的方法 |
CN104571836A (zh) * | 2013-10-11 | 2015-04-29 | 北大方正集团有限公司 | 基于触摸屏的毛笔笔形处理方法和装置 |
US9373028B2 (en) | 2014-07-31 | 2016-06-21 | Qisda (SuZhou) Co., ltd | Handwriting input system and handwriting input method |
CN103823628B (zh) * | 2013-12-15 | 2017-01-11 | 北京工业大学 | 结合笔压的毛笔字笔锋模拟方法 |
CN108492377A (zh) * | 2018-02-13 | 2018-09-04 | 网易(杭州)网络有限公司 | 一种虚拟场景中的书写控制方法及装置、移动终端 |
CN109840034A (zh) * | 2019-01-30 | 2019-06-04 | 郑州万特电气股份有限公司 | 一种基于触摸设备的毛笔字书写方法 |
CN109947346A (zh) * | 2019-03-14 | 2019-06-28 | 北京亚太环宇科技有限公司 | 触摸屏书法练习软件 |
CN110045906A (zh) * | 2018-01-17 | 2019-07-23 | 北京方正手迹数字技术有限公司 | 虚拟毛笔书写的显示方法、显示系统 |
CN111862207A (zh) * | 2020-06-05 | 2020-10-30 | 深圳市欣智旺电子有限公司 | 手写设备的姿态判断方法、装置、计算机设备和存储介质 |
CN112102434A (zh) * | 2020-09-22 | 2020-12-18 | 深圳市皓丽智能科技有限公司 | 一种笔迹绘制方法、装置及设备 |
CN113590002A (zh) * | 2020-04-30 | 2021-11-02 | 京东方科技集团股份有限公司 | 笔迹形成方法、笔迹形成装置及电子设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012103794A1 (zh) * | 2011-01-31 | 2012-08-09 | 北京壹人壹本信息科技有限公司 | 一种手写原笔迹的实现方法、实现装置及电子装置 |
-
2008
- 2008-10-07 CN CN2008101989928A patent/CN101373539B/zh not_active Expired - Fee Related
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882026A (zh) * | 2010-06-30 | 2010-11-10 | 北京捷通华声语音技术有限公司 | 笔迹书写的方法和装置、笔迹模板分类器训练方法和装置 |
CN102103762B (zh) * | 2011-01-31 | 2012-11-28 | 北京壹人壹本信息科技有限公司 | 一种手写原笔迹的实现方法 |
CN102103762A (zh) * | 2011-01-31 | 2011-06-22 | 周佳 | 一种手写原笔迹的实现方法 |
CN102332173A (zh) * | 2011-09-13 | 2012-01-25 | 浙江万朋网络技术有限公司 | 一种基于向量代数的简明软笔效果生成方法 |
CN102436348A (zh) * | 2011-11-14 | 2012-05-02 | 中国科学院合肥物质科学研究院 | 一种基于力信息的毛笔书法表达方法 |
CN102521858A (zh) * | 2011-11-28 | 2012-06-27 | 北京盛世宣合信息科技有限公司 | 电子毛笔书写笔迹生成方法 |
CN102521857A (zh) * | 2011-11-28 | 2012-06-27 | 北京盛世宣合信息科技有限公司 | 电子毛笔书写笔形角度控制方法 |
CN102521858B (zh) * | 2011-11-28 | 2014-04-02 | 北京盛世宣合信息科技有限公司 | 电子毛笔书写笔迹生成方法 |
CN103383777A (zh) * | 2012-05-03 | 2013-11-06 | 杨志沅 | 划圆方法及其装置 |
CN103064554A (zh) * | 2012-12-17 | 2013-04-24 | 上海海知信息技术有限公司 | 一种手写输入法的笔迹平滑处理方法及手写输入法 |
CN104571836A (zh) * | 2013-10-11 | 2015-04-29 | 北大方正集团有限公司 | 基于触摸屏的毛笔笔形处理方法和装置 |
CN104571836B (zh) * | 2013-10-11 | 2017-08-25 | 北大方正集团有限公司 | 基于触摸屏的毛笔笔形处理方法和装置 |
CN103559732A (zh) * | 2013-10-15 | 2014-02-05 | 锐达互动科技股份有限公司 | 一种生成毛笔笔迹的方法 |
CN103559732B (zh) * | 2013-10-15 | 2016-05-11 | 锐达互动科技股份有限公司 | 一种生成毛笔笔迹的方法 |
CN103823628B (zh) * | 2013-12-15 | 2017-01-11 | 北京工业大学 | 结合笔压的毛笔字笔锋模拟方法 |
US9373028B2 (en) | 2014-07-31 | 2016-06-21 | Qisda (SuZhou) Co., ltd | Handwriting input system and handwriting input method |
CN110045906B (zh) * | 2018-01-17 | 2020-11-17 | 北京方正手迹数字技术有限公司 | 虚拟毛笔书写的显示方法、显示系统 |
CN110045906A (zh) * | 2018-01-17 | 2019-07-23 | 北京方正手迹数字技术有限公司 | 虚拟毛笔书写的显示方法、显示系统 |
CN108492377A (zh) * | 2018-02-13 | 2018-09-04 | 网易(杭州)网络有限公司 | 一种虚拟场景中的书写控制方法及装置、移动终端 |
CN109840034A (zh) * | 2019-01-30 | 2019-06-04 | 郑州万特电气股份有限公司 | 一种基于触摸设备的毛笔字书写方法 |
CN109840034B (zh) * | 2019-01-30 | 2022-06-07 | 郑州万特电气股份有限公司 | 一种基于触摸设备的毛笔字书写方法 |
CN109947346A (zh) * | 2019-03-14 | 2019-06-28 | 北京亚太环宇科技有限公司 | 触摸屏书法练习软件 |
CN113590002A (zh) * | 2020-04-30 | 2021-11-02 | 京东方科技集团股份有限公司 | 笔迹形成方法、笔迹形成装置及电子设备 |
WO2021218448A1 (zh) * | 2020-04-30 | 2021-11-04 | 京东方科技集团股份有限公司 | 笔迹形成方法、笔迹形成装置及电子设备 |
US11809701B2 (en) * | 2020-04-30 | 2023-11-07 | Boe Technology Group Co., Ltd. | Handwriting forming method and apparatus, and electronic device |
CN113590002B (zh) * | 2020-04-30 | 2024-04-16 | 京东方科技集团股份有限公司 | 笔迹形成方法、笔迹形成装置及电子设备 |
CN111862207A (zh) * | 2020-06-05 | 2020-10-30 | 深圳市欣智旺电子有限公司 | 手写设备的姿态判断方法、装置、计算机设备和存储介质 |
CN111862207B (zh) * | 2020-06-05 | 2023-11-07 | 深圳市欣威智能有限公司 | 手写设备的姿态判断方法、装置、计算机设备和存储介质 |
CN112102434A (zh) * | 2020-09-22 | 2020-12-18 | 深圳市皓丽智能科技有限公司 | 一种笔迹绘制方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101373539B (zh) | 2010-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101373539B (zh) | 毛笔笔迹的书写方法及书写装置 | |
CN102708227B (zh) | 基于sph算法的洪水溃坝过程仿真方法与仿真系统 | |
CN104407521B (zh) | 一种实现水下机器人实时仿真的方法 | |
US9600907B2 (en) | Paintbrush and liquid simulation | |
CN104318598B (zh) | 一种三维流固单向耦合的实现方法及系统 | |
CN102520849A (zh) | 电子毛笔书写方法及系统 | |
CN109448137A (zh) | 交互方法、交互装置、电子设备及存储介质 | |
CN105141656B (zh) | 一种基于云平台的互联网轻量级应用的负载均衡实现方法 | |
CN102902458A (zh) | 一种电子书籍的翻页方法 | |
CN101540060B (zh) | 一种基于物理仿真的气流模拟方法及其系统 | |
CN109857322B (zh) | 一种基于安卓的画笔宽度控制方法和装置 | |
CN106294899A (zh) | 基于面向对象程序架构的电力系统用户自定义仿真方法 | |
Chen et al. | A heuristic approach to the simulation of water drops and flows on glass panes | |
CN108108430B (zh) | 一种基于Unity3D知识森林虚拟现实系统实现的方法 | |
CN103729878A (zh) | 一种基于wpf的三维图形实现方法及三维文字实现方法 | |
CN102521856B (zh) | 电子毛笔书写笔形变形方法 | |
WO2021218448A1 (zh) | 笔迹形成方法、笔迹形成装置及电子设备 | |
CN105205723A (zh) | 一种基于社交应用的建模方法及装置 | |
CN103425849A (zh) | 一种动态障碍物影响下流体的仿真方法 | |
Zhou et al. | Eulerian-Lagrangian Fluid Simulation on Particle Flow Maps | |
Xia et al. | Research and development of brush calligraphy system based on mobile terminal | |
CN104423850A (zh) | 一种容器内液体的仿真显示方法和装置 | |
CN109064557A (zh) | 一种通过图纸数据进行3d建模的方法、系统、终端及介质 | |
Zhang et al. | SPH-based fluid simulation: a survey | |
Chen | Real-time synthesis and rendering of flowing water in Chinese Ink Paintings |
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 | ||
CP03 | Change of name, title or address |
Address after: 510670 Guangdong Province, Guangzhou high tech Industrial Development Zone Kezhu Road No. 233 Patentee after: Wei Chong group Limited by Share Ltd Address before: 510663 Guangzhou province high tech Industrial Development Zone, Guangdong, Cai road, No. 6, No. Patentee before: Guangdong Weichuangshixun Science and Technology Co., Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101027 Termination date: 20181007 |
|
CF01 | Termination of patent right due to non-payment of annual fee |