(57)【要約】      （修正有）【課題】手書きで入力される図形を、特別な操作なしに、所望の属性で表示することができる。【解決手段】描画装置１０は、手書きの入力パターンに対応する図形の描画属性を設定したテーブルを記憶しており、入力手段１６を用いて手書きされる図形を描画して表示手段２０の表示面に表示するにあたって、入力手段により指示された表示面上の点の座標を繰り返し取得し、取得された一連の座標に基づいて手書きの入力パターンを判定し、判定された手書きの入力パターンに応じた描画属性をテーブルに基づいて設定し、そして一連の座標が示す図形を設定された属性で描画する。【選択図】図２
2015176187.tif 000002
【特許請求の範囲】
【請求項１】
入力手段を用いて手書きされる図形を描画して表示手段の表示面に表示する描画装置であって、
前記手書きの入力パターンに対応する前記図形の描画属性を設定したテーブルを記憶する記憶手段、
前記入力手段により指示された前記表示面上の点の座標を繰り返し取得する座標取得手段、
前記座標取得手段によって取得された一連の座標に基づいて前記手書きの入力パターンを判定する入力パターン判定手段、
前記入力パターン判定手段によって判定された前記手書きの入力パターンに応じた描画属性を前記テーブルに基づいて設定する設定手段、および
前記一連の座標が示す図形を前記設定手段によって設定された属性で描画する描画手段を備える、描画装置。
【請求項２】
前記入力パターンは前記手書きの方向または前記手書きの開始位置を含む、請求項１に記載の描画装置。
【請求項３】
前記入力パターンは前記手書きの方向および前記手書きの開始位置を含み、
前記テーブルは、前記手書きの方向に設定される第１描画属性と、前記手書きの開始位置に設定される第１描画属性とは異なる第２描画属性を含む、請求項１に記載の描画装置。
【請求項４】
前記一連の座標が示す図形に外接する枠を算出する算出手段、および
前記算出手段によって算出された枠で規定される範囲を複数の領域に分割する分割手段をさらに備え、
前記入力パターン判定手段は、前記分割手段によって分割された複数の領域のうち、前記一連の座標のうち最初に取得された座標を含む前記領域を前記手書きの開始位置として判定する、請求項２または３に記載の描画装置。
【請求項５】
前記図形は、線分および閉曲線を含み、
前記一連の座標が示す図形に外接する枠を算出する算出手段、
前記算出手段によって算出された枠で規定される範囲を複数の領域に分割する分割手段、
前記分割手段によって分割された複数の領域において、前記一連の座標のうち最初に取得された座標を含む第１の領域と前記一連の座標のうち最後に取得された座標を含む第２の領域とが一致するかどうかを判定する領域判定手段、および
前記領域判定手段によって一致しないことが判定されたとき、前記一連の座標が示す図形を線分と判別し、前記領域判定手段によって一致することが判定されたとき、前記一連の座標が示す図形を閉曲線と判別する図形判別手段をさらに備える、請求項１に記載の描画装置。
【請求項６】
前記入力パターン判定手段は、前記線分と前記閉曲線とを異なる方法で入力パターンを判定する、請求項５記載の描画装置。
【請求項７】
前記テーブルを前記記憶手段に登録する登録手段をさらに備える、請求項１記載の描画装置。
【請求項８】
前記手書き入力手段は、前記表示面に関連して設けられたタッチパネルを含み、
前記座標取得手段は、前記タッチパネルに対するタッチの開始から終了までの一連のタッチ位置に対応する座標を取得する、請求項１記載の描画装置。
【請求項９】
前記描画属性は前記図形を描画する線色、線種および線幅の少なくとも１つを含む、請求項１に記載の描画装置。
【請求項１０】
前記手書きの入力パターンに対する前記描画属性を示す案内画像を前記表示面に表示する案内表示手段をさらに備える、請求項１に記載の描画装置。
【請求項１１】
手書きの入力パターンに対応する図形の描画属性を設定したテーブルを記憶する記憶手段を備え、入力手段を用いて手書きされる図形を描画して表示手段の表示面に表示するコンピュータの描画プログラムであって、
前記コンピュータを、
前記入力手段により指示された前記表示面上の点の座標を繰り返し取得する座標取得手段、
前記座標取得手段によって取得された一連の座標に基づいて前記手書きの入力パターンを判定する判定手段、
前記判定手段によって判定された前記手書きの入力パターンに応じた描画属性を前記テーブルに基づいて設定する設定手段、および
前記一連の座標が示す図形を前記設定手段によって設定された属性で描画する描画手段として機能させる、描画プログラム。
【請求項１２】
手書きの入力パターンに対応する図形の描画属性を設定したテーブルを記憶する記憶手段を備え、入力手段を用いて手書きされる図形を描画して表示手段の表示面に表示するコンピュータの描画制御方法であって、
前記コンピュータは、
（ａ）前記入力手段により指示された前記表示面上の点の座標を繰り返し取得し、
（ｂ）前記ステップ（ａ）において取得した一連の座標に基づいて前記手書きの入力パターンを判定し、
（ｃ）前記ステップ（ｂ）において判定した前記手書きの入力パターンに応じた描画属性を前記テーブルに基づいて設定し、そして
（ｄ）前記一連の座標が示す図形を前記ステップ（ｃ）において設定した属性で描画する、描画制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、描画装置、描画制御プログラムおよび描画制御方法に関し、特にたとえば、タッチパネルやマウスを利用して手書きで入力される図形をディスプレイに表示する、描画装置、描画制御プログラムおよび描画制御方法に関する。
【背景技術】
【０００２】
背景技術の一例が特許文献１に開示されている。この特許文献１のプラズマディスプレイでは、スタイラスペンを用いて描画を行う際に、キャンパス画像と描画画像の色設定を行うためのパレットを表示させ、そこから色を選択するようにしている。
【０００３】
また、背景技術の他の例が特許文献２に開示される。この特許文献２の電子黒板では、カラーパレットの他にツールパレットを表示して、矩形の塗りの色を設定したり、線種、線幅、線色といった線の属性を設定したりする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２９３１４９号公報［G09G 5/00, G06F 3/033, G06F 3/041, G09G 5/38, G09G 3/28］
【特許文献２】特開２００５−３３５１５６号公報［B43L 1/04, G06F 3/033, H04N 1/00］
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１および特許文献２では、色や線の属性を変更する際には、その都度、パレットを用いて色や線の属性を選択する必要があり、操作が面倒である。つまり、使い勝手が悪かった。
【０００６】
それゆえに、この発明の主たる目的は、新規な、描画装置、描画制御プログラムおよび描画制御方法を提供することである。
【０００７】
この発明の他の目的は、手書きで入力される図形を、特別な操作なしに、所望の属性で描画できる、描画装置、描画制御プログラムおよび描画制御方法を提供することである。
【課題を解決するための手段】
【０００８】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【０００９】
第１の発明は、入力手段を用いて手書きされる図形を描画して表示手段の表示面に表示する描画装置であって、手書きの入力パターンに対応する図形の描画属性を設定したテーブルを記憶する記憶手段、入力手段により指示された表示面上の点の座標を繰り返し取得する座標取得手段、座標取得手段によって取得された一連の座標に基づいて手書きの入力パターンを判定する入力パターン判定手段、入力パターン判定手段によって判定された手書きの入力パターンに応じた描画属性をテーブルに基づいて設定する設定手段、および一連の座標が示す図形を設定手段によって設定された属性で描画する描画手段を備える。
【００１０】
第１の発明では、描画装置は、入力手段（１６）を用いて手書きされる図形を描画して表示手段（２０）の表示面に表示する。この描画装置では、記憶手段（１４）が手書きの入力パターンに対応する図形の描画属性を設定したテーブル（７２，７４）を記憶しており、たとえばＣＰＵ（１２）が記憶手段に記憶されたプログラム（５２−６４）の制御下で動作することにより、座標取得手段（Ｓ３０１−Ｓ３０５）、入力パターン判定手段（Ｓ５１３−Ｓ５１７，Ｓ５２１−Ｓ５２５）、設定手段（Ｓ７０７−Ｓ７１３，Ｓ７１７−Ｓ７２３）および描画手段（Ｓ９）が実現される。座標取得手段は、入力手段により指示された表示面上の点の座標を繰り返し取得し、入力パターン判定手段は、座標取得手段によって取得された一連の座標に基づいて手書きの入力パターンを判定する。設定手段は、入力パターン判定手段によって判定された手書きの入力パターンに応じた描画属性をテーブルに基づいて設定し、そして描画手段が、一連の座標が示す図形を設定手段によって設定された属性で描画する。
【００１１】
第１の発明によれば、手書きの入力パターンに対応する図形の描画属性を記憶しておくので、手書きで入力される図形を、その手書きの入力パターンを判定することにより、判定した入力パターンに対応する描画属性で表示することができる。つまり、描画属性を変更する操作をしなくても、所望の属性で画像を描画することができる。
【００１２】
第２の発明は、第１の発明に従属する描画装置であって、入力パターンは手書きの方向または手書きの開始位置を含む。
【００１３】
第２の発明によれば、手書きで入力される図形を、その手書きの方向または手書きの開始位置を判定することにより、判定した手書きの方向または手書きの開始位置に対応する描画属性で表示することができる。
【００１４】
第３の発明は、第１の発明に従属する描画装置であって、入力パターンは手書きの方向および手書きの開始位置を含み、テーブルは、手書きの方向に設定される第１描画属性と、手書きの開始位置に設定される第１描画属性とは異なる第２描画属性を含む。
【００１５】
第３の発明によれば、手書きで入力される図形を、その手書きの方向または手書きの開始位置を判定することにより、手書きの方向に設定される第１描画属性または手書きの開始位置に設定される第２描画属性で表示することができる。
【００１６】
第４の発明は、第２または第３の発明に従属する描画装置であって、一連の座標が示す図形に外接する枠を算出する算出手段、および算出手段によって算出された枠で規定される範囲を複数の領域に分割する分割手段をさらに備え、入力パターン判定手段は、分割手段によって分割された複数の領域のうち、一連の座標のうち最初に取得された座標を含む領域を手書きの開始位置として判定する。
【００１７】
第４の発明では、算出手段および分割手段（Ｓ５０１）がさらに実現される。算出手段は、一連の座標が示す図形に外接する枠（Ｆ）を算出し、分割手段は、算出手段によって算出された枠で規定される範囲を複数の領域（Ｂ１，Ｂ２，…）に分割する。入力パターン判定手段は、分割手段によって分割された複数の領域のうち、一連の座標のうち最初に取得された座標を含む領域を手書きの開始位置として判定する。
【００１８】
第４の発明によれば、図形に外接する枠を算出し、算出された枠で規定される範囲を複数の領域に分割し、そして分割された複数の領域のうち一連の座標のうち最初に取得された座標を含む領域を手書きの開始位置として判定するので、手書きの開始位置を容易に判定できる。
【００１９】
第５の発明は、第１の発明に従属する描画装置であって、図形は、線分および閉曲線を含み、一連の座標が示す図形に外接する枠を算出する算出手段、算出手段によって算出された枠で規定される範囲を複数の領域に分割する分割手段、分割手段によって分割された複数の領域において、一連の座標のうち最初に取得された座標を含む第１の領域と一連の座標のうち最後に取得された座標を含む第２の領域とが一致するかどうかを判定する領域判定手段、および領域判定手段によって一致しないことが判定されたとき、一連の座標が示す図形を線分と判別し、領域判定手段によって一致することが判定されたとき、一連の座標が示す図形を閉曲線と判別する図形判別手段をさらに備える。
【００２０】
第５の発明では、図形は、線分および閉曲線を含み、算出手段、分割手段（Ｓ５０１）、領域判定手段（Ｓ５０７）および図形判別手段（Ｓ５０９，Ｓ５１９）がさらに実現される。算出手段は、一連の座標が示す図形に外接する枠（Ｆ）を算出し、分割手段は、算出手段によって算出された枠で規定される範囲を複数の領域（Ｂ１，Ｂ２，…）に分割する。領域判定手段は、分割手段によって分割された複数の領域において、一連の座標のうち最初に取得された座標を含む第１の領域と一連の座標のうち最後に取得された座標を含む第２の領域とが一致するかどうかを判定する。そして、図形判別手段が、領域判定手段によって一致しないことが判定されたとき、一連の座標が示す図形を線分と判別し、領域判定手段によって一致することが判定されたとき、一連の座標が示す図形を閉曲線と判別する。
【００２１】
第５の発明によれば、図形に外接する枠を算出し、算出された枠で規定される範囲を複数の領域に分割し、そして、その分割された複数の領域において、一連の座標のうち最初に取得された座標を含む第１の領域と最後に取得された座標を含む第２の領域とが一致するかどうかを判定し、一致しないことが判定されたとき図形を線分と判別し、一致することが判定されたとき図形を閉曲線と判別するので、図形が線分か閉曲線かを容易に判定できる。
【００２２】
第６の発明は、第５の発明に従属する描画装置であって、入力パターン判定手段は、線分と閉曲線とを異なる方法で入力パターンを判定する。
【００２３】
第６の発明によれば、線分および閉曲線にそれぞれ適した方法で入力パターンを判定できる。
【００２４】
第７の発明は、第１の発明に従属する描画装置であって、テーブルを記憶手段に登録する登録手段をさらに備える。
【００２５】
第７の発明では、登録手段（Ｓ１０５，Ｓ１０７）がさらに実現される。
【００２６】
第７の発明によれば、手書きの入力パターンに対応する図形の描画属性をテーブルに登録することで、より多様な属性で手書きの画像を描画できるようになる。
【００２７】
第８の発明は、第１の発明に従属する描画装置であって、手書き入力手段は、表示面に関連して設けられたタッチパネルを含み、座標取得手段は、タッチパネルに対するタッチの開始から終了までの一連のタッチ位置に対応する座標を取得する。
【００２８】
第８の発明によれば、タッチパネルに対するタッチの開始から終了までの一連のタッチ位置に対応する画像を、特別な操作なしに、所望の属性で描画することができる。
【００２９】
第９の発明は、第１の発明に従属する描画装置であって、描画属性は図形を描画する線色、線種および線幅の少なくとも１つを含む。
【００３０】
第９の発明によれば、手書きで入力される図形を、特別な操作なしに、所望の色、種類、太さの線の少なくとも１つで描画できる。
【００３１】
第１０の発明は、第１の発明に従属する描画装置であって、手書きの入力パターンに対する描画属性を示す案内画像を表示面に表示する案内表示手段をさらに備える。
【００３２】
第１０の発明では、案内表示手段（Ｓ１０３）がさらに実現され、案内表示手段は、手書きの入力パターンに対する描画属性を示す案内画像を表示面に表示する。
【００３３】
第１０の発明によれば、案内画像を表示することで、手書きの入力パターンと図形の描画属性との対応関係をユーザに一目で理解させることができる。
【００３４】
第１１の発明は、手書きの入力パターンに対応する図形の描画属性を設定したテーブル（７２，７４）を記憶する記憶手段（１４）を備え、入力手段（１６）を用いて手書きされる図形を描画して表示手段（２０）の表示面に表示するコンピュータ（１２）の描画プログラム（５２−６４）であって、コンピュータを、入力手段により指示された表示面上の点の座標を繰り返し取得する座標取得手段（Ｓ３０１−Ｓ３０５）、座標取得手段によって取得された一連の座標に基づいて手書きの入力パターンを判定する判定手段（Ｓ５１３−Ｓ５１７，Ｓ５２１−Ｓ５２５）、判定手段によって判定された手書きの入力パターンに応じた描画属性をテーブルに基づいて設定する設定手段（Ｓ７０７−Ｓ７１３，Ｓ７１７−Ｓ７２３）、および一連の座標が示す図形を設定手段によって設定された属性で描画する描画手段（Ｓ９）として機能させる、描画プログラムである。
【００３５】
第１２の発明は、手書きの入力パターンに対応する図形の描画属性を設定したテーブル（５２−６４）を記憶する記憶手段（１４）を備え、入力手段（１６）を用いて手書きされる図形を描画して表示手段（２０）の表示面に表示するコンピュータ（１２）の描画制御方法であって、コンピュータは、（ａ）入力手段により指示された表示面上の点の座標を繰り返し取得し（Ｓ３０１−Ｓ３０５）、（ｂ）ステップ（ａ）において取得した一連の座標に基づいて手書きの入力パターンを判定し（Ｓ５１３−Ｓ５１７，Ｓ５２１−Ｓ５２５）、（ｃ）ステップ（ｂ）において判定した手書きの入力パターンに応じた描画属性をテーブルに基づいて設定し（Ｓ７０７−Ｓ７１３，Ｓ７１７−Ｓ７２３）、そして（ｄ）一連の座標が示す図形をステップ（ｃ）において設定した属性で描画する（Ｓ９）。
【００３６】
第１１および第１２の各発明によっても、第１の発明と同様に、手書きで入力される図形を、その手書きの入力パターンを判定することにより、判定した入力パターンに対応する描画属性で表示することができる。
【発明の効果】
【００３７】
この発明によれば、手書きの入力パターンに対応する図形の描画属性を記憶しておくので、手書きで入力される図形を、その手書きの入力パターンを判定することにより、判定した入力パターンに対応する描画属性で表示することができる。つまり、描画属性を変更する操作をしなくても、所望の属性で画像を描画することができる。
【図面の簡単な説明】
【００３８】
【図１】この発明の第１実施例である描画装置のハードウェア構成を示すブロック図である。
【図２】タッチパネルを用いて図形を手書きした場合のディスプレイの表示例を示す図解図である。
【図３】手書きの図形が線分および閉曲線のいずれであるかを判定するための判定領域およびその分割領域の設定方法の一例を説明するための図解図である。
【図４】手書きの図形が線分および閉曲線のいずれであるかを判定するための判定領域およびその分割領域の設定方法の他の例を説明するための図解図である。
【図５】手書きの図形が閉曲線である場合に、手書きの周回方向を判定する方法を説明するための図解図である。
【図６】図１に示すメモリのメモリマップを示す図解図である。
【図７】図１に示すメモリに記憶された線分用テーブルと閉曲線用テーブルの一例を示す。
【図８】図１に示すＣＰＵの描画処理を示すフロー図である。
【図９】図１に示すＣＰＵの初期処理を示すフロー図である。
【図１０】図１に示すＣＰＵの手書き情報取得処理を示すフロー図である。
【図１１】図１に示すＣＰＵの入力パターン判定処理を示すフロー図である。
【図１２】図１に示すＣＰＵの描画属性設定処理を示すフロー図である。
【図１３】図１に示すＣＰＵの入力パターン判定処理の他の例を示す図解図である。
【図１４】この発明の第２実施例の手書きの入力パターンに対応する描画属性の閉曲線用テーブルの一例を示す図解図である。
【図１５】図１４に示す閉曲線用テーブルが登録されている場合において、四角形を手書きした場合に、手書きの方向および手書きの開始位置に基づく描画結果の例を示す図解図である。
【図１６】第２実施例におけるＣＰＵの入力パターン判定処理の一例を示すフロー図である。
【図１７】この発明の第３実施例の手書きの入力パターンに対応する描画属性の閉曲線用テーブルの一例を示す図解図である。
【図１８】図１７に示す閉曲線用テーブルが登録されている場合において、四角形を手書きした場合に、手書きの開始位置に基づく描画結果の例を示す図解図である。
【図１９】第３実施例におけるＣＰＵの入力パターン判定処理の一例を示すフロー図である。
【図２０】分割領域の他の例を示す図解図である。
【発明を実施するための形態】
【００３９】
［第１実施例］
図１を参照して、この発明の第１実施例である描画装置１０はＣＰＵ１２を含む。ＣＰＵ１２には、バス３０を介してメモリ１４およびタッチパネル１６が接続され、さらにバス３０および描画コントローラ１８を介してディスプレイ２０が接続される。
【００４０】
この描画装置１０は、たとえば、電子黒板、タブレット端末、スマートフォンなど、手書き入力に応じて、手書きの文字、図形、記号および画像等がディスプレイに描画（表示）される、各種の情報機器ないし電子機器に適用される。
【００４１】
図１に戻って、ＣＰＵ１２は、描画装置１０の全体的な制御を司る。メモリ１４は、ＣＰＵ１２によって処理を実行される各種のプログラムおよび各種のプログラムの実行に必要なデータを記憶し（図６参照）、ＣＰＵ１２のワーク領域およびバッファ領域として用いられる。
【００４２】
タッチパネル１６は、ユーザのタッチ入力を検出して、このタッチ入力で指示される位置の座標（タッチ座標）のデータ（タッチ座標データ）をＣＰＵ１２に出力する。タッチパネル１６は、汎用のタッチパネルであり、静電容量方式、電磁誘導方式、抵抗膜方式、赤外線方式など、任意の方式のものを用いることができる。この第１実施例では、タッチパネル１６としては、静電容量方式のタッチパネルがディスプレイ２０の表示面上に設けられる。したがって、タッチパネル１６（ＣＰＵ１２）は、ディスプレイ２０の表示面（表示領域）に対するタッチ入力を検出可能である。描画コントローラ１８は、ＧＰＵ、ＶＲＡＭなどを含み、ＣＰＵ１２の指示の下で、ディスプレイ２０の画面に各種の画像を描画する。
【００４３】
このような構成の描画装置１０では、手書き入力モードにおいて、ユーザがタッチパネル１６を利用して図形を手書きで入力（タッチ入力）すると、手書きの入力に従ってタッチパネル１６はタッチ位置に対応するタッチ座標データをＣＰＵ１２に出力する。
【００４４】
たとえば、ユーザは、専用のペンや指でタッチパネル１６を操作する。また、タッチパネル１６を用いた入力としては、タップ（短押し）、スライド（ドラッグ）、フリック、ロングタッチ（長押し）などがあり、この第１実施例では、これらを「タッチ入力」または単に「入力」のように総称する。また、タッチパネル１６をタッチしていない状態からタッチする状態に変化することをタッチオン（ペンダウン）と言い、タッチパネル１６をタッチしている状態からタッチしていない状態に変化することをタッチオフ（ペンアップ）と言う。継続的なタッチ入力つまりスライドやフリックによる入力に対しては、タッチパネル１６は、現在のタッチ位置に対応するタッチ座標データを所定周期（たとえば、１〜数フレームであり、１フレームは１／３０秒または１／６０秒）よりも短い周期で出力する。
【００４５】
この第１実施例では、タッチオン（ペンダウン）からタッチオフ（ペンアップ）までの一連のタッチ位置に対応するタッチ座標データが検出され、検出された一連のタッチ座標データが示す図形を描画コントローラ１８でＶＲＡＭに描画し、ディスプレイ２０に表示する。
【００４６】
一般的な電子黒板においては、ディスプレイにカラーパレットやツールパレットなどが表示され、これらを用いて描画（表示）する図形等の線色、線種および線幅を選択したり、描画した図形またはその一部を構成する面（閉曲線）を所望の色で塗りつぶしたりする。
【００４７】
このような一般的な電子黒板では、線色、線種および線幅などの描画属性を変化させる度に、カラーパレット等を用いて描画属性を選択する操作が必要であり、非常に面倒である。
【００４８】
そこで、この第１実施例では、入力パターンに対応する図形の描画属性を予め設定したテーブルを記憶しておき、ユーザが手書きで図形を描画した場合に、その手書きの入力パターンを判定し、テーブルを参照して、判定した入力パターンに対応する図形の描画属性を設定し、設定した描画属性で手書きの図形を描画（表示）するようにしてある。このため、面倒な操作をすることなく、所望の描画属性で図形を描画（表示）することができる。
【００４９】
簡単に説明すると、この第１実施例では、図形を手書きした際の手書きの入力の方向に応じて、異なる描画属性の図形が描画される。たとえば、図形は、線分と閉曲線を意味し、特に、この第１実施例では、手書きの入力の方向に応じて描画属性を変えるため、方向を判定することができる、一筆書きの線分および閉曲線を意味する。
【００５０】
ここで、線分の場合、手書き入力の方向は、始点と終点の位置関係で容易に知ることができると考えられるが、閉曲線の場合、手書き入力の方向は、始点と終点の位置関係だけでは知ることができない。したがって、線分と閉曲線では入力パターン（第１実施例では、手書きの方向）の判定方法を変える必要がある。このため、手書きした図形が線分および閉曲線のいずれであるかを判別し、判別結果（線分または閉曲線）に応じた方法で、手書き入力の方向を判別し、手書きした図形を判別結果に従った描画属性で描画し、ディスプレイ２０に表示するようにしてある。
【００５１】
ただし、手書き入力の方向とは、図形を手書きした際にペンないし指（手）を動かした方向を意味する。線分を手書きする場合には、始点（手書き開始位置）から終点（手書き終了位置）に向かう方向（たとえば、右方向、左方向）を意味する。また、閉曲線を手書きする場合には、始点（手書き開始位置）から終点（手書き終了位置）に向かう周回の方向（たとえば、右回り、左回り）を意味する。
【００５２】
この第１実施例では、線分は、２点間（所定距離以上離れた始点および終点）を結ぶ直線のみならず、曲線、折れ線、波線も含む。また、閉曲線は、端部のない（始点および終点が同じ位置にある）閉じた線であり、典型的には、円や四角形などの多角形である。ただし、図形を手書きするため、始点と終点が異なる位置であっても近傍に存在する場合には、閉曲線と判断するようにしてある。
【００５３】
なお、図形以外の文字等が手書きされた場合には、デフォルトで設定された描画属性（線色、線種、線幅）で描画され、ディスプレイ２０に表示される。ただし、デフォルトの設定が変更されている場合には、変更後の描画属性に従って文字等がディスプレイ２０に表示される。
【００５４】
図２は、第１実施例において、手書き入力モードで図形を手書きした場合のディスプレイ２０の表示例を示す。図２に示すように、ディスプレイ２０の表示面には、その左端部に、現在設定（登録）されている入力パターンに対応する図形の描画属性の案内画像Ｇが表示される。この案内画像Ｇによれば、右向きに線分を手書きすると、黒色の線分がディスプレイ２０に表示（描画）され、左向き線分を手書きすると、赤色の線分がディスプレイ２０に表示されることが分かる。また、案内画像Ｇによれば、右回り（時計回り）で閉曲線を手書きすると、黒色の閉曲線がディスプレイ２０に表示され、左回り（反時計回り）で閉曲線を手書きすると、赤色の閉曲線がディスプレイ２０に表示されることが分かる。したがって、たとえば、図２に示すように、タッチパネル１６上でペンを右斜め下方向に直線的に移動させるように手書きすると、ペンを移動させた軌跡に対応して、黒色の線分がディスプレイ２０に表示される。
【００５５】
なお、実際のディスプレイ２０では案内画像Ｇに含まれる線自体に色を付すことができるため、案内画像Ｇに「黒」や「赤」の文字は表記されない。
【００５６】
また、この第１実施例では、タッチパネル１６は左上の頂点が原点Ｏに設定され、紙面の右方向がＸ軸のプラス方向に設定され、紙面の下方向がＹ軸のプラス方向に設定される。また、タッチパネル１６とディスプレイ２０は同じ座標系に設定される。したがって、タッチパネル１６で検出されたタッチ座標をそのままディスプレイ２０の表示位置の座標として使用することができる。この第１実施例においては、Ｘ軸のプラス方向を右（方向）といい、Ｘ軸のマイナス方向を左（方向）といい、Ｙ軸のプラス方向を下（方向）といい、Ｙ軸のマイナス方向を上（方向）ということがある。
【００５７】
さらに、図２では、案内画像Ｇを表示するようにしてあるが、案内画像Ｇは表示しなくてもよい。案内画像Ｇを表示しない場合には、ディスプレイ２０の表示面の全体を手書き領域（表示領域）として使用することができる。
【００５８】
次に、図３および図４を用いて、描画された図形が線分および閉曲線のいずれであるかを判別する方法を説明し、さらに、図５を用いて、閉曲線を手書きした際の手書きの方向を判別する方法を説明する。
【００５９】
図形を判別する場合には、まず、判別するための領域（判別領域）Ｆが設定される。具体的には、図形の判別には、タッチオンからタッチオフまでに検出された一連のタッチ座標が用いられる。この第１実施例では、一連のタッチ座標からＸ座標の最大値と最小値を検出するとともに、Ｙ座標の最大値と最小値を検出する。これらの４つの値を用いて、判別する図形に外接する四角形を設定（計算）する。この四角形で囲まれる範囲が判別領域Ｆである。
【００６０】
次に、判別領域Ｆが複数の領域に分割される。この第１実施例では、判別領域Ｆは９個の領域に均等に分割される。以下、分割された各領域を分割領域Ｂｉ（ｉ＝１，２，…，９）と呼ぶことにする。そして、図形を手書きした際の始点と終点が分割された領域（分割領域）Ｂｉのいずれに含まれるかが検出される。始点と終点とが同じ分割領域Ｂｉ内である場合には、手書きされた図形は閉曲線と判別され、始点が含まれる分割領域Ｂｉと終点が含まれる分割領域Ｂｉが異なる場合には、手書きされた図形は線分と判別される。
【００６１】
図３は、線分（曲線）が手書きされた場合に設定される判別領域Ｆおよび分割領域Ｂｉを示す。図形を判別する場合には、検出したタッチ座標をそのまま使用するため、タッチパネル１６（ディスプレイ２０）と同じ座標系で判別処理が実行される。図３（図４も同じ）では、実線の四角で規定される範囲がタッチパネル１６の検出領域（ディスプレイ２０の表示領域）に相当する。
【００６２】
また、図３（図４も同じ）では、Ｐが始点（手書き開始位置）を示し、Ｑが終点（手書き終了位置）を示す。図３に示す例の線分の場合には、タッチオンからタッチオフまでに検出された一連のタッチ座標のうち、始点Ｐの２次元座標がＸ座標の最小値およびＹ座標の最小値となり、終点Ｑの２次元座標がＸ座標の最大値およびＹ座標の最大値となる。上述したように、これらの４つの値を用いて判定領域Ｆが設定され、さらに、均等に９個の分割領域Ｂｉが設定される。第１実施例では、図形（線分）に外接する矩形の判定領域Ｆが設定され、判定領域Ｆの縦横をそれぞれ三等分することにより、９個の分割領域Ｂｉが設定される。
【００６３】
図３からも分かるように、始点Ｐは分割領域Ｂ１に含まれ、終点Ｑは分割領域Ｂ９に含まれる。このように、始点Ｐと終点Ｑとは異なる分割領域Ｂｉに含まれるため、手書きの図形は線分と判別される。ただし、分割領域Ｂｉの大きさないし範囲は、それぞれ、対角となる２つの頂点の座標で規定されており、分割領域Ｂｉ毎に、２つの頂点の座標で規定される範囲に始点Ｐまたは終点Ｑが含まれるかどうかが判断される。この実施例では、分割領域Ｂｉの範囲は、左上の頂点の座標と右下の頂点の座標で規定される。具体的には、分割領域Ｂ１の範囲は、座標（ｂｘ０，ｂｙ０）と座標（ｂｘ１，ｂｙ１）で規定される。また、分割領域Ｂ９の範囲は、座標（ｂｘ２，ｂｙ２）と座標（ｂｘ３，ｂｙ３）で規定される。他の分割領域Ｂ２−Ｂ８についても同様である。ただし、右上の頂点の座標と左下の頂点の座標で規定してもよい。
【００６４】
なお、図３（図４も同じ）に示す判定領域Ｆ（分割領域Ｂｉを含む）は単なるイメージであり、この判定領域Ｆがディスプレイ２０に表示されることは無い。
【００６５】
また、図示は省略するが、直線、折れ線、波線などの他の線分についても同様である。
【００６６】
さらに、図３では、右斜め下方向に線分を手書きした例について示してあるため、判定領域Ｆおよび複数の分割領域Ｂｉが設定されるが、Ｘ軸と平行な線分が手書きされた場合には、判定領域Ｆおよび複数の分割領域Ｂｉを設定することができない場合がある。したがって、この第１実施例では、Ｙ座標の最大値と最小値の差分が所定値以下である場合には、判定領域Ｆおよび分割領域Ｂｉを設定するまでも無く、図形は線分であると判定するようにしてある。所定値は、開発者らの実験等によって設定され、ディスプレイ２０の大きさ等によって適宜変更される値である。
【００６７】
図４は、閉曲線（四角）が手書きされた場合に設定される判別領域Ｆおよび分割領域Ｂｉを示す。図４に示す例の閉曲線の場合には、タッチオンからタッチオフまでに検出された一連のタッチ座標のうち、点Ｔ１のＹ座標がＹ座標の最小値となり、点Ｔ２のＸ座標がＸ座標の最大値となり、点Ｔ３のＹ座標がＹ座標の最大値となり、そして、点Ｔ４（または点Ｔ３）のＸ座標がＸ座標の最小値となる。上述したように、これらの４つの値を用いて判定領域Ｆが設定され、さらに、均等に９個の分割領域Ｂｉが設定される。図４からも分かるように、始点Ｐと終点Ｑは同じ分割領域Ｂ１に含まれるため、手書きの図形は閉曲線と判別される。
【００６８】
図示および説明は省略するが、四角形以外の多角形や円のような閉曲線が手書きされた場合にも、図４に示したように、判定領域Ｆおよび分割領域Ｂｉが設定される。
【００６９】
このように、第１実施例では、タッチオンからタッチオフまでに検出された一連のタッチ座標から判定領域Ｆを設定し、さらに、この判定領域Ｆを所定数に均等に分割した分割領域Ｂｉを設定し、始点が含まれる分割領域Ｂｉと終点が含まれる分割領域Ｂｉとが一致するかどうかで、手書きの図形が線分か閉曲線かが判別される。
【００７０】
手書きの図形が線分または閉曲線に判別されると、次に、入力パターンが判定される。この第１実施例では、図形を手書き入力した際の手書きの方向が判定される。図形が線分である場合には、始点と終点のＸ座標を比較することにより、手書きの方向が右方向または左方向に判定される。具体的には、終点のＸ座標が始点のＸ座標以上の大きさである場合には、手書きの方向が右方向に判定される。一方、終点のＸ座標が始点のＸ座標よりも小さい場合には、手書きの方向が左方向に判定される。
【００７１】
なお、この第１実施例では、始点のＸ座標と終点のＸ座標が一致する場合には、手書きの方向が右方向に設定するようにしてあるが、これに限定される必要は無く、縦方向（上下方向）に線分が描画されたと判断して、デフォルトで設定される描画属性で線分を描画（表示）するようにしてもよい。
【００７２】
次に、図形が閉曲線と判別された場合に、その手書きの方向を求める（判定する）方法について説明する。図５は、手書き入力された閉曲線が右回りか左回りかを判定する場合に、その閉曲線で囲まれる範囲の符号付面積を計算する方法を説明するための図解図である。
【００７３】
なお、手書き入力された閉曲線では、始点Ｐと終点Ｑとが一致するとは限らないため、符号付面積を計算する場合には、その前処理として、始点Ｐおよび終点Ｑの一方を他方に重なるように移動させるようにしてある。
【００７４】
図５において、たとえば、検出されたタッチ座標に対応するタッチ位置Ｐ１，Ｐ２，…，Ｐnの各座標（タッチ座標）を（Ｘ１，Ｙ１），（Ｘ２，Ｙ２），…，（Ｘｎ，Ｙｎ）とすると、それらの座標の列で囲まれる範囲の符号付面積Ｓは数１に従って計算される。ただし、タッチ位置Ｐ１，Ｐ２，…，Ｐnは、タッチンオンからタッチオフまでに検出されたタッチ位置であり、各タッチ位置に対応するタッチ座標の列は、時系列に従って並んでいる。
【００７５】
［数１］
Ｓ＝（１／２）＊Σ（ｉ＝１，ｎ)｛Ｘｉ＊Ｙｉ＋１−Ｘｉ＋１＊Ｙｉ｝
ただし、数１において、ｎは３以上の整数であり、記号＊は乗算を意味する。また、中括弧内は、原点Ｏから点Ｐｉへのベクトルと原点Ｏから点Ｐｉ＋１へのベクトルの外積であり、その外積の絶対値が３点Ｏ，ＰｉおよびＰｉ＋１で規定される平行四辺形の符号付面積（図５の領域Ｒｉの符号付面積）を意味し、その符号が点Ｐｉから点Ｐｉ＋１への方向を意味する。具体的には、符号が正であれば、右回りであり、符号が負であれば、左回りである。このような計算を変数ｉ＝１，２，…，ｎの各々について行い、各領域Ｒｉの計算結果（面積）を合計し、その合計を２で割れば、タッチ位置Ｐ１，Ｐ２，…，Ｐnの座標の列（Ｘ１，Ｙ１），（Ｘ２，Ｙ２），…，（Ｘｎ，Ｙｎ）で囲まれる範囲の符号付面積Ｓが求められる。
【００７６】
このように、閉曲線で囲まれる範囲の符号付面積Ｓを求める過程において知り得た情報（符号）によって、当該閉曲線を手書きした際の手書きの方向を知ることができる。
【００７７】
なお、この符号付面積Ｓを求める手法を用いる場合には、タッチ座標のすべてを用いる必要は無く、一部のタッチ座標を用いれば良いと考えられる。この第１実施例では、面積を正確に求める必要が無いからである。
【００７８】
また、この第１実施例では、閉曲線で囲む範囲の符号付面積Ｓを求めることにより、手書きの方向を求めるようにしてあるが、これに限定される必要はない。
【００７９】
たとえば、時系列に従って検出されたタッチ座標の一部または全部を用いて、先に検出されたタッチ座標が示すタッチ位置を始点とし、その次に検出されたタッチ座標が示すタッチ位置を終点とするベクトルをそれぞれ算出する。そして、ベクトルの方向がどのように変化するかによって、閉曲線を手書きした際の手書きの方向を求めるようにしてもよい。
【００８０】
また、タッチ位置が含まれる分割領域Ｂｉの時間変化を検出することにより、分割領域Ｂｉがどのように変化するかによって、閉曲線を手書きした際の手書きの方向を求めるようにしてもよい。
【００８１】
このように、手書きの図形が線分または閉曲線に判別され、入力パターン（この第１実施例では、手書きの方向）が判定される。入力パターンが判定されると、この入力パターンに対応して予め設定された描画属性が、テーブル（図７参照）を参照して取得（設定）される。そして、取得した描画属性で、手書き入力された図形が描画され、ディスプレイ２０に表示される。
【００８２】
図６は、メモリ１４のメモリマップ４０を示す。メモリ１４は、プログラム記憶領域５０およびデータ記憶領域７０を含む。プログラム記憶領域５０には、描画制御プログラムが記憶される。描画制御プログラムは、入力検出プログラム５２、属性登録プログラム５４、図形判別プログラム５６、入力パターン判定プログラム５８、属性設定プログラム６０、描画プログラム６２および表示プログラム６４で構成される。
【００８３】
なお、属性設定プログラム５４および表示プログラム６４の少なくとも一方を除いて、描画制御プログラムということもある。また、プログラム記憶領域５０には、描画制御プログラム以外にも、各種のメニューを設定するためのプログラムや所定のアプリケーションプログラムなども記憶される。
【００８４】
入力検出プログラム５２は、タッチパネル１６から出力されたタッチ座標データを取得し、データ記憶領域７０に時系列に従って記憶するためのプログラムである。ただし、入力検出プログラム５２は、他の入力装置（キーボードなど）からの入力を検出するためのプログラムでもある。ただし、入力装置は、ハードウェアのキーボードのみならず、ディスプレイ２０に表示されるソフトウェアのキーボードも含まれる。
【００８５】
属性登録プログラム５４は、入力検出プログラム５２に従って検出された入力装置からの入力に応じて、入力パターンに対する描画属性を登録するためのプログラムである。この属性設定プログラム５４が実行されることにより、後述する線分用テーブル７２および閉曲線用テーブル７４が登録（更新）される。
【００８６】
図形判別プログラム５６は、手書きの図形が線分および閉曲線のいずれであるかを判別するためのプログラムである。入力パターン判定プログラム５８は、入力パターンを判定するためのプログラムである。この第１実施例では、入力パターン判定プログラム５８に従って、図形を手書きした際の手書きの方向が判定される。
【００８７】
属性設定プログラム６０は、入力パターン判定プログラム５８に従って判定された入力パターンに応じて描画属性を設定するためのプログラムである。この第１実施例では、線分用テーブル７２または閉曲線用テーブル７４を用いて、入力パターンに応じた描画属性が設定される。
【００８８】
描画プログラム６２は、属性設定プログラム６０に従って設定された描画属性で、入力検出プログラム５２に従って検出されたタッチ座標データが示す図形（画像）を描画するためのプログラムである。描画プログラム６２が実行されると、ＣＰＵ１２の指示の下、描画コントローラ１８において、ＧＰＵが設定された属性で図形をＶＲＡＭに描画する。つまり、ディスプレイ２０に出力するための画面データが生成される。
【００８９】
表示プログラム６４は、描画プログラム６２に従って生成された画面データをディスプレイ２０に出力し、その表示面に図形（画像）を表示するめのプログラムである。
【００９０】
また、データ記憶領域７０には、線分用テーブル７２、閉曲線用テーブル７４、画像生成データ７６、タッチ座標データ７８、手書き図形データ８０、分割領域データ８２、始点領域データ８４、終点領域データ８６、図形判別データ８８、入力パターンデータ９０および描画属性データ９２などが記憶される。
【００９１】
線分用テーブル７２は、手書き入力した図形が線分である場合に参照されるテーブルデータであって、入力パターンに対応して描画属性が設定される。閉曲線用テーブル７４は、手書き入力した図形が閉曲線である場合に参照されるテーブルデータであって、入力パターンに対応して描画属性が設定される。
【００９２】
上述したように、線分用テーブル７２および閉曲線用テーブル７４は、属性設定プログラム５４に従って、ユーザの操作によって登録（設定）および更新される。
【００９３】
図７（Ａ）には線分用テーブル７２の一例が示され、図７（Ｂ）には閉曲線用テーブル７４の一例が示される。
【００９４】
図７（Ａ）を参照して、線分用テーブル７２には、入力パターンに対応して描画属性が記述（設定）される。各設定情報には番号が付され、識別可能に登録されている。このことは、後述する閉曲線用テーブル７４も同様である。図７（Ａ）に示す例では、入力パターンとして、手書きの方向が記述され、属性情報として線色が記述される。具体的には、番号１には、入力パターンとして「右向き」が記述され、これに対応して、描画属性として「黒」が記述される。また、番号２には、入力パターンとして「左向き」が記述され、これに対応して、描画属性として「赤」が記述される。
【００９５】
また、図７（Ｂ）を参照して、閉曲線用テーブル７４には、入力パターンに対応して描画属性が記述（設定）される。図７（Ｂ）に示す例では、入力パターンとして、手書きの方向が記述され、属性情報として線色が記述される。具体的には、番号１には、入力パターンとして「右回り」が記述され、これに対応して、描画属性として「黒」が記述される。また、番号２には、入力パターンとして「左回り」が記述され、これに対応して、描画属性として「赤」が記述される。
【００９６】
なお、各テーブル（７２、７４）の内容の一部または全部は、初期設定（デフォルト）されていても良い。
【００９７】
図６に戻って、画像生成データ７６は、ディスプレイ２０に表示する画面についての画面データを生成するためのポリゴンデータやテクスチャデータなどである。つまり、画像生成データ７６は、図２に示したような案内画像Ｇや手書きの図形についての画像データを含む画面データを生成するために描画コントローラ１８によって用いられる。タッチ座標データ７８は、タッチパネル１６から出力された現在のタッチ座標データであり、タッチパネル１６から出力される度に更新（上書き）される。
【００９８】
手書き図形データ８０は、１または複数の手書き図形の各々ついてのデータである。具体的には、手書き図形データ８０は、図形を手書きしたときのタッチオンからタッチオフまでの一連のタッチ座標データを含み、手書きの図形が複数の場合には、各々の図形について一連のタッチ座標データが図形単位で記憶される。ただし、現在手書き中である場合には、タッチオンから現フレームまでの一連のタッチ座標データが記憶される。
【００９９】
分割領域データ８２は、図形判別プログラム５６に従って図形を線分または閉曲線に判定する場合に決定（計算）される判定領域Ｆに含まれる分割領域Ｂｉのデータである。具体的には、分割領域Ｂｉのそれぞれの範囲を規定するための対角の２つの頂点についての座標データが分割領域Ｂｉ毎に記憶される。
【０１００】
始点領域データ８４は、図形を手書きしたときの手書き開始位置が含まれる分割領域Ｂｉ（以下、「始点領域」ということがある）を示すデータである。終点領域データ８６は、図形を手書きしたときの手書き終了位置が含まれる分割領域Ｂｉ（以下、「終点領域」ということがある）を示すデータである。ただし、始点領域データ８４および終点領域データ８６は、描画属性を設定中の図形について判定された始点領域および終点領域のデータである。このことは、後述する図形判別データ８８および入力パターンデータ９０についても同様である。
【０１０１】
図形判別データ８８は、図形判別プログラム５６に従って判別された図形の種類（線分または閉曲線）を示すデータである。入力パターンデータ９０は、入力パターン判定プログラム５８に従って判定された入力パターンを示すデータである。上述したように、この第１実施例では、入力パターンは、手書きの方向である。
【０１０２】
描画属性データ９２は、属性設定プログラム６０に従って設定された描画属性を示すデータである。ただし、複数の図形が手書き（ディスプレイ２０に表示）されている場合には、各図形（各図形についての一連のタッチ座標データ）に対応して、それぞれの描画属性が記憶される。
【０１０３】
なお、図示は省略するが、データ記憶領域７０には、上記の各種プログラムの実行に必要な、他のデータが記憶されたり、カウンタ（タイマ）やフラグが設定されたりする。
【０１０４】
図８は、図１に示したＣＰＵ１２によって実行される手書き入力処理のフロー図である。ユーザの操作に従って手書き入力モードが選択されると、ＣＰＵ１２は手書き入力処理を開始し、ステップＳ１で、初期化処理（図９参照）を実行する。詳細については後述するが、この初期化処理では、ＣＰＵ１２は、案内画像Ｇを表示し、必要に応じて、描画属性（テーブル（７２、７４））および案内画像Ｇを更新する。
【０１０５】
次のステップＳ３では、手書き情報取得処理（図１０参照）を実行する。詳細については後述するが、この手書き情報取得処理では、ＣＰＵ１２は、ユーザが手書き入力した際に、タッチパネル１６から出力されるタッチ座標データを取得し、データ記憶領域７０に時系列に従って記憶する。
【０１０６】
続くステップＳ５では、入力パターン判定処理（図１１参照）を行う。詳細については後述するが、この入力パターン判定処理では、ＣＰＵ１２は、ステップＳ３で取得した手書き入力情報に基づいて、図形を手書きしたときの手書きの入力パターンを判定する。
【０１０７】
次に、ステップＳ７では、描画属性設定処理（図１２参照）を実行する。詳細については後述するが、この描画属性設定処理では、各テーブル（７２、７４）から、ステップＳ５で判定された入力パターンに対応する描画属性が設定される。ただし、入力パターンに対応して設定された描画属性（線色、線種、線幅）のうち、テーブル（７２、７４）で設定されていない項目については、デフォルト値が設定される。つまり、第１実施例では、線種および線幅はデフォルト設定される。
【０１０８】
続いて、ステップＳ９で、ステップＳ７で設定され描画属性に従って、ステップＳ３において取得した一連のタッチ座標が示す図形を描画し、ステップＳ１１で、描画した図形をディスプレイ２０に表示する。つまり、描画コントローラ１８において、ＧＰＵがＶＲＡＭに描画属性に従う図形を含む画面データを描画（生成）し、生成された画面データがディスプレイ２０に出力される。
【０１０９】
そして、ステップＳ１１で、手書き入力処理を終了するかどうかを判断する。ここでは、ＣＰＵ１２は、手書き入力モードを終了する指示が入力されたかどうかを判断する。ステップＳ１１で“ＮＯ”であれば、つまり手書き入力処理を終了しない場合には、そのままステップＳ３に戻る。一方、ステップＳ１１で“ＹＥＳ”であれば、つまり手書き入力処理を終了する場合には、そのまま終了する。
【０１１０】
なお、図示は省略するが、手書き入力処理の終了時に、データ記憶領域７０に記憶されている各テーブル（７２、７４）は、図示しない不揮発性のメモリに保存（セーブ）される。
【０１１１】
図９は、図８のステップＳ１の初期処理のフロー図である。図９に示すように、ＣＰＵ１２は、初期処理を開始すると、まずステップＳ１０１で、不揮発性のメモリに保存された線分用テーブル７２および閉曲線用テーブル７４をメモリ１４に読み込み、ステップＳ１０３で、案内画像Ｇをディスプレイ２０に表示する。ここでは、ステップＳ１０１でメモリ１４に読み込んだ線分用テーブル７２および閉曲線用テーブル７４に従う案内画像Ｇの画像データを生成し、ディスプレイ２０に出力する。
【０１１２】
次のステップＳ１０５では、描画属性を変更する操作が有るかどうかを判断する。ステップＳ１０５で“ＮＯ”であれば、つまり描画属性を変更する操作が無ければ、そのまま図８に示した手書き入力処理にリターンする。一方、ステップＳ１０５で“ＹＥＳ”であれば、つまり描画属性を変更する操作が有れば、ステップＳ１０７で、描画属性を変更する操作に従って描画属性を変更する。つまり、ＣＰＵ１２は、ユーザの操作に従って、線分用テーブル７２および閉曲線用テーブル７４の少なくとも一方を変更（更新）する。
【０１１３】
そして、ステップＳ１０９で、案内画像を更新し、手書き入力処理にリターンする。ステップＳ１０９では、ＣＰＵ１２は、更新された線分用テーブル７２および閉曲線用テーブル７４に従う案内画像Ｇの画像データを生成し、この画像データを含む画面データをディスプレイ２０に出力する。
【０１１４】
図１０は、図８のステップＳ３に示した入力情報取得処理のフロー図である。図１０に示すように、入力情報取得処理を開始すると、ＣＰＵ１２は、まずステップＳ３０１で、タッチオン（ペンダウン）であるかどうかを判断する。具体的には、ＣＰＵ１２は、タッチパネル１６からタッチ座標データが出力されていない状態から出力される状態に変化されたかどうかを判断する。
【０１１５】
ステップＳ３０１で“ＮＯ”であれば、つまりタッチオンでなければ、同じステップＳ３０１に戻る。一方、ステップＳ３０１で“ＹＥＳ”であれば、つまりタッチオンであれば、図形の手書きを開始したと判断し、ステップＳ３０３で、取得したタッチ座標データをデータ記憶領域７０に時系列に従って記憶する。
【０１１６】
そして、ステップＳ３０５で、タッチオフ（ペンアップ）であるかどうかを判断する。具体的には、ＣＰＵ１２は、タッチパネル１６からタッチ座標データが出力されている状態から出力されていない状態に変化されたかどうかを判断する。
【０１１７】
ステップＳ３０５で“ＮＯ”であれば、つまりタッチオフでなければ、タッチオンの状態が継続していると判断し、ステップＳ３０３に戻る。一方、ステップＳ３０５で“ＹＥＳ”であれば、つまりタッチオフであれば、図形の手書きを終了したと判断し、ステップＳ３０７で、手書き図形を記憶して、図８に示した手書き入力処理にリターンする。つまり、ステップＳ３０７では、今回取得された一連のタッチ座標データを手書き図形データ８０として記憶する。
【０１１８】
なお、図示は省略するが、手書き画像データ８０を記憶した後、または、次回手書き図形についてのタッチ座標データの取得を開始するときに、タッチ座標データ７８は消去される。
【０１１９】
また、この第１実施例では、タッチオンの状態が継続している場合には、タッチ座標データを時系列に従って記憶するようにしてあるが、タッチ座標データが示すタッチ位置の変位量が所定距離未満である場合には、ユーザの手が止まっていると判断して、データ記憶領域７０に記憶しないようにしてもよい。
【０１２０】
図１１は、図８に示したステップＳ５の入力パターン判定処理のフロー図である。図１１に示すように、入力パターン判定処理を開始すると、ＣＰＵ１２は、まずステップＳ５０１で、分割領域Ｂｉを設置する。上述したように、ＣＰＵ１２は、今回検出された一連のタッチ座標データを用いて、これらのタッチ座標データが示すタッチ位置で規定される図形に外接する四角枠を計算する。そして、計算された四角枠で囲まれる範囲を均等に９個の領域に分割し、分割した各領域（分割領域Ｂｉ）の範囲を示す対角の２つの頂点についての座標データを、各分割領域Ｂｉに対応づけて分割領域データ８２としてメモリ１４に記憶する。
【０１２１】
次のステップＳ５０３では、分割領域データ８２を用いて、手書き入力の開始位置（始点）Ｐを含む分割領域Ｂｉを特定する。ここでは、始点を含む分割領域Ｂｉすなわち始点領域を示す始点領域データ８４がメモリ１４に記憶される。続くステップＳ５０５では、分割領域データ８２を用いて、手書き入力の終了位置（終点）Ｑを含む分割領域Ｂｉを特定する。ここでは、終点を含む分割領域Ｂｉすなわち終点領域を示す終点領域データ８６がメモリ１４に記憶される。
【０１２２】
なお、始点は手書き情報取得処理で取得された一連のタッチ座標データのうち最初に取得されたタッチ座標データに対応するタッチ位置であり、終点は手書き情報取得処理で取得された一連のタッチ座標データのうち最後に取得されたタッチ座標データに対応するタッチ位置である。
【０１２３】
続いて、ステップＳ５０７で、始点と終点が同一領域に存在するかどうかを判断する。ここでは、ＣＰＵ１２は、始点領域データ８４が示す分割領域Ｂｉと終点領域データ８６が示す分割領域Ｂｉとが一致するかどうかを判断する。つまり、ＣＰＵ１２は、手書きの図形が線分および閉曲線のいずれであるかを判断しているのである。
【０１２４】
ステップＳ５０７で“ＹＥＳ”であれば、つまり始点と終点が同一領域に存在する場合には、ステップＳ５０９で、手書きの図形を閉曲線と判別する。ここでは、ＣＰＵ１２は、手書きの図形が閉曲線であることを示す図形判別データ８８をメモリ１４に記憶する。次のステップＳ５１１では、ＣＰＵ１２は手書き情報取得処理で取得された一連のタッチ座標データを用いて、一連のタッチ座標データが示すタッチ座標で囲まれる図形の符号付面積Ｓを上述した数１に従って計算する。
【０１２５】
続いて、ステップＳ５１３では、符号付面積Ｓを計算した過程において、各領域Ｒｉの面積を計算したときの符号が正であるかどかを判断する。ステップＳ５１３で“ＹＥＳ”であれば、つまり符号が正であれば、閉曲線を右回りで手書きしたと判断し、ステップＳ５１５で、手書きの入力パターンを右回りに設定し、図８に示した手書き入力処理にリターンする。ただし、ＣＰＵ１２は、ステップＳ５１５で、右回りを示す入力パターンデータ９０をメモリ１４に記憶する。一方、ステップＳ５１３で“ＮＯ”であれば、つまり符号が負であれば、閉曲線を左回りで手書きしたと判断し、ステップＳ５１７で、手書きの入力パターンを左回りに設定して、手書き入力処理にリターンする。ただし、ＣＰＵ１２は、ステップＳ５１７で、左回りを示す入力パターンデータ９０をメモリ１４に記憶する。
【０１２６】
また、ステップＳ５０７で“ＮＯ”であれば、つまり始点と終点が異なる領域に存在する場合には、ステップＳ５１９で、手書きの図形が線分であると判別する。ここでは、ＣＰＵ１２は、手書きの図形が線分であることを示す図形判別データ８８をメモリ１４に記憶する。続くステップＳ５２１では、終点のＸ座標が始点のＸ座標以上であるかどうかを判断する。ステップＳ５２１で“ＹＥＳ”であれば、つまり終点のＸ座標が始点のＸ座標以上であれば、線分を右方向に手書きしたと判断し、ステップＳ５２３で、入力パターンを右方向に設定して、手書き入力処理にリターンする。ただし、ＣＰＵ１２は、ステップＳ５２３で、右方向を示す入力パターンデータ９０をメモリ１４に記憶する。一方、ステップＳ５２１で“ＮＯ”であれば、つまり終点のＸ座標が始点のＸ座標未満であれば、線分を左方向に手書きしたと判断し、ステップＳ５２５で、入力パターンを左方向に設定して、手書き入力処理にリターンする。ただし、ＣＰＵ１２は、ステップＳ５２５で、左方向を示す入力パターンデータ９０をメモリ１４に記憶する。
【０１２７】
図１２は、図８のステップＳ７に示した描画属性設定処理のフロー図である。図１２に示すように、描画属性設定処理を開始すると、ＣＰＵ１２は、まずステップＳ７０１で、描画属性にデフォルト値を設定する。つまり、デフォルト値の描画属性データ９２がメモリ１４に記憶される。この第１実施例では、描画属性のデフォルト値は（線色、線種、線幅）＝（黒、実線、標準）である。
【０１２８】
なお、この第１実施例では、描画属性設定処理を開始した時に、描画属性としてデフォルト値を設定するようにしてあるが、前回描画属性処理を実行した際に設定された描画属性をそのまま使用するようにしてもよい。
【０１２９】
続くステップＳ７０３では、図形が線分かどうかを判断する。ここでは、ＣＰＵ１２は、図形判別データ８８が線分を示すかどうかを判断する。ステップＳ７０３で“ＹＥＳ”であれば、つまり図形が線分であれば、ステップＳ７０５で、変数ｉに１を設定（ｉ＝１）する。次のステップＳ７０７では、入力パターンデータ９０が示す手書き入力パターンが線分用テーブル７２のｉ番目の入力パターンと一致するかどうかを判断する。
【０１３０】
ステップＳ７０７で“ＮＯ”であれば、つまり入力パターンデータ９０が示す手書き入力パターンが線分用テーブル７２のｉ番目の入力パターンと一致しなければ、ステップＳ７０９で、変数ｉが最大値ＴLmaxと等しいかどうかを判断する。最大値ＴLmaxは、線分用テーブル７２に登録された入力パターンおよび描画属性の総数であり、線分用テーブル７２に付された番号の最大値である。したがって、ステップＳ７０９では、線分用テーブル７２に登録されたすべての入力パターンについてステップＳ７０７の処理を実行したかどうかを判断しているのである。
【０１３１】
ステップＳ７０９で“ＹＥＳ”であれば、つまり変数ｉが最大値ＴLmaxと等しければ、手書き入力パターンに対応する描画属性は設定されていないと判断して、図８に示した手書き入力処理にリターンする。この場合、描画属性としてデフォルト値が使用される。
【０１３２】
一方、ステップＳ７０９で“ＮＯ”であれば、つまり変数ｉが最大値ＴLmaxに満たない場合には、ステップＳ７１１で、変数ｉを１加算（ｉ＝ｉ＋１）して、ステップＳ７０７に戻る。つまり、線分用テーブル７２の次の番号の入力パターンについてステップＳ７０７の処理が実行される。
【０１３３】
また、ステップＳ７０７で“ＹＥＳ”であれば、つまり入力パターンデータ９０が示す手書き入力パターンが線分用テーブル７２のｉ番目の入力パターンと一致すれば、ステップＳ７１３で、線分用テール７２のｉ番目に記載された描画属性を描画属性データ９２に設定して、手書き入力処理にリターンする。
【０１３４】
なお、線分用テーブル７２に設定されていない描画属性の項目については、デフォルトの設定がそのまま設定（使用）される。つまり、この第１実施例では、線分用テーブル７２には、描画属性として線色のみが設定されるため、線種と線幅はデフォルト値が設定される。このことは、後述する閉曲線用テーブル７４についても同様である。
【０１３５】
また、ステップＳ７０３で“ＮＯ”であれば、つまり図形が閉曲線である場合には、ステップＳ７１５で、変数ｊに１を設定（ｊ＝１）する。次のステップＳ７１７では、入力パターンデータ９０が示す手書き入力パターンが閉曲線用テーブル７４のｊ番目の入力パターンと一致するかどうかを判断する。
【０１３６】
ステップＳ７１７で“ＮＯ”であれば、つまり入力パターンデータ９０が示す手書き入力パターンが閉曲線用テーブル７４のｊ番目の入力パターンと一致しなければ、ステップＳ７１９で、変数ｊが最大値ＴCmaxと等しいかどうかを判断する。最大値ＴCmaxは、閉曲線用テーブル７４に登録された入力パターンおよび描画属性の総数であり、閉曲線用テーブル７４に付された番号の最大値である。したがって、ステップＳ７１９では、閉曲線用テーブル７４に登録されたすべての入力パターンについてステップＳ７１７の処理を実行したかどうかを判断しているのである。
【０１３７】
ステップＳ７１９で“ＹＥＳ”であれば、つまり変数ｊが最大値ＴCmaxと等しければ、手書き入力パターンに対応する描画属性は設定されていないと判断して、図８に示した手書き入力処理にリターンする。この場合、描画属性としてデフォルト値が使用される。
【０１３８】
一方、ステップＳ７１９で“ＮＯ”であれば、つまり変数ｊが最大値ＴCmaxに満たない場合には、ステップＳ７２１で、変数ｊを１加算（ｊ＝ｊ＋１）して、ステップＳ７１７に戻る。つまり、閉曲線用テーブル７４の次の番号の入力パターンについてステップＳ７１７の処理が実行される。
【０１３９】
また、ステップＳ７１７で“ＹＥＳ”であれば、つまり入力パターンデータ９０が示す手書き入力パターンが閉曲線用テーブル７４のｊ番目の入力パターンと一致すれば、ステップＳ７２３で、閉曲線用テール７４のｊ番目に記載された描画属性を描画属性データ９２に設定して、手書き入力処理にリターンする。
【０１４０】
この第１実施例によれば、入力パターンに対応する描画属性を登録したテーブルを記憶しておき、ユーザが図形を手書きした場合に、手書きの入力パターンを判定し、判定した手書きの入力パターンに応じた描画属性をテーブルに従って設定し、設定した描画属性に従って手書きの図形を描画して、ディスプレイに表示するので、手書きで入力される図形を、特別な操作なしに、所望の属性で描画することができる。
【０１４１】
なお、この第１実施例では、分割領域を設定し、手書き入力の始点と終点とが含まれる領域が一致するかどうかで図形が線分および閉曲線のいずれであるかを判別するようにしたが、これに限定される必要はない。
【０１４２】
図３および図４からも分かるように、線分の場合には、始点と終点との距離が閉曲線の場合と比較して、或る程度離れている。したがって、始点と終点との距離が所定距離を超えている場合には、線分と判断するようにしてもよい。ただし、所定距離は、使用するディスプレイの大きさ等によって適宜設定される。
【０１４３】
かかる場合には、上述した入力パターン判定処理は図１３に示すように変更される。つまり、図１１に示したステップＳ５０１−Ｓ５０７に代えて、ステップＳ５００およびＳ５０２が設けられる。図１３に示すように、入力パターン判定処理を開始すると、ＣＰＵ１２は、まずステップＳ５００で、始点と終点との差分（距離）を算出する。次のステップＳ５０２で、差分が所定距離以下であるかどうかを判断する。ステップＳ５０２で“ＹＥＳ”であれば、つまり差分が所定距離以下であれば、図形が閉曲線であると判断して、ステップＳ５０９に進む。一方、ステップＳ５０２で“ＮＯ”であれば、つまり差分が所定距離を超えている場合には、図形が線分であると判断して、ステップＳ５１９に進む。
【０１４４】
なお、ステップＳ５０９以降の処理は、図１１に示した入力パターン判定処理と同じであるため、重複した説明は省略する。
【０１４５】
このようにすれば、始点と終点の距離を計算するだけで、分割領域を設定するための計算処理が不要であり、ＣＰＵ１２の処理負荷を軽減することができる。
【０１４６】
また、この第１実施例では、線分については、手書きの方向が右方向および左方向の場合に、描画属性を線分用テーブルに従って設定するようにしたが、それらに代えて、上方向および下方向に描画属性を設定するようにしてもよい。かかる場合には、入力パターン判定処理のステップＳ５２１において、終点のＹ座標が始点のＹ座標以上であるかどうかが判断され、“ＹＥＳ”の場合には入力パターンが下方向と判断され、“ＮＯ”の場合には入力パターンが上方向と判断される。
【０１４７】
さらに、この第１実施例では、入力パターンに従って描画属性として線色を設定するようにしたが、これに限定される必要は無い。線色に代えて、線種や線幅を設定してもよい。また、線色とともに、線種または線幅或いはそれらの両方を設定するようにしてもよい。
【０１４８】
さらにまた、この第１実施例では、手書きの図形をその入力パターンに応じた描画属性で描画し、ディスプレイに表示するようにしてあるが、ディスプレイに表示された後に、描画属性を変更できるようにしてもよい。たとえば、ガイド画像のうち所望の描画属性を示す画像をタッチすることにより、描画属性を変更し、変更した描画属性で図形を描画し、ディスプレイの表示を変更することができる。
［第２実施例］
第２実施例の描画装置１０は、閉曲線についての入力パターンおよびこれに対応する描画属性が異なるとともに、閉曲線についての入力パターン判定処理の一部が異なる以外は、上述した第１実施例と同じであるため、異なる内容について説明し、重複する説明については省略することにする。
【０１４９】
図１４は、第２実施例の閉曲線用テーブル７４の一例を示す。図１４からも分かるように、第２実施例では、入力パターンとして、手書きの方向（周回方向）に加えて手書き開始位置が含まれる。ただし、この第２実施例では、手書き開始位置は、手書き入力の始点が含まれる分割領域Ｂｉ（始点領域）を意味する。
【０１５０】
なお、閉曲線は手書きの始点と終点とが同じ分割領域Ｂｉに含まれるため、手書き入力の終点が含まれる分割領域Ｂｉ（終点領域）、すなわち手書き終了位置が入力パターンに含まれているとも言える。
【０１５１】
また、第２実施例においては、手書きの方向に応じて描画属性（線色、線種、線幅）のうちの線色を設定することができ、手書き開始位置に対応して描画属性のうちの線種および線幅の少なくとも一方を設定することができる。
【０１５２】
具体的には、図１４に示す閉曲線用テーブル７４の１番目に着目すると、手書きの方向が右回りであり、手書き開始位置が分割領域Ｂ１である場合には、線色が黒であり、線種が実線に設定される。ただし、線幅は未設定であるため、デフォルト値が設定される。このことは、他の番目の描画属性についても同様である。たとえば、図１５（Ａ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の左上の頂点であり、分割領域Ｂ１に含まれる場合には、閉曲線テーブル７４に従って、線色が黒であり、線種が実線であり、線幅がデフォルト（たとえば、標準）である、四角形が描画（表示）される。ただし、図１５においては（後述する図１８も同じ）、図面の都合上、黒以外の色を示すために、線色は、描画結果の図形の横に括弧書きで示してある。
【０１５３】
また、図１４に示す閉曲線用テーブル７４の４番目に着目すると、手書き方向が左回りであり、手書き開始位置が分割領域Ｂ３である場合には、線色が赤であり、線種が破線であり、線幅は未設定である。たとえば、図１５（Ｂ）に示すように、左回りに四角形を手書きし、その手書き開始位置が四角形の右上の頂点であり、分割領域Ｂ３に含まれる場合には、閉曲線テーブル７４に従って、線色が赤であり、線種が破線であり、線幅がデフォルト（たとえば、標準）である、四角形が描画（表示）される。
【０１５４】
さらに、図１４に示す閉曲線用テーブル７４の６番目に着目すると、手書き方向が左回りであり、手書き開始位置が分割領域Ｂ７である場合には、線色が赤であり、線種が実線であり、線幅が太線である。たとえば、図１５（Ｃ）に示すように、左回りに四角形を手書きし、その手書き開始位置が四角形の左下の頂点であり、分割領域Ｂ７に含まれる場合には、閉曲線テーブル７４に従って、線色が赤であり、線種が実線であり、線幅が太線である、四角形が描画（表示）される。
【０１５５】
さらにまた、図１４に示す閉曲線用テーブル７４の７番目に着目すると、手書き方向が右回りであり、手書き開始位置が分割領域Ｂ９である場合には、線色が黒であり、線種がデフォルト（たとえば、実線）であり、線幅が太線である。たとえば、図１５（Ｄ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の右下の頂点であり、分割領域Ｂ９に含まれる場合には、閉曲線テーブル７４に従って、線色が黒であり、線種がデフォルト（たとえば、実線）であり、線幅が太線である、四角形が描画（表示）される。
【０１５６】
また、図１４に示す閉曲線用テーブル７４の９番目に着目すると、手書き方向が右回りであり、手書き開始位置が分割領域Ｂ２である場合には、線色が黒であり、線種がデフォルト（たとえば、実線）であり、線幅が細線である。たとえば、図１５（Ｅ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の左上頂点と右上頂点の間であり、分割領域Ｂ２に含まれる場合には、閉曲線テーブル７４に従って、線色が黒であり、線種がデフォルト（たとえば、実線）であり、線幅が細線である、四角形が描画（表示）される。
【０１５７】
なお、説明は省略するが、他の場合についても同様である。
【０１５８】
このように、同じ四角形を手書きする場合であっても、手書きする方向（周回方向）および手書き開始位置に応じて異なる描画属性の図形をディスプレイ２０に描画（表示）することができる。
【０１５９】
上述したように、この第２実施例では、入力パターン判定処理が第１実施例とは異なる。図１６は、第２実施例におけるＣＰＵ１２の入力パターン判定処理のフロー図である。第２実施例では、閉曲線が手書きされた場合に、判定される入力パターンが異なる以外は第１実施例と同じであるため、異なる処理のみについて説明する。
【０１６０】
図１６に示すように、符号付面積Ｓを計算した際の符号が正であれば、ステップＳ５１３で“ＹＥＳ”となり、ステップＳ５１５´で、手書きの入力パターンを右回りおよび始点領域に設定する。ただし、ＣＰＵ１２は、ステップＳ５１５´において、右回りおよびステップＳ５０３で記憶された始点領域データ８４が示す手書き開始位置を含む分割領域Ｂｉを示す入力パターンデータ９０をメモリ１４に記憶する。
【０１６１】
一方、符号付面積Ｓを計算した際の符号が負であれば、ステップＳ５１３で“ＮＯ”となり、ステップＳ５１７´で、手書きの入力パターンを左回りおよび始点領域に設定する。ただし、ＣＰＵ１２は、ステップＳ５１７´において、左回りおよびステップＳ５０３で記憶された始点領域データ８４が示す分割領域Ｂｉを示す入力パターンデータ９０をメモリ１４に記憶する。
【０１６２】
第２実施例においても、第１実施例と同様に、手書きで入力される図形を、特別な操作なしに、所望の属性で描画することができる。また、第２実施例によれば、閉曲線については、手書きの方向と手書き開始位置に応じて描画属性を設定することができるので、多様な描画属性で閉曲線を描画することができる。
【０１６３】
なお、第２実施例では、手書きの方向と手書き開始位置に基づいて、線色と、線種および線幅の少なくとも一方を設定するようにしたが、これに限定される必要はない。たとえば、線色、線種および線幅のいずれか１つを設定しても良いし、線色と線種、線種と線幅、線色と線幅のいずれかの組を設定してもよい。また、手書き方向に応じて線種および線幅の少なくとも一方を設定し、手書き開始位置に応じて線色を設定してもよい。
［第３実施例］
第３実施例の描画装置１０は、閉曲線についての入力パターンおよびこれに対応する描画属性が異なるとともに、閉曲線についての入力パターン判定処理の一部が異なる以外は、上述した第１実施例および第２実施例と同じであるため、異なる内容について説明し、重複する説明については省略することにする。
【０１６４】
図１７は、第３実施例の閉曲線用テーブル７４の一例を示す。図１７からも分かるように、第３実施例では、入力パターンとして、手書きの方向（周回方向）に代えて手書き開始位置が記述される。また、第３実施例においては、手書き開始位置に応じて描画属性（線色、線種、線幅）のうちの線色および線種を設定することができる。
【０１６５】
具体的には、図１７に示す閉曲線用テーブル７４の１番目に着目すると、手書き開始位置が分割領域Ｂ１である場合には、線色が黒であり、線種が実線に設定される。ただし、線幅は未設定であるため、デフォルト値が設定される。このことは、他の番目の描画属性についても同様である。たとえば、図１８（Ａ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の左上の頂点であり、分割領域Ｂ１に含まれる場合には、閉曲線テーブル７４に従って、線色が黒であり、線種が実線である、四角形が描画（表示）される。なお、図１８では、手書きの方向を説明するが、第３実施例では、閉曲線を描画したときの手書きの方向に応じて描画属性は設定（変化）されない。また、上述したように、線幅はデフォルト値が設定されるため、図１８では省略してある。
【０１６６】
また、図１７に示す閉曲線用テーブル７４の３番目に着目すると、手書き開始位置が分割領域Ｂ７である場合には、線色が黒であり、線種が破線である。たとえば、図１８（Ｂ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の左下の頂点であり、分割領域Ｂ７に含まれる場合には、閉曲線テーブル７４に従って、線色が黒であり、線種が破線である、四角形が描画（表示）される。
【０１６７】
さらに、図１７に示す閉曲線用テーブル７４の６番目に着目すると、手書き開始位置が分割領域Ｂ４である場合には、線色が赤であり、線種が点線である。たとえば、図１８（Ｃ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の左下の頂点と左上の頂点の間であり、分割領域Ｂ４に含まれる場合には、閉曲線テーブル７４に従って、線色が赤であり、線種が点線である、四角形が描画（表示）される。
【０１６８】
さらにまた、図１７に示す閉曲線用テーブル７４の８番目に着目すると、手書き開始位置が分割領域Ｂ８である場合には、線色が赤であり、線種が一点鎖線である。たとえば、図１８（Ｄ）に示すように、右回りに四角形を手書きし、その手書き開始位置が四角形の左下の頂点と右下の頂点の間であり、分割領域Ｂ８に含まれる場合には、閉曲線テーブル７４に従って、線色が赤であり、線種が一点鎖線である、四角形が描画（表示）される。
【０１６９】
なお、説明は省略するが、他の場合についても同様である。
【０１７０】
このように、同じ四角形を手書きする場合であっても、手書き開始位置に応じて異なる描画属性の図形をディスプレイ２０に描画（表示）することができる。
【０１７１】
上述したように、この第３実施例では、入力パターン判定処理が第１実施例および第２実施例とは異なる。図１９は、第３実施例におけるＣＰＵ１２の入力パターン判定処理のフロー図である。第３実施例では、閉曲線が手書きされた場合に、判定される入力パターンが異なる以外は第１実施例および第２実施例と同じであるため、異なる処理のみについて説明する。
【０１７２】
図１９に示すように、ステップＳ５０９で図形を閉曲線と判別すると、ステップＳ５１８で、手書きの入力パターンを始点領域に設定して、図８に示した手書き入力処理にリターンする。ただし、ＣＰＵ１２は、ステップＳ５１８において、ステップＳ５０３で記憶された始点領域データ８４が示す手書き開始位置を含む分割領域Ｂｉすなわち始点領域を示す入力パターンデータ９０をメモリ１４に記憶する。
【０１７３】
第３実施例においても、第１実施例と同様に、手書きで入力される図形を、特別な操作なしに、所望の属性で描画することができる。
【０１７４】
なお、第３実施例においては、閉曲線を手書きした場合の手書きの方向を計算する必要がないため、第１実施例や第２実施例の場合と比較して、ＣＰＵの処理負荷を軽減することができる。
【０１７５】
また、第３実施例では、手書き開始位置に応じて、線色と線種を設定するようにしたが、線色、線種および線幅のいずれか１つを設定したり、線種と線幅を設定したり、線色と線幅を設定したりしてもよい。
【０１７６】
また、上述の第１−第３実施例では、判定領域を９個の分割領域に均等に分割したがこれに限定される必要はない。４個に均等に分割してもよいし、１６個や２５個に均等に分割してもよい。また、異なる大きさで分割してもよい。第２実施例や第３実施例では、分割領域の数に応じて、手書き開始位置に応じて描画属性の数を増減させることができる。
【０１７７】
さらに、第１−第３実施例では、四角形の判定領域を四角形の分割領域に均等に分けるようにしたが、分割の仕方はこれに限定されるべきでない。たとえば、図２０に示すように、タッチオンからタッチオフまでの一連のタッチ座標に基づいて判定領域Ｆを算出し、一連のタッチ座標の中心から放射状に延びる線分によって判定領域Ｆを複数の領域に分割する。この場合、各分割領域Ｂｉは、一連のタッチ座標の中心を原点とする極座標を用いてその範囲を規定される。この場合、始点および終点のタッチ座標は、一連のタッチ座標の中心を原点とした極座標に変換されて、それぞれが含まれる分割領域Ｂｉが特定される。
【０１７８】
さらにまた、上述の第１−第３実施例では、描画属性として、図形の線色、線種、線幅を設定するようにしたが、これに限定される必要はない。図形ないし図形に含まれる面を塗りつぶす色や模様を設定しても良いし、線色や塗りつぶす色の濃淡を設定してもよい。
【０１７９】
また、上述の第１−第３実施例では、入力パターンに対応して描画属性がすべて設定されている場合について説明したが、一部について描画属性が設定されていてもよい。また、すべての入力パターンをテーブルに含める必要は無く、判定した入力パターンがテーブルに存在しない場合には、図１２の描画属性設定処理で説明したように、デフォルト値が設定されるだけである。
【０１８０】
さらに、第１−第３実施例では、手書き入力を終了し、描画属性を設定した後に、図形を描画（表示）するようにしたが、これに限定される必要はない。たとえば、手書き入力中では、デフォルト設定で、図形を描画（表示）しておき、描画終了後に描画属性を設定した後に、デフォルト設定で描画された図形の描画属性を入力パターンに従って設定された描画属性に変化させるようにしてもよい。
【０１８１】
さらにまた、第１−第３実施例では、手書き入力を終了した後に、入力パターンを判定して、描画属性を設定するようにしたが、これに限定される必要はない。手書き入力中に、手書き入力の開始から現フレームまでに取得されたタッチ座標データを用いて入力パターンを判定して、属性情報を設定し、手書き入力中の図形を設定された属性情報で描画（表示）するようにしてもよい。
【０１８２】
なお、第１−第３実施例では、ディスプレイの表示面上に設けられたタッチパネルを利用して手書きで入力される図形をその表示面に描画（表示）する場合について説明したが、これに限定される必要はない。タッチパネルはディスプレイとは別に設けられてもよい。また、タッチパネルに代えて、コンピュータマウス、トラックボール、ペンタブレットあるいは人体のモーションによる入力デバイス（モーションキャプチャ等）、各種のポインティングデバイスを入力手段として用いることができる。たとえば、人体のモーションによる入力デバイスを用いる場合には、２次元方向のみならず、３次元方向に描画属性を設定することができる。ただし、他の入力手段を用いる場合には、ディスプレイにマウスポインター等の指示画像が表示され、手書きする場合には、単なる指示画像の移動と区別するために、所定のボタンが操作される。
【０１８３】
また、上述の第１−第３実施例では、一筆書きの線分や閉曲線（たとえば多角形や円）のような図形を手書きする場合について示したが、これに限らず、一筆書きの文字を手書きすることもできる。たとえば、アルファベットの「Ｃ」、「Ｌ」、「Ｏ」、「Ｓ」、「Ｕ」、「Ｖ」、「Ｗ」や平仮名の「く」、「し」、「そ」、「つ」、「て」、「ひ」、「へ」、「ん」、カタカナの「ノ」、「フ」、「ヘ」が該当する。
【０１８４】
さらに、上述の第１−第３実施例で挙げた数値は一例であり、実際の製品に応じて適宜変更することが可能である。
【符号の説明】
【０１８５】
１０  …描画装置
１２  …ＣＰＵ
１４  …メモリ
１６  …タッチパネル
１８  …描画コントローラ
２０  …ディスプレイ
【図１】
2015176187.tif 000003
【図２】
2015176187.tif 000004
【図３】
2015176187.tif 000005
【図４】
2015176187.tif 000006
【図５】
2015176187.tif 000007
【図６】
2015176187.tif 000008
【図７】
2015176187.tif 000009
【図８】
2015176187.tif 000010
【図９】
2015176187.tif 000011
【図１０】
2015176187.tif 000012
【図１１】
2015176187.tif 000013
【図１２】
2015176187.tif 000014
【図１３】
2015176187.tif 000015
【図１４】
2015176187.tif 000016
【図１５】
2015176187.tif 000017
【図１６】
2015176187.tif 000018
【図１７】
2015176187.tif 000019
【図１８】
2015176187.tif 000020
【図１９】
2015176187.tif 000021
【図２０】
2015176187.tif 000022