(57)【要約】【課題】ペンの回転操作による入力が可能な電子機器、方法及びプログラムを提供することである。【解決手段】実施形態によれば、ペン入力可能な電子機器の方法は、ペンの一方の端部がディスプレイの表示面に接触する、あるいは近傍に位置する状態で、ペンの軸を中心としてペンが第１方向に第１角度より大きく回転する場合、第１処理を実行する。【選択図】図７
2015225527.tif 000002
【特許請求の範囲】
【請求項１】
ペン入力可能な電子機器の方法であって、
ペンの一方の端部がディスプレイの表示面に接触する、あるいは近傍に位置する状態で、ペンの軸を中心としてペンが第１方向に第１角度より大きく回転する場合、第１処理を実行する方法。
【請求項２】
前記端部が前記表示面に接触する、あるいは近傍に位置する状態で、前記軸を中心として前記ペンが第１方向に第１角度より大きく回転し、それに続いて前記第１方向とは略反対方向の第２方向に第２角度より大きく回転する場合、第２処理を実行するものである請求項１記載の方法。
【請求項３】
前記ペンの回転角度の変化量がしきい値範囲内である期間が第１期間より長く継続する場合、前記ペンの回転角度は、前記第１期間の後の時刻のペンの角度を基準として定められる請求項１記載の方法。
【請求項４】
前記ペンが前記第１方向に前記第１角度より大きく回転して前記第１処理が行われた後、そのまま前記ペンが前記第１方向にさらに第３角度より大きく回転する場合、第３処理を実行する請求項１記載の方法。
【請求項５】
前記ペンが前記表示面に接触する、あるいは近傍に位置する状態で、前記軸を中心として前記ペンが前記第２方向に第３角度より大きく回転し、それに続いて前記第１方向に第４角度より大きく回転する場合、第４処理を実行する請求項２記載の方法。
【請求項６】
前記電子機器は手書き入力も可能であり、前記ペンの回転中に手書き入力された文字は無効とする請求項１記載の方法。
【請求項７】
ペン入力可能な電子機器であって、
ペンの一方の端部がディスプレイの表示面に接触する、あるいは近傍に位置する状態で、ペンの軸を中心としてペンが第１方向に第１角度より大きく回転する場合、第１処理を実行する電子機器。
【請求項８】
前記端部が前記表示面に接触する、あるいは近傍に位置する状態で、前記軸を中心として前記ペンが第１方向に第１角度より大きく回転し、それに続いて前記第１方向とは略反対方向の第２方向に第２角度より大きく回転する場合、第２処理を実行するものである請求項７記載の電子機器。
【請求項９】
前記ペンの回転角度の変化量がしきい値範囲内である期間が第１期間より長く継続する場合、前記ペンの回転角度は、前記第１期間の後の時刻のペンの角度を基準として定められる請求項７記載の電子機器。
【請求項１０】
前記ペンが前記第１方向に前記第１角度より大きく回転して前記第１処理が行われた後、そのまま前記ペンが前記第１方向にさらに第３角度より大きく回転する場合、第３処理を実行する請求項７記載の電子機器。
【請求項１１】
ペン入力可能な電子機器のプログラムであって、
ペンの一方の端部がディスプレイの表示面に接触する、あるいは近傍に位置する状態で、ペンの軸を中心としてペンが第１方向に第１角度より大きく回転する場合、第１処理を実行するプログラム。
【請求項１２】
前記端部が前記表示面に接触する、あるいは近傍に位置する状態で、前記軸を中心として前記ペンが第１方向に第１角度より大きく回転し、それに続いて前記第１方向とは略反対方向の第２方向に第２角度より大きく回転する場合、第２処理を実行するものである請求項１１記載のプログラム。
【請求項１３】
前記ペンの回転角度の変化量がしきい値範囲内である期間が第１期間より長く継続する場合、前記ペンの回転角度は、前記第１期間の後の時刻のペンの角度を基準として定められる請求項１１記載のプログラム。
【請求項１４】
前記ペンが前記第１方向に前記第１角度より大きく回転して前記第１処理が行われた後、そのまま前記ペンが前記第１方向にさらに第３角度より大きく回転する場合、第３処理を実行する請求項１１記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態はペン入力可能な電子機器に関する。
【背景技術】
【０００２】
近年、表示部にデジタイザを組み込んだコンピュータが開発されている。これらの機器は、キーボード、マウスによる入力以外にも、ペンを用いるタッチ操作による入力が可能である。例えば、画面にメニューを表示して、メニュー内の項目のいずれかをペンでタッチすることにより、メニュー項目を選択できる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１７６１９０号公報
【特許文献２】特開平６−１４９４６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
デジタイザを組み込んだ従来の電子機器は、画面へのタッチ操作を検出してイベントを発生させ、情報を入力している。ペンの操作はタッチ操作以外にも回転操作等があるが、従来は、タッチ操作以外は情報の入力には利用されていない。
【０００５】
本発明の目的はペンの回転操作による入力が可能な電子機器、方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００６】
実施形態によれば、ペン入力可能な電子機器の方法は、ペンの一方の端部がディスプレイの表示面に接触する、あるいは近傍に位置する状態で、ペンの軸を中心としてペンが第１方向に第１角度より大きく回転する場合、第１処理を実行する。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係る電子機器の外観の一例を示す斜視図である。
【図２】タブレットコンピュータ１０と外部装置との連携動作の一例を示すブロック図である。
【図３】ペン１００を使用してタッチスクリーンディスプレイ１７上に手書きされる手書き文字列の一例を示す図。
【図４】図３の手書き文字列に対応する時系列情報２００を示す図。
【図５】タブレットコンピュータ１０のシステム構成例を示すブロック図。
【図６】手書きノートアプリケーションプログラム２０２による手書きノートのノートプレビュー画面の一例を示す図。
【図７】イベント発生トリガとして利用されるペン１００の回転操作の一例を示す図。
【図８】回転検知のために必要な初期角度の設定の一例を示すフローチャート。
【図９】回転検知の一例を示すフローチャートである。
【図１０】イベント発生トリガとして利用されるペン１００の回転操作の他の例を示す図。
【図１１】図１０の回転検知の一例を示すフローチャートである。
【図１２】図１１のフローチャートに続くフローチャートである。
【図１３】ペン回転検知に応答する手書きノートアプリケーションの処理の一例を示すフローチャートである。
【図１４】図９のフローチャートの変形例に関するフローチャートである。
【図１５】図１２のフローチャートの変形例に関するフローチャートである。
【発明を実施するための形態】
【０００８】
図１は、一実施形態に係る電子機器の外観を示す斜視図である。電子機器は、タブレットコンピュータ、ノートブック型パーソナルコンピュータ、スマートフォン、ＰＤＡ等として実現され得る。タブレットコンピュータは、タブレットまたはスレートコンピュータとも称される。以下、電子機器がペンまたは指によって手書き入力可能なタブレットコンピュータ１０として実現されている場合を説明する。しかし、電子機器は、ペンによるタッチ操作が可能であれば良く、ペンによる手書き文字入力、または指によるタッチ入力は必須ではない。図１は、タブレットコンピュータ１０が横長で使用されている様子を示すが、タブレットコンピュータ１０は３軸加速度センサを有し、機器の傾きを検出し、それに応じて、画面に表示される画像も回転するので、縦長でも使用可能である。
【０００９】
タブレットコンピュータ１０は、本体１１とタッチスクリーンディスプレイ１７とを備える。本体１１は、薄い箱形の筐体を有している。タッチスクリーンディスプレイ１７は、本体１１の上面に重なっている。タッチスクリーンディスプレイ１７には、フラットパネルディスプレイと、センサとが組み込まれている。センサは、フラットパネルディスプレイの画面上のペン１００または指の接触位置を検出するように構成されている。
【００１０】
フラットパネルディスプレイは、例えば、液晶表示装置（ＬＣＤ）である。センサとしては、例えば、静電容量方式のタッチパネル、電磁誘導方式のデジタイザなどを使用することができる。ここでは、デジタイザとタッチパネルの２種類のセンサの双方がタッチスクリーンディスプレイ１７に組み込まれている。
【００１１】
デジタイザは、例えば、フラットパネルディスプレイの画面の下側に配置される。タッチパネルは、例えば、フラットパネルディスプレイの画面上に配置される。このため、タッチスクリーンディスプレイ１７は、指を使用した画面に対するタッチ操作のみならず、ペン１００を使用した画面に対するタッチ操作も検出することができる。
【００１２】
ペン１００は例えば電磁誘導式のデジタイザペン（スタイラスペン、タッチペンとも称される）であってもよい。なお、電磁誘導式のデジタイザペンは画面に非接触状態であったとしても、ペン先が画面近傍に位置していれば、センサは電磁誘導によりペン先の位置（ＸＹ平面内の位置）を検出できる。
【００１３】
ユーザは、外部オブジェクト（ペン１００又は指）を使用してタッチスクリーンディスプレイ１７上でペン入力及び文字の手書きを行うことができる。ペン入力動作中は、ペン先の位置が検出されると、その位置に応じた情報が入力される。手書き入力操作中は、画面上の外部オブジェクト（ペン１００又は指）の動きの軌跡、つまり手書きによって入力されるストロークの軌跡がリアルタイムに描画され、これによって各ストロークの軌跡が画面上に表示される。外部オブジェクトが画面に接触されている間の外部オブジェクトの動きの軌跡が１ストロークに相当する。手書きされた文字または図形などに対応する多数のストロークの集合、つまり多数の軌跡の集合が手書き文書を構成する。
【００１４】
手書き文書は、イメージデータではなく、各ストロークの軌跡の座標列とストローク間の順序関係とを示す時系列情報として記憶媒体に保存される。時系列情報の詳細は図４を参照して後述するが、時系列情報は、複数のストロークにそれぞれ対応するとともに複数のストロークが手書きされた順を示す複数のストロークデータを含む。換言すれば、時系列情報は、複数のストロークにそれぞれ対応する時系列のストロークデータの集合である。各ストロークデータは、ある一つのストロークに対応し、ストロークの軌跡上の点それぞれに対応する座標データ系列（時系列座標）を含む。これらストロークデータの並びの順序は、ストロークそれぞれが手書きされた順序つまり筆順に相当する。
【００１５】
タブレットコンピュータ１０は、記憶媒体から既存の任意の時系列情報を読み出し、時系列情報に対応する手書き文書、つまり時系列情報によって示される複数のストロークデータそれぞれに対応するストロークを画面上に表示することができる。さらに、タブレットコンピュータ１０は編集機能を有している。編集機能は、「消しゴム」ツール、「範囲指定」ツール、および他の各種ツール等を用いたユーザによる編集操作に応じて、表示中の手書き文書内の任意のストロークまたは任意の手書き文字等を削除または移動することができる。さらに、編集機能は、幾つかの手書き操作の履歴を取り消す機能も含んでいる。
【００１６】
手書きのためのペンはペン種（シャープペン、ボールペン、万年筆、サインペン等）、線の色、線の太さ、線の透明度が変更可能であり、ユーザ設定により事前に変更も可能であるが、手書き後でも編集機能の一つとしてこれらを変更可能である。
【００１７】
図２は、タブレットコンピュータ１０と外部装置との連携動作の例を示している。タブレットコンピュータ１０は、パーソナルコンピュータ１やクラウドコンピューティングシステムと連携することができる。すなわち、タブレットコンピュータ１０は、無線ＬＡＮなどの無線通信デバイスを備えており、パーソナルコンピュータ１との無線通信を実行することができる。さらに、タブレットコンピュータ１０は、インターネット上のサーバ２との通信を実行することもできる。サーバ２はオンラインストレージサービス、他の各種クラウドコンピューティングサービスを実行するサーバであってもよい。
【００１８】
パーソナルコンピュータ１はハードディスクドライブ（ＨＤＤ）のようなストレージデバイスを備えている。タブレットコンピュータ１０は、時系列情報（手書き文書）をネットワーク越しにパーソナルコンピュータ１に送信して、パーソナルコンピュータ１のＨＤＤに記録することができる（アップロード）。
【００１９】
これにより、タブレットコンピュータ１０内のストレージの容量が少ない場合でも、タブレットコンピュータ１０が多数の時系列情報（手書き文書）あるいは大容量の時系列情報（手書き文書）を扱うことが可能となる。
【００２０】
さらに、タブレットコンピュータ１０は、パーソナルコンピュータ１のＨＤＤに記録されている任意の１以上の手書き文書を読み出すことすができる（ダウンロード）。タブレットコンピュータ１０は、読み出した手書き文書によって示されるストロークそれぞれの軌跡をタブレットコンピュータ１０のタッチスクリーンディスプレイ１７の画面に表示することができる。この場合、複数の手書き文書それぞれのページを縮小することによって得られるサムネイルの一覧をタッチスクリーンディスプレイ１７の画面上に表示してもよいし、これらサムネイルから選ばれた１ページをタッチスクリーンディスプレイ１７の画面上に通常サイズで表示してもよい。
【００２１】
さらに、タブレットコンピュータ１０が通信する先はパーソナルコンピュータ１ではなく、上述したように、ストレージサービスなどを提供するクラウドコンピューティングシステム上のサーバ２であってよい。タブレットコンピュータ１０は、手書き文書をネットワーク越しにサーバ２に送信して、サーバ２のストレージデバイス２Ａに記録することができる（アップロード）。さらに、タブレットコンピュータ１０は、サーバ２のストレージデバイス２Ａに記録されている任意の手書き文書を読み出すことができる（ダウンロード）。タブレットコンピュータ１０は、読み出した手書き文書によって示されるストロークそれぞれの軌跡をタブレットコンピュータ１０のタッチスクリーンディスプレイ１７の画面に表示することができる。
【００２２】
このように、手書き文書が格納される記憶媒体は、タブレットコンピュータ１０内のストレージデバイス、パーソナルコンピュータ１内のストレージデバイス、サーバ２のストレージデバイスのいずれであってもよい。
【００２３】
次に、図３および図４を参照して、ユーザによって手書きされたストローク（文字、マーク、図形（線図）、表など）と手書き文書との関係について説明する。図３は、ペン１００などを使用してタッチスクリーンディスプレイ１７上に手書きされる手書き文字列の例を示している。
【００２４】
手書き文書では、一旦手書きされた文字や図形などの上に、さらに別の文字や図形などが手書きされるというケースが多い。図３においては、「ＡＢＣ」の手書き文字列が「Ａ」、「Ｂ」、「Ｃ」の順番で手書きされ、この後に、手書きの矢印が、手書き文字「Ａ」のすぐ近くに手書きされた場合が想定されている。
【００２５】
手書き文字「Ａ」は、ペン１００などを使用して手書きされる２つのストローク（「∧」形状の軌跡、「−」形状の軌跡）によって、つまり２つの軌跡によって表現される。最初に手書きされる「∧」形状のペン１００の軌跡は例えば等時間間隔でリアルタイムにサンプリングされ、これによって「∧」形状のストロークの時系列座標ＳＤ１１、ＳＤ１２、…ＳＤ１ｎが得られる。同様に、次に手書きされる「−」形状のペン１００の軌跡も等時間間隔でリアルタイムにサンプリングされ、これによって「−」形状のストロークの時系列座標ＳＤ２１、ＳＤ２２、…ＳＤ２ｎが得られる。
【００２６】
手書き文字「Ｂ」は、ペン１００などを使用して手書きされた２つのストローク、つまり２つの軌跡によって表現される。手書き文字「Ｃ」は、ペン１００などを使用して手書きされた１つのストローク、つまり１つの軌跡によって表現される。手書きの「矢印」は、ペン１００などを使用して手書きされた手書きされた２つのストローク、つまり２つの軌跡によって表現される。
【００２７】
図４は、図３の手書き文字列に対応する時系列情報２００を示している。時系列情報２００は、複数のストロークデータＳＤ１、ＳＤ２、…、ＳＤ７を含む。時系列情報２００内においては、これらストロークデータＳＤ１、ＳＤ２、…、ＳＤ７は、ストローク順に、つまり複数のストロークが手書きされた順に時系列に並べられている。
【００２８】
時系列情報２００において、先頭の２つのストロークデータＳＤ１、ＳＤ２は、手書き文字「Ａ」の２つのストロークをそれぞれ示している。３番目と４番目のストロークデータＳＤ３、ＳＤ４は、手書き文字「Ｂ」を構成する２つのストロークをそれぞれ示している。５番目のストロークデータＳＤ５は、手書き文字「Ｃ」を構成する１つのストロークを示している。６番目と７番目のストロークデータＳＤ６、ＳＤ７は、手書き「矢印」を構成する２つのストロークをそれぞれ示している。
【００２９】
各ストロークデータは、一つのストロークに対応する座標データ系列（時系列座標）、つまり一つのストロークの軌跡上の複数の点それぞれに対応する複数の座標を含む。各ストロークデータにおいては、複数の座標はストロークが書かれた順に時系列に並べられている。例えば、手書き文字「Ａ」に関しては、ストロークデータＳＤ１は、手書き文字「Ａ」の「∧」形状のストロークの軌跡上の点それぞれに対応する座標データ系列（時系列座標）、つまりｎ個の座標データＳＤ１１、ＳＤ１２、…ＳＤ１ｎを含む。ストロークデータＳＤ２は、手書き文字「Ａ」の「−」形状のストロークの軌跡上の点それぞれに対応する座標データ系列、つまりｎ個の座標データＳＤ２１、ＳＤ２２、…ＳＤ２ｎを含む。なお、座標データの数はストロークデータ毎に異なっていてもよい。すなわち、ペン１００の軌跡は等時間間隔でリアルタイムにサンプリングされるので、ストロークの長さが長いほど、あるいはストロークの手書き速度が遅いほど、座標データの数は増加する。
【００３０】
各座標データは、対応する軌跡内のある１点に対応するＸ座標およびＹ座標を示す。例えば、座標データＳＤ１１は、「∧」形状のストロークの始点のＸ座標（Ｘ１１）およびＹ座標（Ｙ１１）を示す。ＳＤ１ｎは、「∧」形状のストロークの終点のＸ座標（Ｘ１ｎ）およびＹ座標（Ｙ１ｎ）を示す。
【００３１】
さらに、各座標データは、その座標に対応する点が手書きされた時点に対応するタイムスタンプ情報Ｔを含んでいてもよい。さらに、各座標データには、筆圧を示す情報（Ｚ）を追加してもよい。筆圧情報はペン１００で検知し、ペン１００からタッチスクリーンディスプレイ１７側に送信される。筆圧に応じて線の太さを変えれば、表情豊かな文字を書くことができる。
【００３２】
さらに、本実施形態では、上述したように、手書き文書は、イメージまたは文字認識結果ではなく、時系列のストロークデータの集合として記憶されるので、手書き文字の言語に依存せずに手書き文字を扱うことができる。よって、本実施形態の時系列情報２００の構造は、使用言語の異なる世界中の様々な国で共通に使用できる。
【００３３】
図５は、タブレットコンピュータ１０のシステム構成を示す。  
タブレットコンピュータ１０は、ＣＰＵ１０１、システムコントローラ１０２、主メモリ１０３、グラフィクスコントローラ１０４、ＢＩＯＳ−ＲＯＭ１０５、不揮発性メモリ１０６、無線通信デバイス１０７、エンベデッドコントローラ（ＥＣ）１０８、加速度センサ１０９等を備える。
【００３４】
ＣＰＵ１０１は、タブレットコンピュータ１０内の各種モジュールの動作を制御するプロセッサである。ＣＰＵ１０１は、ストレージデバイスである不揮発性メモリ１０６から主メモリ１０３にロードされる各種コンピュータプログラムを実行する。これらプログラムには、オペレーティングシステム（ＯＳ）２０１、および各種アプリケーションプログラムが含まれている。アプリケーションプログラムには、手書きノートアプリケーションプログラム２０２、ペン回転検知アプリケーション２０３、その他のアプリケーションが含まれている。他のアプリケーションはＷｅｂブラウザ、写真再生、動画再生、音楽再生アプリケーション等でもよい。手書きノートアプリケーションプログラム２０２は、上述の手書き文書を作成および表示する機能、手書き文書を編集する機能、およびストローク補完機能等を有している。ペン回転検知アプリケーション２０３は、手書きノートアプリケーションプログラム２０２、その他のアプリケーションが起動されると、自動的に起動される。ペン回転検知アプリケーション２０３は、ペンが画面上に接触または近傍に位置する際のペンの軸を中心とする回転操作を検知し、イベントを発生する。発生したイベントは手書きノートアプリケーションや、その他のアプリケーションに渡され、所定の処理に対する指示等として使用される。
【００３５】
ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１０５に格納された基本入出力システム（ＢＩＯＳ）も実行する。ＢＩＯＳは、ハードウェア制御のためのプログラムである。
【００３６】
システムコントローラ１０２は、ＣＰＵ１０１のローカルバスと各種コンポーネントとの間を接続するデバイスである。システムコントローラ１０２には、主メモリ１０３をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ１０２は、ＰＣＩ  ＥＸＰＲＥＳＳ規格のシリアルバスなどを介してグラフィクスコントローラ１０４との通信を実行する機能も有している。
【００３７】
グラフィクスコントローラ１０４は、タブレットコンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７Ａを制御する表示コントローラである。グラフィクスコントローラ１０４によって生成される表示信号はＬＣＤ１７Ａに送られる。
【００３８】
ＬＣＤ１７Ａは、表示信号に基づいて画面イメージを表示する。ＬＣＤ１７Ａ上にはタッチパネル１７Ｂおよびデジタイザ１７Ｃが配置されている。タッチパネル１７Ｂは、ＬＣＤ１７Ａの画面上で入力を行うための静電容量式のポインティングデバイスである。指が接触される画面上の接触位置および接触位置の動き等はタッチパネル１７Ｂによって検出される。デジタイザ１７ＣはＬＣＤ１７Ａの画面上で入力を行うための電磁誘導式のポインティングデバイスである。ペン１００が接触される画面上の接触位置および接触位置の動き等はデジタイザ１７Ｃによって検出される。接触位置の検出は、デジタイザ１７Ｃのセンサ板に張り巡らされた複数のアンテナコイルとペン１００との電磁誘導を利用する。
【００３９】
ペン１００には送信用コイルと、そのコイルから連続的に交流磁界を発生させるための電源、ドライバ、筆圧センサ等が設けられる。筆圧センサはペンがタッチスクリーンディスプレイ１７に接触する際に受ける圧力を測定し、筆圧情報を得る。送信用コイルから発生された交流磁界を筆圧情報に応じて変調することにより、ペン１００からデジタイザ１７Ｃに筆圧情報が伝送される。
【００４０】
センサ板にはペン１００から送信された交流磁界を受信する複数の受信用アンテナコイルがＸ軸方向、Ｙ軸方向にそれぞれ配列されている。Ｘ軸方向の複数の受信用アンテナコイルは順次選択され、次いでＹ軸方向の複数の受信用アンテナコイルが順次選択され、それぞれの受信用アンテナコイルの受信レベルが得られる。ペン１００に最も近いアンテナコイルの受信レベルは最大であり、それに隣接するアンテナコイルの受信レベルは徐々に下がるので、受信レベルを判定することにより、ペン１００のペン先のＸ−Ｙ平面内の位置を特定することができる。
【００４１】
なお、ペン１００は加速度センサも内蔵し、ペンの軸を中心とした回転角度を検出可能である。回転角度も交流磁界を変調することにより、デジタイザ１７Ｃへ伝送される。加速度センサは３軸センサに限らず、２軸でもよい。しかし、加速度センサに限らず、ペン１００内に複数、２つの送信用アンテナコイルを設け、２つのコイルからの信号の合成信号に基づきペン１００の回転角度を検出することも可能である。
【００４２】
ペン１００の電源はペン１００に内蔵した電池でもよいが、デジタイザ１７Ｃとペン１００のアンテナコイルが電磁エネルギを授受して、ペン１００のアンテナコイルの両端に交流電圧を発生させ、このエネルギを蓄えておき、電源として使えば、電池を内蔵する必要は無い。
【００４３】
無線通信デバイス１０７は、無線ＬＡＮまたは３Ｇ移動通信などの無線通信を実行するように構成されたデバイスである。タブレットコンピュータ１０は、無線通信デバイス１０７によりインターネット等を介してサーバ２やパーソナルコンピュータ１と接続される。ＥＣ１０８は、電力管理のためのエンベデッドコントローラを含むワンチップマイクロコンピュータである。ＥＣ１０８は、ユーザによるパワーボタンの操作に応じてタブレットコンピュータ１０を電源オンまたは電源オフする機能を有している。加速度センサ１０９はタッチスクリーンディスプレイ１７の画面の回転を検知し、グラフィックスコントローラ１０４はそれに応じてＬＣＤ１７に表示する画像を回転して、縦横を変更する。
【００４４】
次に、手書きノートアプリケーションプログラム２０２によってユーザに提示される画面の例を説明する。手書きノートアプリケーションプログラム２０２が起動されると、図示せぬホーム画面が表示される。ホーム画面は複数の手書き文書データを扱うための基本画面であり、ノートの管理や、アプリケーション全体の設定を行うことが出来る。ホーム画面であるノートアイコンが選ばれると、図６に示すように、このノートアイコンに対応する手書きノートのノートプレビュー画面が表示される。ノートプレビュー画面は、選択された手書きノート内の任意のページを閲覧可能な画面である。手書きノートに含まれる複数のページ９０１，９０２，９０３，９０４，９０５は、これらページ９０１，９０２，９０３，９０４，９０５それぞれの少なくとも一部分が視認可能で且つこれらページ９０１，９０２，９０３，９０４，９０５が重なった形態で表示される。
【００４５】
ノートプレビュー画面は、さらに、メニューを画面の下部に表示する。このメニューは、ホームボタン８２Ａ、ページ一覧ボタン８２Ｂ、ページ追加ボタン８２Ｃ、ページ編集ボタン８２Ｄ、ページ削除ボタン８２Ｅ、ラベルボタン８２Ｆ、検索ボタン８２Ｇ、およびプロパティ表示ボタン８２Ｈを備える。ホームボタン８２Ａは、ノートのプレビューを閉じてホーム画面を表示するためのボタンである。ページ一覧ボタン８２Ｂは、現在選択されている手書きノート内のページの一覧を表示するためのボタンである。ページ追加ボタン８２Ｃは、新しいページを作成（追加）するためのボタンである。編集ボタン８２Ｄはページ編集画面を表示するためのボタンである。ページ削除ボタン８２Ｅは、ページを削除するためのボタンである。ラベルボタン８２Ｆは、使用可能なラベルの種類の一覧を表示するためのボタンである。検索ボタン８２Ｇは検索画面を表示するためのボタンである。プロパティ表示ボタン８２Ｈは、このノートのプロパティを表示するためのボタンである。これらのメニューボタンは指またはペン１００でタッチされることにより選択される。
【００４６】
一方、ペン回転検知アプリケーション２０３は、ペン１００の回転操作によりイベントを発生し、イベントを受け取った手書きノートアプリケーション２０２やその他のアプリケーションは、そのイベントに応じてメニューボタンの選択等を行なう。
【００４７】
図７を参照して、本実施形態でイベント発生トリガとして利用されるペン１００の回転操作について説明する。図７に示す状態で、ペンを握ったまま、主に親指と人差し指を使ってペンを時計方向に所定角度回転する。所定角度はペンを握り直すことなく握ったまま回せる角度、例えば、９０度とする。この角度が大きいと、握ったまま回すことが困難である。逆に、この角度が小さいと、回す意図が無かったにも関わらず回転を検知してしまうことがある。なお、ペンの回転とは、ペンの軸の位置が変わることなく、ペンが回転することに限らず、ペンが手の指の表面上を転がる場合等のペンの軸の位置が変わりながらペンが回転することも含む。
【００４８】
図７のようなペン１００の回転操作を検知するペン回転検知アプリケーション２０３の動作を説明する。
【００４９】
図８は回転検知のために必要な初期角度の設定を示すフローチャートである。ブロックＢ１２で、ペン１００がデジタイザ１７Ｃに接触する、あるいは近傍に位置するかを判定する。手書きあるいはペン入力を行なう時、ペン１００がデジタイザ１７Ｃに接近する。この判定は、ペン１００の送信用アンテナコイルから発生される交流磁界をデジタイザ１７Ｃが検出することにより、行なわれる。図８の処理は、ペン１００がデジタイザ１７Ｃに接近する度に実行される。
【００５０】
ペン１００が検知されると、ブロックＢ１４で、ペンの回転角度Ｄi_detを検知する。角度は、ペン１００に内蔵されている加速度センサで検知し、ペン１００からデジタイザ７Ｃに伝送されてもよいし、加速度センサを内蔵していないペン１００の場合は、ペン１００内に内蔵されている２つのアンテナコイルからの信号を合成することにより、デジタイザ７Ｃで検出しても良い。
【００５１】
ブロックＢ１６で、検知角度Ｄi_detを初期角度Ｄi_iniとする。
【００５２】
図８の実行後、ペン１００の一方の端部がデジタイザ１７Ｃの表示面に接触している、あるいは近傍に位置する際に、図９に示す回転検知処理が実行される。
【００５３】
ブロックＢ２４で、ペンの回転角度Ｄi_detを検知する。ブロックＢ２６で、現在角度Ｄi_detと初期角度Ｄi_iniとの差分Δcur（＝Ｄi_det−Ｄi_ini）を計算する。ブロックＢ２７で、１つ前の差分Δpreの初期値（＝０）を設定する。ブロックＢ２８で、差分Δcurと１つ前の差分Δpreとの差分ΔＤi （＝Δcur−Δpre）を計算する。ブロックＢ３０で、１つ前の差分Δpreを更新する（Δpre←Δcur）。
【００５４】
差分Δcurと１つ前の差分Δpreとの差分ΔＤiを計算するのは、ユーザが意図する回転と、手の振動等による無意識の回転とを識別するためである。ユーザが意図する回転は差分の差分も変化する。そのため、ブロックＢ３２で、差分と１つ前の差分との差分ΔＤiの絶対値が閾値以上であるか否か判定する。閾値以上である場合は、ペンはユーザの意図により回転されていると判断できるので、ブロックＢ３４で、角度保持カウンタをリセットする。角度保持カウンタは、後述する初期角度の更新に使用される。
【００５５】
ブロックＢ３６で、現在角度と初期角度との差分Δcurの絶対値が閾値（例えば、９０度）以上であるか否か判定する。閾値以上である場合は、ブロックＢ３８で、差分Δcurの極性に応じた回転信号を出力する。回転角度は時計方向をプラスと定義すると、差分Δcurがプラス極性の場合は時計方向に回転され、差分Δcurがマイナス極性の場合は反時計方向に回転されたと判定できる。ブロックＢ３６で、差分Δcurの絶対値が閾値以上ではないと判定された場合は、ブロックＢ２４に戻り、回転角度の検知が続けられる。このように、ペンの軸を中心としてペンがある方向に所定角度より大きく回転すると、その回転方向に応じた回転信号が出力される。上述したように、ペンの軸を中心としてペンが所定方向に所定角度より大きく回転することは、ペンの軸の位置が変わることなく、ペンが所定方向に所定角度より大きく回転することと、ペンが手の指の表面上を転がる場合等のペンの軸の位置が変わりながらペンが所定方向に所定角度より大きく回転することを含む。この２通りの回転信号が他のアプリケーションに渡されると、他のアプリケーションでは、所定の情報を入力する。例えば、手書きノートアプリケーションでは、回転信号を受け取ると、ペン種をシャープペン、ボールペン、万年筆、サインペン等に変更したり、線の色、線の太さ、線の透明度を変更してもよい。また、Ｗｅｂブラウザ、写真再生、動画再生、音楽再生アプリケーション等のアプリケーションでは、回転信号を受け取ると、次ページ（前ページ）、次タイトル（前タイトル）、再生速度を１段階高速化（低速化）処理を行ってもよい。
【００５６】
ブロックＢ３２で、差分の差分ΔＤiの絶対値が閾値以上ではないと判定された場合は、ブロックＢ４０で、角度保持カウンタをインクリメントする。角度保持カウンタは差分の差分の絶対値が閾値以上ではない時間を計測する。ユーザが意図する回転は差分の差分も変化するが、それ以外の回転は差分の差分は殆ど変化しない。
【００５７】
ブロックＢ４２で、角度保持カウンタの値が閾値以上であるか否か判定する。閾値以上である場合は、ペンが初期角度から回転されたが、一定時間以上殆ど回転していない場合であるので、ブロックＢ４４で、初期角度を更新する。すなわち、検知角度（現在角度）Ｄi_detを初期角度Ｄi_iniとする。その後、ブロックＢ２４に戻り、回転角度の検知が続けられる。ブロックＢ４２で、角度保持カウンタの値が閾値以上ではないと判定された場合も、ブロックＢ２４に戻り、回転角度の検知が続けられる。
【００５８】
図９の処理によれば、図７に示すようにペン１００の軸を中心としてペン１００を所定方向に所定角度より大きく回転した場合、１回の回転操作がなされたと見做すことができ、その回転方向に応じた回転信号を出力することができる。他のアプリケーションは、この回転信号に応じて所定の処理を実行することができる。これにより、ペンの回転という簡単な操作により、ペン入力が可能となり、ユーザインターフェースが向上する。なお、回転に要する時間が所定時間以上の場合は、入力のための回転操作と見做さないので、手のブレ等による微回転とユーザの意図する回転操作とを区別することができる。
【００５９】
次に、回転操作の他の例を説明する。上述の例は、一方向への所定角度より大きい角度の回転をペン操作として検出したが、特に、手書き入力中の場合は、ペンを回転したら、元の初期位置に戻すことが多い。そこで、図１０に示すように、ペンの軸を中心としてペンが第１方向に第１角度より大きく回転し、次いで第１方向とは略反対方向の第２方向に第２角度より大きく回転し、ペンの角度を略元の角度付近まで戻すことを１回のペン操作として検出する例を説明する。図１０の（ａ）、（ｂ）に示す状態で、ペンを握ったまま、主に親指と人差し指を使ってペンの軸を中心としてペンを時計方向に所定角度回転する。所定角度はペンを握り直すことなく握ったまま回せる角度、例えば、９０度とする。この角度が大きいと、握ったまま回すことが困難である。逆に、この角度が小さいと、回す意図が無かったにも関わらず回転を検知してしまうことがある。回転後、図１０の（ｃ）、（ｄ）に示す状態から、ペンを握ったままペンを反時計方向に所定角度回転し、ほぼ図１０（ａ）、（ｂ）に示す状態に戻す。なお、厳密に元の状態に戻らなくても、時計方向と反時計方向にほぼ同じ角度だけ回転すれば良いとする。ペン１００にペンボタン１００Ａやクリップ１００Ｂが設けられている場合は、ユーザはそれらの位置を目安に、第１方向に回転後、第２方向に回転し、元の位置に復帰させることができる。
【００６０】
図１０のようなペン１００の回転操作を検知するペン回転検知アプリケーション２０３の動作を図１１、図１２のフローチャートを参照して説明する。初期角度の設定は、図８に示す動作と同じである。
【００６１】
初期角度の設定後、ペン１００の一方の端部がデジタイザ１７Ｃの表示面に接触している、あるいは近傍に位置する際に、図１１に示す回転検知処理が実行される。図１１のフローチャートで図９と対応する部分は同じ参照数字を付して詳細な説明は省略する。
【００６２】
ブロックＢ２２で、回転フラグがセットされているか否か判定する。回転フラグは、後述するようにペンが所定方向に所定角度より大きく回転すると、セットされるので、ペンの回転が初期状態からの回転か、それとも初期状態へ復帰する回転かを区別することができる。
【００６３】
回転フラグがセットされていない場合、初期状態からの回転と判断できる。この場合、ブロックＢ２４で、ペンの回転角度Ｄi_detを検知する。ブロックＢ２６で、現在角度Ｄi_detと初期角度Ｄi_iniとの差分Δcur（＝Ｄi_det−Ｄi_ini）を計算する。ブロックＢ２７で、１つ前の差分Δpreの初期値（＝０）を設定する。ブロックＢ２８で、この差分Δcurと１つ前の差分Δpreとの差分ΔＤi （＝Δcur−Δpre）を計算する。ブロックＢ３０で、１つ前の差分Δpreを更新する（Δpre←Δcur）。
【００６４】
差分Δcurと１つ前の差分Δpreとの差分ΔＤiを計算するのは、ユーザが意図する回転と、手の振動等による無意識の回転とを識別するためである。ユーザが意図する回転は差分の差分も変化する。そのため、ブロックＢ３２で、差分と１つ前の差分との差分ΔＤiの絶対値が閾値以上であるか否か判定する。閾値以上である場合は、ペンはユーザの意図により回転されていると判断できるので、ブロックＢ３４で、角度保持カウンタをリセットする。角度保持カウンタは、後述する初期角度の更新に使用される。
【００６５】
ブロックＢ３６で、現在角度と初期角度との差分Δcurの絶対値が閾値（例えば、９０度）以上であるか否か判定する。閾値以上である場合は、第１方向に所定角度より大きく回転されたと判断でき、ブロックＢ３８で、回転フラグをセットする。その後、ブロックＢ２２へ戻る。ブロックＢ３６で、差分Δcurの絶対値が閾値以上ではないと判定された場合は、ブロックＢ２２に戻る。
【００６６】
ブロックＢ３２で、差分の差分ΔＤiの絶対値が閾値以上ではないと判定された場合は、ブロックＢ４０で、角度保持カウンタをインクリメントする。角度保持カウンタは差分の差分の絶対値が閾値以上ではない時間を計測する。ユーザが意図する回転は差分の差分も変化するが、それ以外の回転は差分の差分は殆ど変化しない。
【００６７】
ブロックＢ４２で、角度保持カウンタの値が閾値以上であるか否か判定する。閾値以上である場合は、ペンが一定時間以上殆ど回転していない場合であるので、ブロックＢ４４で、初期角度を更新する。すなわち、検知角度（現在角度）Ｄi_detを初期角度Ｄi_iniとする。その後、ブロックＢ２２に戻る。ブロックＢ４２で、角度保持カウンタの値が閾値以上ではないと判定された場合も、ブロックＢ２２に戻る。
【００６８】
ブロックＢ２２で、回転フラグがセットされていると判定されると、図１２のブロックＢ５２で、ペンの回転角度Ｄi_detを検知する。ブロックＢ５４で、現在角度Ｄi_detと初期角度Ｄi_iniとの差分Δcur（＝Ｄi_det−Ｄi_ini）を計算する。ブロックＢ５６で、この差分Δcurと１つ前の差分Δpreとの差分ΔＤi （＝Δcur−Δpre）を計算する。ブロックＢ５８で、１つ前の差分Δpreを更新する（Δpre←Δcur）。
【００６９】
差分Δcurと１つ前の差分Δpreとの差分ΔＤiを計算するのは、ユーザが意図する回転と、手の振動等による無意識の回転とを識別するためである。ユーザが意図する回転は差分の差分も変化する。そのため、ブロックＢ６０で、差分と１つ前の差分との差分ΔＤiの絶対値が閾値以上であるか否か判定する。閾値以上である場合は、ペンはユーザの意図により回転されていると判断できるので、ブロックＢ６２で、角度保持カウンタをリセットする。角度保持カウンタは、後述する初期角度の更新に使用される。
【００７０】
ブロックＢ６４で、現在角度と初期角度との差分Δcurの絶対値が閾値（例えば、９０度）以下であるか否か判定する。閾値以下である場合は、第１方向に所定角度より大きく回転された後、第２方向に所定角度より大きく回転され、略元の状態に戻ったと判断でき、ブロックＢ６６で、回転フラグをリセットする。その後、ブロックＢ６８で、差分Δcurの極性に応じた回転信号を出力し、処理が終了する。これは、最初に時計方向に回転した（Δcurがプラス）か、反時計方向に回転した（Δcurがマイナス）かにより、異なる操作として異なる回転信号を出力するためである。ブロックＢ６４で、差分Δcurの絶対値が閾値以下ではないと判定された場合は、ブロックＢ２２に戻る。
【００７１】
ブロックＢ６０で、差分の差分ΔＤiの絶対値が閾値以上ではないと判定された場合は、ブロックＢ７０で、角度保持カウンタをインクリメントする。角度保持カウンタは差分の差分の絶対値が閾値以上ではない時間を計測する。ユーザが意図する回転は差分の差分も変化するが、それ以外の回転は差分の差分は殆ど変化しない。
【００７２】
ブロックＢ７２で、角度保持カウンタの値が閾値以上であるか否か判定する。閾値以上である場合は、ペンが初期角度から回転されたが、一定時間以上殆ど回転していない場合であるので、ブロックＢ７４で、初期角度を更新する。すなわち、検知角度（現在角度）Ｄi_detを初期角度Ｄi_iniとする。ブロックＢ７６で、回転フラグをリセットする。その後、ブロックＢ２２に戻る。ブロックＢ７２で、角度保持カウンタの値が閾値以上ではないと判定された場合も、ブロックＢ２２に戻る。
【００７３】
図１１、図１２の処理によれば、ペン１００を初期角度から第１方向に所定角度より大きく回転し、続いて第２方向に所定角度より大きく回転した場合、第１方向に応じた回転信号を出力することができる。他のアプリケーションは、この回転信号に応じて所定の処理を実行することができる。なお、回転に要する時間が所定時間以上の場合は、入力のための回転操作と見做さないので、手のブレ等による微回転とユーザの意図する回転操作とを区別することができる。
【００７４】
図１３は、ペン回転検知アプリケーション２０３からの回転信号を検出して所定の操作を実行する手書きノートアプリケーションの処理の一例を示すフローチャートである。ブロックＢ８２で、ペンが動いているか否か検出する。ペンの動きは、デジタイザ１７Ｃがペン先のＸ−Ｙ平面内の位置が変化しているか否かにより検出できる。ペンの動きがあることを検出すると、ブロックＢ８４でペンの動きの軌跡をＬＣＤ１７Ａ上で表示する。ブロックＢ８６でペンの動きの軌跡に対応する座標列に基づいて図３に示すような時系列情報（時系列のストロークデータ）を生成し、その時系列情報を手書きページ情報として一時保存する。
【００７５】
ブロックＢ８８で、ペン回転検知アプリケーションからの回転信号を受信しているか否かを判定する。回転信号を受信していない場合は、ブロックＢ８２に戻り、ペンの動きの検出が続けられる。回転信号を受信している場合は、ブロックＢ９０で、一定時間前に生成された時系列情報を消去する。これは、回転信号を受信する直前のペンの動きは回転操作により情報を入力するためのものであり、文字の手書きを意図したものではないからである。そのため、回転操作中に生成された時系列情報は一時保存場所から削除される。
【００７６】
ブロックＢ９２でペン種類をシャープペン、ボールペン、万年筆、サインペン等に変更したり、線の色、線の太さ、線の透明度を変更する。
【００７７】
図１１、図１２の処理によれば、図１０に示すようにペン１００を初期角度から所定角度より大きく回転し、次いで元の角度付近まで逆方向に回転した場合、１回の回転操作がなされたとみなすことができる。最初に時計方向に回転されたか、反時計方向に回転されたかに応じて、異なる回転操作として区別して検出できるので、ペンの往復回転により２つの回転操作を他のアプリケーションに与えることができ、ユーザインターフェースが向上する。なお、回転に要する時間が所定時間以上の場合は、入力のための回転操作と見做さないので、手のブレ等による微回転とユーザの意図する回転操作とを区別することができる。元の状態に戻して回転操作として検出されるので、途中で回転を中止すれば、それまでの回転は無視される。このため、回転後に気が変わった場合、あるいは間違って回転した場合、元に戻さずに回転を中止すればよい。
【００７８】
以上説明したように、本実施形態によれば、ペンの１回の回転操作を検知することにより、所定の情報を入力することができる。回転操作は、一方向への所定角度以上の回転操作に限らず、第１方向への所定角度以上の回転後、第２方向への所定角度以上の回転という往復の回転操作も含む。１回の回転操作毎に、これらの回転操作に予め割り当てられている処理（例えば、ペン種類、線の色、線の太さ、線の透明度等の変更）が行なわれる。例えば、ペン種類が割り当たられている場合、１回の回転操作毎にペン種類が一定の順番（例えば、シャープペン→ボールペン→万年筆→サインペン→シャープペン等）で変更する。反対方向の回転操作が行われると、逆方向の順番でペン種類が変更する。回転操作に割り当てる処理はペンの先端部に設けられているペン先スイッチを指で押すことにより、変更してもよい。例えば、ペン先スイッチが押される毎に、回転操作に応答する処理がペン種類→線の色→線の太さ→線の透明度→ペン種類等に変化しても良い。手書きノートアプリケーション以外の場合、例えばＷｅｂブラウザ、写真再生、動画再生、音楽再生アプリケーション等のアプリケーションでは、回転操作に応答して、次ページ（前ページ）、次タイトル（前タイトル）、再生速度を１段階高速化（低速化）処理を行ってもよい。
【００７９】
上述の実施形態は、１回の回転操作の検出毎に１つの回転信号を出力するが、回転操作の期間中複数の回転信号を出力しても良い。例えば、図１４に示すように、図９のフローチャートにおいてΔcurの絶対値と閾値との比較ブロックＢ３６と回転信号の出力ブロックＢ３８との順番を逆にすると、初期角度から一定角度より大きく回転するまでの期間、回転信号を複数回出力することができる。同様に、図１５に示すように、図１２のフローチャートにおいて回転信号の出力ブロックＢ６８をΔcurの絶対値と閾値との比較ブロックＢ６４の前に実行すると、初期角度から第１方向に一定角度より大きく回転した後、第２方向に一定角度より大きく回転するまでの期間、回転信号を複数回出力することができる。
【００８０】
なお、回転信号を複数回出力する期間は、第１方向に一定角度より大きく回転するまでの期間（図１４）、初期角度から第１方向に一定角度より大きく回転した後、第２方向に一定角度より大きく回転するまでの期間（図１５）に限らず、ペン１００の指が接触する位置である先端手前に設けられているペンボタン１００Ａがオンされている期間としてもよい。これによれば、ペン１００を回転操作中、任意の期間、ペンボタン１００Ａをオンすることにより、回転信号を複数回出力するとともに、回転操作終了後にも回転信号を出力することができる。
【００８１】
上述した回転操作の検知時の処理はある項目の選択に関するものであったが、これ以外の処理も可能である。例えば、パスワード入力に利用（例えば、時計方向に３回転後、反時計方向に５回転等）することも可能である。
【００８２】
なお、本実施形態の処理はコンピュータプログラムによって実現することができるので、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じてこのコンピュータプログラムをコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
【００８３】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００８４】
１７…タッチスクリーンディスプレイ、１００…ペン、１０１…ＣＰＵ、１０２…システムコントローラ、１０３…主メモリ、２０２…手書きノートアプリケーション、２０３…ペン回転検知アプリケーション
【図１】
2015225527.tif 000003
【図２】
2015225527.tif 000004
【図３】
2015225527.tif 000005
【図４】
2015225527.tif 000006
【図５】
2015225527.tif 000007
【図６】
2015225527.tif 000008
【図７】
2015225527.tif 000009
【図８】
2015225527.tif 000010
【図９】
2015225527.tif 000011
【図１０】
2015225527.tif 000012
【図１１】
2015225527.tif 000013
【図１２】
2015225527.tif 000014
【図１３】
2015225527.tif 000015
【図１４】
2015225527.tif 000016
【図１５】
2015225527.tif 000017