(57)【要約】本発明は、オリジナル手書き筆跡の筆鋒実現方法及び実現装置を提供する。当該方法は、触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出して筆幅を取得し、隣接するサンプリング点が決めるストロークの中心線を決め、その後、当該中心線とサンプリング点の筆幅に基づき、相応するストロークのキーポイントの位置情報を決め、ストロークのキーポイントの種類をグループ分けし、キーポイントの種類及びキーポイントの位置情報に基づき、円弧を描き及び／又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、最後に充填して表示し、表示された手書き筆跡が紙に書かれている文字と同じような筆鋒を有する。
2014508992.tif 000002
【特許請求の範囲】
【請求項１】
触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出し、サンプリング点の筆幅ｄを取得するサンプリング検出ステップと、
前記中心線の両端点である、隣接するサンプリング点の間のストロークの中心線を決める中心線確定ステップと、
前記中心線及び相応するサンプリング点の筆幅ｄに基づき、隣接するサンプリング点の間のストロークの中心線の両端点及び前記両端点にそれぞれ対応する上、下端点を含む、ストロークのキーポイントの位置情報を算出するキーポイント位置情報算出ステップと、
前記ストロークは、その他のストロークと交差しているか否かに基づき、前記ストロークのキーポイントの種類を半円点、円弧点又は直線点にグループ分けするキーポイント分類ステップと、
前記ストロークのキーポイントの位置情報及び種類に基づき、円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、その後、充填して表示する筆鋒生成ステップとを備えることを特徴とするオリジナル手書き筆跡の筆鋒実現方法。
【請求項２】
前記筆鋒生成ステップにおいては、グラフィックスライブラリモジュールを呼び出して円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、さらに、グラフィックスライブラリモジュールを用いて充填して表示することを特徴とする請求項１に記載の方法。
【請求項３】
前記サンプリング検出ステップにおいては、サンプリング点の圧力値を検出し、サンプリング点の圧力値に基づいてサンプリング点の筆幅ｄを取得することを特徴とする請求項１に記載の方法。
【請求項４】
前記キーポイント位置情報算出ステップは、前記中心線及び前記中心線の端点における筆幅ｄに基づき、前記中心線の両端点にそれぞれ対応する上端点と下端点を決めることを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記中心線の端点が対応する上端点と下端点を決める具体的なプロセスは、前記中心線に垂直し、且つ前記中心線の端点と交差する直線における、前記中心線の端点からの距離が
【数２７】
2014508992.tif 000029
である点は、それぞれ前記中心線の端点が対応する上端点と下端点であることを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記中心線の端点が対応する上端点と下端点を決める具体的なプロセスは、前記中心線に垂直する単位法ベクトル
【数２８】
2014508992.tif 000030
を決め、前記中心線の端点において、
【数２９】
2014508992.tif 000031
で前記中心線の端点が対応するストロークの上端点を取得し、
【数３０】
2014508992.tif 000032
で前記中心線の端点が対応するストロークの下端点を取得することを含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記キーポイント分類ステップにおいて、前記ストロークのキーポイントの種類をグループ分けする具体的なプロセスは、前記ストロークのうちの一端又は両端がいずれもその他のストロークと交差していない場合、その他のストロークと交差していない端は、前記ストロークの末端であり、前記ストロークの末端が対応する中心線の端点及び当該中心線の端点に対応する上、下端点は、一組の半円点であることを含むことを特徴とする請求項１〜６のいずれか１つに記載の方法。
【請求項８】
前記キーポイント分類ステップにおいて、前記ストロークのキーポイントの種類をグループ分けする具体的なプロセスは、前記ストロークがその他のストロークと交差している場合、両交差ストロークの中心線の夾角が１８０°に等しいか否かを判断し、等しければ、前記両交差ストロークの交差点においていかなる処理を行わず、等しくなければ、前記両交差ストロークの中心線の交差点における夾角が１８０°より大きい側の両外端点は、一組の円弧点に決められ、そのうち、前記両外端点は、それぞれ前記両交差ストロークの交差点における上端点又は下端点であり、前記隣接するサンプリング点の間のストロークの両上端点及び両下端点は、それぞれ一組の直線点に決められることを含むことを特徴する請求項１〜６のいずれか１つに記載の方法。
【請求項９】
前記筆鋒生成ステップにおいて、受け取ったキーポイントが一組の半円端点に決められた場合、当該組の半円端点のうちの中心線の端点を円心とし、相応する
【数３１】
2014508992.tif 000033
を半径とし、前記半円端点のうちの上、下端点を起点及び終点として半円を描くことを特徴とする請求項７に記載の方法。
【請求項１０】
前記筆鋒生成ステップにおいて、受け取ったキーポイントが一組の円弧点に決められた場合、当該組の円弧点のうちの１つの上端点又は下端点を起点とし、相応する
【数３２】
2014508992.tif 000034
を半径とし、前記円弧点のうちのもう１つの上端点又は下端点を終点として円弧を描き、受け取ったキーポイントが一組の直線点に決められた場合、当該組の直線点のうちの１つの上端点又は下端点を起点とし、前記直線点のうちのもう１つの上端点又は下端点を終点として直線を描くことを特徴とする請求項８に記載の方法。
【請求項１１】
触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出し、サンプリング点の筆幅ｄを取得するサンプリングモジュールと、
前記サンプリングモジュールに接続され、前記サンプリング点の位置情報に基づき、隣接するサンプリング点の間のストロークの中心線を決め、前記隣接するサンプリング点は、前記中心線の両端点であり、前記中心線及び相応するサンプリング点の筆幅ｄに基づき、ストロークのキーポイントの位置情報を算出し、前記ストロークは、その他のストロークと交差しているか否かに基づき、前記ストロークのキーポイントの種類を半円点、円弧点又は直線点にグループ分けするための演算処理モジュールと、
前記演算処理モジュールに接続され、前記キーポイントの位置情報及び種類に基づき、相応するストロークの筆鋒輪郭を生成し、充填して表示するグラフィックスライブラリモジュールとを備え、
前記ストロークのキーポイントは、隣接するサンプリング点の間のストロークの中心線の両端点及び前記両端点にそれぞれ対応する上、下端点を含むことを特徴とするオリジナル手書き筆跡の筆鋒実現装置。
【請求項１２】
前記サンプリングモジュールは、圧力サンプリングモジュールであり、サンプリング点の圧力値を検出して、サンプリング点の圧力値に基づき、サンプリング点の筆幅ｄを取得することを特徴とする請求項１１に記載のオリジナル手書き筆跡の筆鋒実現装置。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
〔技術分野〕
本発明は、手書き入力技術に関し、特に、オリジナル手書き筆跡の筆鋒実現方法及び実現装置に関する。
〔背景技術〕
科学技術の発展に伴い、多くの手書き入力システム付きの電子装置が市場に登場し、例えば、手書き機能付きの携帯電話、電子書籍、平板状パソコン等が挙げられる。
【０００２】
手書き平板状パソコンは、その一例であり、内部には、手書き入力システムが集積され、既に伝統的なキーボード入力の代わりになり、移動中の仕事をこなすためのニーズを全面的に満たしている。使用時、ユーザーは、手書き入力システムに文字又は図形を手書き筆で入力すると、入力された文字又は図形が、平板状パソコンの表示画面に直接に表示される。
【０００３】
しかしながら、現在、市販の平板状パソコンの手書き入力システムは、主に以下の２種類の筆跡処理方法を採用している：
１つは、手書き入力の筆跡を形成するように、手書き筆が経過した点を線で結ぶが、このような処理方法により得られた筆跡は、十分に滑らかではなく、手書き筆鋒の本当の効果が欠けている。
【０００４】
２つは、曲線フィッティングにより実現され、即ち、すべてのサンプリング点に最も近い１つの滑らかな曲線を算出した後、図形システムの曲線作成機能を用いて当該曲線を描くが、当該方法の計算方法が複雑であり、実現しにくい。
【０００５】
そこで、上述した問題を解決することが可能なオリジナル手書き筆跡の筆鋒実現方法が期待されている。
〔発明の概要〕
〔発明が解決しようとする課題〕
本発明が解決しようとする課題は、ユーザーによる手書きの筆跡が伝統的な紙に書かれているような筆鋒効果を持つことによって、ユーザーの書写体験を高める、簡単で実現しやすいオリジナル手書き筆跡の筆鋒実現方法及び実現装置を提供する。
〔課題を解決するための手段〕
上述した技術課題を解決するために、本発明のオリジナル手書き筆跡の筆鋒実現方法は、
触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出し、サンプリング点の筆幅ｄを取得するサンプリング検出ステップと、
前記中心線の両端点である、隣接するサンプリング点の間のストロークの中心線を決める中心線確定ステップと、
前記中心線及び相応するサンプリング点の筆幅ｄに基づき、隣接するサンプリング点の間のストロークの中心線の両端点及び前記両端点にそれぞれ対応する上、下端点を含むストロークのキーポイントの位置情報を算出するキーポイント位置情報算出ステップと、
前記ストロークは、そのほかのストロークと交差しているか否かに基づき、前記ストロークのキーポイントの種類を半円点、円弧点又は直線点にグループ分けするキーポイント分類ステップと、
前記ストロークのキーポイントの位置情報及び種類に基づいて円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、その後、充填して表示する筆鋒生成ステップとを備える。
【０００６】
また、前記筆鋒生成ステップにおいては、グラフィックスライブラリモジュールを呼び出して円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、その後、グラフィックスライブラリモジュールを用いて充填して表示することが好ましい。
【０００７】
また、前記サンプリング検出ステップにおいては、サンプリング点の圧力値を検出し、サンプリング点の圧力値に基づき、サンプリング点の筆幅ｄを取得することが好ましい。
【０００８】
また、前記キーポイント位置情報算出ステップは、前記中心線及び前記中心線の端点の筆幅ｄに基づき、前記中心線の両端点にそれぞれ対応する上端点及び下端点を決めることを含むことが好ましい。
【０００９】
また、前記中心線の端点が対応する上端点と下端点を決める具体的なプロセスは、前記中心線に垂直し、且つ前記中心線の端点と交差する直線における、前記中心線の端点からの距離が
【００１０】
【数１】
2014508992.tif 000003
【００１１】
である点は、それぞれ前記中心線の端点が対応する上端点と下端点であることを含むことが好ましい。
【００１２】
また、前記中心線の端点が対応する上端点と下端点を決める具体的なプロセスは、前記中心線に垂直する単位法ベクトル
【００１３】
【数２】
2014508992.tif 000004
【００１４】
を決め、前記中心線の端点において、
【００１５】
【数３】
2014508992.tif 000005
【００１６】
で前記中心線の端点が対応するストロークの上端点を取得し、
【００１７】
【数４】
2014508992.tif 000006
【００１８】
で前記中心線の端点が対応するストロークの下端点を取得することを含むことが好ましい。
【００１９】
また、前記キーポイント分類ステップにおいて、前記ストロークのキーポイントの種類をグループ分けする具体的なプロセスは、前記ストロークの一端又は両端がいずれもその他のストロークと交差していない場合、その他のストロークと交差していない端は、前記ストロークの末端であり、前記ストロークの末端が対応する中心線の端点及び当該中心線の端点が対応する上、下端点は、一組の半円点であることを含むことが好ましい。
【００２０】
また、前記キーポイント分類ステップにおいて、前記ストロークのキーポイントの種類をグループ分けする具体的なプロセスは、前記ストロークがその他のストロークと交差している場合、両交差ストロークの中心線の夾角は、１８０°に等しいか否かを判断し、等しければ、前記両交差ストロークの交差点においていかなる処理を行わず、等しくなければ、前記両交差ストロークの中心線の交差点における夾角が１８０°より大きい側の両外端点は、一組の円弧点に決められ、そのうち、前記両外端点は、それぞれ前記両交差ストロークの交差点における上端点又は下端点であり、前記隣接するサンプリング点の間のストロークの両上端点及び両下端点は、それぞれ一組の直線点に決められることを含むことが好ましい。
【００２１】
また、前記筆鋒生成ステップにおいて、受け取ったキーポイントが一組の半円端点に決められた場合、当該組の半円端点のうちの中心線の端点を円心とし、相応する
【００２２】
【数５】
2014508992.tif 000007
【００２３】
を半径とし、前記半円端点のうちの上、下端点を起点及び終点として半円を描くことが好ましい。
【００２４】
また、前記筆鋒生成ステップにおいて、受け取ったキーポイントが一組の円弧点に決められた場合、当該組の円弧点のうちの１つの上端点又は下端点を起点とし、相応する
【００２５】
【数６】
2014508992.tif 000008
【００２６】
を半径とし、前記円弧点のもう１つの上端点又は下端点を終点として円弧を描き、受け取ったキーポイントが一組の直線点に決められた場合、当該組の直線点のうちの１つの上端点又は下端点を起点とし、前記直線点のうちのもう１つの上端点又は下端点を終点として直線を描くことが好ましい。
【００２７】
本発明は、オリジナル手書き筆跡の筆鋒実現装置をさらに提供し、
触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出し、サンプリング点の筆幅ｄを取得するサンプリングモジュールと、
前記サンプリングモジュールに接続され、前記サンプリング点の位置情報に基づき、隣接するサンプリング点の間のストロークの中心線を決め、前記隣接するサンプリング点は、前記中心線の両端点であり、前記中心線及び相応するサンプリング点の筆幅ｄに基づき、ストロークのキーポイントの位置情報を算出し、前記ストロークは、その他のストロークと交差している否かに基づき、前記ストロークのキーポイントの種類を半円点、円弧点又は直線点にグループ分けするための演算処理モジュールと、
前記演算処理モジュールに接続され、前記キーポイントの位置情報及び種類に基づき、相応するストロークの筆鋒輪郭を生成し、充填して表示するグラフィックスライブラリモジュールとを備える。
【００２８】
前記ストロークのキーポイントは、隣接するサンプリング点の間のストロークの中心線の両端点及び前記両端点にそれぞれ対応する上、下端点を含むことが好ましい。
【００２９】
また、前記サンプリングモジュールは、圧力サンプリングモジュールであり、サンプリング点の圧力値を検出し、サンプリング点の圧力値に基づき、サンプリング点の筆幅ｄを取得することが好ましい。
〔発明の効果〕
本発明の有益的な効果は、以下の通りである：本発明が提供するオリジナル手書き筆跡の筆鋒実現方法及び実現装置は、触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出して筆幅を取得し、隣接するサンプリング点が決めるストロークの中心線を決め、その後、当該中心線とサンプリング点の筆幅に基づき、相応するストロークのキーポイントの位置情報を決め、ストロークのキーポイントを円弧点、半円点及び直線点にグループ分けし、キーポイントの種類及び位置情報に基づき、円弧を描き及び／又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、充填して表示し、表示された手書き筆跡が紙に書かれている文字と同じような筆鋒を有する。
【００３０】
また、本発明のオリジナル手書き筆跡の筆鋒実現方法は、筆鋒生成ステップにおいて、グラフィックスライブラリモジュールを直接に呼び出して円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、その後、グラフィックスライブラリモジュールの充填機能を直接に呼び出して充填して表示するので、本発明の方法は、グラフィックスライブラリモジュール関連の機能を直接に利用するだけで、筆鋒を有するオリジナル手書き筆跡の表示を実現することができ、相応するストロークのキーポイントの位置情報及びその種類をグラフィックスライブラリモジュールに送るだけで良い。
〔発明を実施するための形態〕
殆どのグラフィックスライブラリモジュールは、直線、折れ線、円弧等を描く機能を有すると共に、相応する充填機能も有しているが、グラフィックスライブラリモジュールにより描かれた曲線の線幅は、殆ど一定であるので、自然の筆鋒効果を形成することができない。本発明の筆鋒実現方法は、グラフィックスライブラリモジュールを直接に利用してストロークの輪郭を描き、その後、グラフィックスライブラリの充填機能を用いて描かれたストローク輪郭を充填して表示することによって、ユーザーの手書き筆跡は、伝統的な書道書写の筆鋒を有するようになり、ユーザーの書写体験が高まった。
【００３１】
図面を参照しながら、具体的な実施形態を用いて本発明をさらに詳しく説明する。
【００３２】
書写のプロセスにおいて、異なるストロークを書く際に、通常、異なる圧力を加え、例えば、書き始める時に、力が比較的強く、起筆の時に、力が比較的軽く、圧力を変えることによって、ストロークの細粗を変えて筆鋒効果を出す。
【００３３】
図５に示すように、本実施例においては、当該オリジナル手書き筆跡の筆鋒実現装置は、サンプリングモジュール１１と、演算処理モジュール１２と、グラフィックスライブラリモジュール１３とを備える。当該サンプリングモジュール１１は、圧力サンプリングモジュール１１であってもよく、書写の筆圧に基づいて触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報を検出し、サンプリング点の筆幅ｄを取得する。
【００３４】
当該演算処理モジュール１２は、サンプリングモジュール１１に接続され、サンプリング点の位置情報に基づき、隣接するサンプリング点の間のストロークの中心線を決め、隣接するサンプリング点は、中心線の両端点であり、中心線および相応するサンプリング点の筆幅ｄに基づいてストロークのキーポイントの位置情報を算出し、ストロークは、その他のストロークと交差しているか否かに基づき、ストロークのキーポイントの種類を半円点、円弧点または直線点にグループ分けする。ストロークのキーポイントは、隣接するサンプリング点の間のストロークの中心線の両端点及び両端点にそれぞれ対応する上、下端点を含む。
【００３５】
当該グラフィックスライブラリモジュール１３は、演算処理モジュール１２に接続され、圧力値と筆幅を一対一で対応する対応関係を記憶しており、キーポイントの位置情報及び種類に基づいて相応するストロークの筆鋒輪郭を生成して充填して表示する。
【００３６】
本実施例における筆鋒の実現方法は、平板状パソコンを例として説明をした。
【００３７】
当該方法は、ユーザーが書いた触点に対してリアルタイムでサンプリングし、サンプリング点の位置情報及び圧力値を検出し、サンプリング点の圧力値に基づいてサンプリング点の筆幅ｄを取得するサンプリング検出ステップと、
隣接するサンプリング点の間のストロークの中心線を決め、隣接するサンプリング点は、前記中心線の両端点であり、中心線は、隣接するサンプリング点の位置情報に基づいて決めることが可能な中心線確定ステップと、
中心線及び相応するサンプリング点の筆幅に基づき、隣接するサンプリング点の間のストロークの中心線の両端点及び両端点にそれぞれ対応する上、下端点を含む、ストロークのキーポイントの位置情報を算出するキーポイント位置情報算出ステップと、
隣接するサンプリング点が決めるストロークは、その他のストロークと交差しているか否かに基づき、前記隣接するサンプリング点が決めるストロークのキーポイントの種類を半円点、円弧点又は直線点にグループ分けするキーポイント分類ステップと、
ストロークのキーポイントの位置情報及び種類に基づいて円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、受け取ったキーポイントが半円点である場合、当該組の半円点が対応する位置において相応する半径
【００３８】
【数７】
2014508992.tif 000009
【００３９】
で半円を描き、受け取ったキーポイントの種類が直線点である場合、当該組の直線点のうちの相応する起点及び終点で直線を描き、受け取ったキーポイントが円弧点である場合、当該組の円弧点の位置において相応する半径
【００４０】
【数８】
2014508992.tif 000010
【００４１】
で円弧を描いてストロークの輪郭を形成し、その後、充填して表示する筆鋒生成ステップとを備える。
【００４２】
本実施例の筆鋒生成ステップにおいては、グラフィックスライブラリモジュールを直接に呼び出して円弧を描き及び/又は線で結ぶことによって、相応するストロークの筆鋒輪郭を生成し、その後、グラフィックスライブラリモジュールの充填機能を直接に呼び出して充填して表示するので、相応するストロークのキーポイントの位置情報及びその種類をグラフィックスライブラリモジュールに送るだけでいい。
【００４３】
具体的には、以下の通りである：
本実施例においては、それぞれの文字を単一のストロークに分解し、ストロークとストロークの間の関係は、次の２種類にすぎない：１、単一のストロークは、単独に存在する、２、１つのストロークは、もう１つのストロークと交差する。本実施例のストロークは、隣接するサンプリング点により決められた単一のストロークであり、漢字を書く時のストロークではなく、曲がり、折り、鉤等の漢字ストロークであっても、複数の連続する、サンプリング起点とサンプリング終点が決める単一のストロークに分解される。上述した状況に対して、単一のストロークが単独に存在する場合、ストロークがリアルタイムで変化する幅及びストロークの両端点を処理する必要があり、即ち、グラフィックスライブラリモジュールにより描かれたストローク輪郭は、２つの直線と２つの半円により構成される（図１参照）。ストローク同士が交差している場合、ストロークは、交差する交差点も処理する必要があり、即ち、両交差ストロークの中心線の交差点に対しても相応する処理を行い、両交差ストロークの中心線の交差点において滑らかに過渡することができるようにする必要がある。
【００４４】
書写のプロセスにおいては、ストロークの細粗がリアルタイムで変化するので、本実施例においては、ユーザーが書く時の触点に対してリアルタイムでサンプリングしてサンプリング点の位置情報と筆幅を取得し、位置情報は、サンプリング点の座標値であり、それぞれの２つの隣接するサンプリング点は、１つのストロークを決め、その後、検出されたサンプリング点の位置情報及び筆幅に基づき、決められたストロークに対して相応する処理を行う。
【００４５】
具体的には、以下の通りである：
パソコン記憶装置の中には、圧力値と筆幅の対応関係を予め記憶し、サンプリング点の圧力値の大きさだけに基づいて相応する筆幅を取得することができ、例えば、圧力を１０２４等級にすると共に、圧力値と筆幅を一対一で対応する対応関係を確立し、その表現形式は、関数であってもよく、テーブル等であってもよく、検出された圧力値だけに基づいて相応する筆幅を取得することができる。より高い精度を得るために、圧力をより高い等級に設定してもよく、例えば、２０４８級に設定してもよい。
【００４６】
実際の状況に基づいてリアルタイムでサンプリングするサンプリング頻度を設定することができ、例えば、楷書を書く時に、書く速度が比較的遅いため、比較的低いサンプリング頻度を選択するだけで要求を満たすことができ、行書又は草書を書く時に、書く速度が比較的早いため、応じて比較的高いサンプリング頻度を選択して書かれたストロークの効果を保つ必要がある。本実施例においては、ストロークの効果を保つために、サンプリング頻度を１２０回/秒にすることが好ましい。
【００４７】
選出されたサンプリング頻度に基づき、ユーザーが書く時の触点に対してサンプリング及び検出を行い、隣接するサンプリング点は、１つのストロークを決め、例えば、時間の順番により取得されたサンプリング点は、それぞれ１、２、３である時に、サンプリング点１、２は、隣接するサンプリング点であり、ストロークを決める際、サンプリング点１は、サンプリングの起点であり、サンプリング点２は、サンプリングの終点であり、サンプリング点２、３も隣接するサンプリング点であり、ストロークを決める際、サンプリング点２は、サンプリングの起点であり、サンプリング点３は、サンプリングの終点であり、これによって類推する。
【００４８】
次に、サンプリング検出ステップにおいて得られた隣接するサンプリング点に基づいて前記隣接するサンプリング点が決めるストロークの中心線を決め、中心線は、隣接するサンプリング点の位置情報に基づいて決めることができる。本実施例においては、サンプリング点１、２を例として挙げて更に説明する（図1参照）。サンプリング点１、２の実際の筆幅は、それぞれｄ１とｄ２であり、座標は、それぞれ（ｘ１、ｙ１）と（ｘ２、ｙ２）であり、ｄ１とｄ２は、サンプリング点１、２が決めるストロークの幅を決め、サンプリング点１、２の座標情報に基づいて中心線Ｌを得ることができる。図２に示すように、サンプリング１、２は、それぞれ中心線Ｌの両端点である。
【００４９】
サンプリング点１、２が決めるストロークの中心線Ｌを取得した後、サンプリング点１、２の筆幅ｄ１とｄ２に基づいて当該ストローク両端の上端点と下端点を決め、前記上端点と下端点は、中心線Ｌに垂直する、中心線Ｌの端点と交差する直線に位置し、中心線Ｌの端点からの距離が
【００５０】
【数９】
2014508992.tif 000011
【００５１】
である。以下に、中心線の端点１が対応する上端点と下端点を例として挙げて説明する：中心線Ｌの単位ベクトルを
【００５２】
【数１０】
2014508992.tif 000012
【００５３】
に設定し、
【００５４】
【数１１】
2014508992.tif 000013
【００５５】
を時計回りと逆の方向で９０°回転させてＬの単位法線ベクトル
【００５６】
【数１２】
2014508992.tif 000014
【００５７】
を取得し、相応する
【００５８】
【数１３】
2014508992.tif 000015
【００５９】
は、ベクトル
【００６０】
【数１４】
2014508992.tif 000016
【００６１】
を時計回り方向で９０°回転させることによって決められたベクトルである。中心線の端点１においては、
【００６２】
【数１５】
2014508992.tif 000017
【００６３】
で中心線の端点１が対応するストロールの上端点を取得し、
【００６４】
【数１６】
2014508992.tif 000018
【００６５】
で中心線の端点１が対応するストロールの下端点を取得することによって、中心線の端点１が対応するストロールの上端点及び下端点の位置情報を取得する。本実施例の上端点の方向は、中心線Ｌの単位ベクトル
【００６６】
【数１７】
2014508992.tif 000019
【００６７】
を時計回り方向で９０°回転させて取得したベクトル
【００６８】
【数１８】
2014508992.tif 000020
【００６９】
の方向であり、下端点の方向は、中心線Ｌの単位ベクトル
【００７０】
【数１９】
2014508992.tif 000021
【００７１】
を時計回りと逆の方向で９０°回転させて取得したベクトル
【００７２】
【数２０】
2014508992.tif 000022
【００７３】
の方向であってもよい。中心線の端点２が対応する上端点と下端点を決める方法も同じであり、ここで、サンプリング点のストローク１、２が決めるストロークのキーポイントは、決められ、即ち、中心線の端点１、２及び中心線の端点１、２がそれぞれ対応する上端点と下端点である。
【００７４】
前記キーポイントの位置情報が決められた後、隣接するサンプリング点が決めるストロークは、そのほかのストロークと交差しているか否かに基づき、隣接するサンプリング点が決めるストロークのキーポイントの種類を半円点、円弧点又は直線点にグループ分けする。具体的には、以下の通りである：隣接する２つのサンプリング点が決めるストロークは、そのほかのストロークと交差しているか否かを判断し、そのうちの一端又は両端がいずれもそのほかのストロークと交差していない場合、そのほかのストロークと交差していない端は、当該ストロークの末端であり（ストロークを書き始める点であってもよく、起筆点であってもよい）、ストローク末端が対応する上、下端点及び上、下端点に対応する中心線の端点は、一組の半円点に決められる。隣接するサンプリング点が決めるストロークがそのほかのストロークと交差している場合、両交差ストロークの中心線の夾角が１８０°に等しいかどうかを判断し、等しければ、両交差ストロークの交差点に対していかなる処理を行わず、等しくなければ、両交差ストロークの中心線の夾角が１８０°より大きい側の両外端点は、一組の円弧点に決められ、前記両外端点は、それぞれ両交差ストロークの交差点における上端点又は下端点であり、隣接する２つのサンプリング点が決めるストロークの両上端点と両下端点は、それぞれ一組の直線点である。以下に、サンプリング点１、２と２、３が決めるストロークを例として更に説明する。
【００７５】
図２に示すように、中心線Ｌの端点１がそのほかのストロークの中心線と交差していない場合、当該端点１は、サンプリング点１、２が決めるストロークの末端であり、中心線Ｌの端点１及び端点１が対応する上端点と下端点は、一組の半円点であり、中心線Ｌの端点２が、サンプリング点２、３が決めるストロークの中心線と交差する場合、中心線Ｌの端点２が対応する両下端点又は上端点は、一組の円弧点である。図２においては、サンプリング点１、２と２、３がそれぞれ決めるストロークの、端点２において対応する両下端点と両上端点は、いずれも中心線の夾角が１８０°より大きい側にあり、即ち、下端点４と下端点５は、当該側の外側にあり、下端点４と下端点５は、当該側の外端点であるので、下端点４と下端点５は、一組の円弧点に決められる。同様に、図３においては、両交差ストロークの、交差点における両上端点６、７は、一組の円弧点に決められ、図４においては、両交差ストロークの、交差点における両下端点８、９も、一組の円弧点に決められる。図２においては、サンプリング点１、２が決めるストロークの両上端点は、一組の直線点であり、サンプリング点１、２が決めるストロークの両下端点も、一組の直線点であり、同様に、サンプリング点２、３が決めるストロークの両上端点は、一組の直線点であり、サンプリング点２、３が決めるストロークの両下端点も、一組の直線点である。
【００７６】
上述した方法でストロークのキーポイントを分類した後、キーポイントの種類及びその位置情報に基づいてグラフィックスライブラリモジュールを直接に呼び出すと、相応するストロークの筆鋒輪郭を生成し、その後、グラフィックスライブラリモジュールを用いて生成した筆鋒輪郭を充填して伝統的な書写筆鋒を有するストロークが表示される。
【００７７】
具体的には、以下の通りである：
グラフィックスライブラリモジュールが受け取ったキーポイントは、一組の半円端点であれば、当該組の半円端点のうちの中心線の端点を円心とし、相応する
【００７８】
【数２１】
2014508992.tif 000023
【００７９】
を半径とし、半円端点のうちの上、下端点を起点及び終点として半円を描き、受け取ったキーポイントは、一組の円弧点であれば、当該組の円弧点のうちの１つの上端点又は下端点を起点とし、相応する
【００８０】
【数２２】
2014508992.tif 000024
【００８１】
を半径とし、円弧点のうちのもう１つの上端点又は下端点を終点として円弧を描き、受け取ったキーポイントは、一組の直線点であれば、当該組の直線点のうちの１つの上端点又は下端点を起点とし、直線点のうちのもう１つの上端点又は下端点を終点として直線を描く。
【００８２】
ここで、再び図２のサンプリング点１、２、３が決めるストロークを例として挙げて更に説明する。中心線Ｌの端点１が対応するストロークの末端を処理するプロセスは、以下の通りである：中心線Ｌの端点１を円心とし、
【００８３】
【数２３】
2014508992.tif 000025
【００８４】
を半径とし、中心線Ｌの端点１が対応する上端点を起点とし、中心線Ｌの端点１が対応する下端点を終点として半円を描き、又は、中心線Ｌの端点１を円心とし、
【００８５】
【数２４】
2014508992.tif 000026
【００８６】
を半径とし、中心線Ｌの端点１が対応する上端点を終点とし、中心線Ｌの端点１が対応する下端点を起点として半円を描く。
【００８７】
サンプリング点１、２が決めるストロークの直線の線幅部分を処理するプロセスは、以下の通りである：サンプリング点１、２が決めるストロークの１つの上端点を起点とし、もう１つの上端点を終点として直線を描くと共に、サンプリング点１、２が決めるストロークの１つの下端点を起点とし、もう１つの下端点を終点として直線を描く。
【００８８】
サンプリング点１、２が決めるストロークは、サンプリング点２、３が決めるストロークと交差し、前記両交差ストロークの中心線の夾角は、１８０°に等しくないので、中心線Ｌの端点２は、一組の円弧点に対応し、当該組の円弧点を処理するプロセスは、以下の通りである：中心線Ｌの端点２を円心とし、
【００８９】
【数２５】
2014508992.tif 000027
【００９０】
を半径とし、サンプリング点１、２が決めるストロークの下端点４を起点とし、サンプリング点２、３が決めるストロークの下端点５を終点として円弧を描き、又は、中心線Ｌの端点２を円心とし、
【００９１】
【数２６】
2014508992.tif 000028
【００９２】
を半径とし、下端点４を終点とし、下端点５を起点として円弧を描くと、サンプリング点１、２とサンプリング点２、３が決めるストロークの筆鋒輪郭を取得することができ、図２に示すように、その後、グラフィックスライブラリモジュールを用いて適切に充填して表示する。
【００９３】
本発明の筆鋒実現方法は、簡単で使いやすい。相応するストロークのキーポイントの位置情報及び種類をグラフィックスライブラリモジュールに送るだけでよい。グラフィックスライブラリモジュールについては、キーポイントの種類及び位置情報に基づいてストロークの筆鋒輪郭を描いて充填すると、筆鋒を有する書写ストロークが表示される。
【００９４】
上述した内容は、具体的な実施例を用いて本発明に対して詳しく説明した。本発明の具体的な実施は、これらの説明に限るものではないので、当業者は、本発明の構想から逸脱することがなければ、様々な簡単な変形又は代替を行ってもよい。
【図面の簡単な説明】
【００９５】
【図１】本発明の一実施例に係るその他のストロークと交差していないストロークの輪郭略図である。
【図２】本発明の一実施例に係る両交差ストロークの円弧点の処理略図一である。
【図３】本発明の一実施例に係る両交差ストロークの円弧点の処理略図二である。
【図４】本発明の一実施例に係る両交差ストロークの円弧点の処理略図三である。
【図５】本発明のオリジナル手書き筆跡の筆鋒実現装置の簡略ブロック図である。
【図１】
2014508992.tif 000035
【図２】
2014508992.tif 000036
【図３】
2014508992.tif 000037
【図４】
2014508992.tif 000038
【図５】
2014508992.tif 000039
【国際調査報告】
2014508992.tif 000040
2014508992.tif 000041
2014508992.tif 000042
2014508992.tif 000043