(57)【要約】【課題】マルチタッチを必要とするジェスチャー機能をペン操作で実現することができるプログラム、情報処理装置、ペンデバイス及びシステムを提供する。【解決手段】コンピュータ２のペンデバイスドライバ６がタッチパネル３からタッチ点の座標データを取得し、ペンデバイス４からタッチの入力点数を示す入力点数情報及びジェスチャー機能を示す機能情報を取得し、設定画面からジェスチャー機能を実行するためのパラメータを設定し、入力点数情報がタッチパネル３からのタッチ点以外の点を含む場合に、入力点数情報及びパラメータに基づいてダミーの入力点の座標データを算出し、ペンデバイスドライバ６を起動するＣＰＵ１１がタッチ点の座標データ及びダミーの入力点の座標データに基づいて機能情報で特定されるジェスチャー機能を実行する。【選択図】図１
2019185118.tif 000002
【特許請求の範囲】
【請求項１】
タッチパネル及びペンデバイスと通信可能なコンピュータを、
前記タッチパネルからタッチ点の座標データを取得する第１取得手段、
前記ペンデバイスからタッチの入力点数を示す入力点数情報及びジェスチャー機能を示す機能情報を取得する第２取得手段、
前記機能情報で特定されるジェスチャー機能を実行するためのパラメータを設定する設定手段、
前記入力点数情報が前記タッチ点以外の点を含む場合に、前記入力点数情報及び前記パラメータに基づいてダミーの入力点の座標データを算出する算出手段、及び
前記タッチ点の座標データ及び前記ダミーの入力点の座標データに基づいて前記機能情報で特定されるジェスチャー機能を実行する実行手段
として機能させることを特徴とするプログラム。
【請求項２】
前記機能情報で特定されるジェスチャー機能は、縮小、拡大、回転、平行移動又は機能なしのいずれか１つであることを特徴とする請求項１に記載のプログラム。
【請求項３】
前記設定手段は、前記ペンデバイスのスイッチに割り当てられる前記入力点数情報及び前記機能情報を変更する変更手段を備えていることを特徴とする請求項１又は２に記載のプログラム。
【請求項４】
タッチパネル及びペンデバイスと通信可能な情報処理装置であって、
前記タッチパネルからタッチ点の座標データを取得する第１取得手段と、
前記ペンデバイスからタッチの入力点数を示す入力点数情報及びジェスチャー機能を示す機能情報を取得する第２取得手段と、
前記機能情報で特定されるジェスチャー機能を実行するためのパラメータを設定する設定手段と、
前記入力点数情報が前記タッチ点以外の点を含む場合に、前記入力点数情報及び前記パラメータに基づいてダミーの入力点の座標データを算出する算出手段と、
前記タッチ点の座標データ及び前記ダミーの入力点の座標データに基づいて前記機能情報で特定されるジェスチャー機能を実行する実行手段と
を備えることを特徴とする情報処理装置。
【請求項５】
情報処理装置と通信可能なペンデバイスであって、
タッチの入力点数を示す入力点数情報を前記情報処理装置に出力する第１スイッチと、
ジェスチャー機能を示す機能情報を前記情報処理装置に出力する第２スイッチと、
予め割り当てられた入力点数情報及び予め割り当てられた機能情報を前記情報処理装置に出力する第３スイッチと、
前記情報処理装置からの設定コマンドに基づいて、前記第３スイッチに割り当てられた入力点数情報及び機能情報を変更する変更手段と
を備えていることを特徴とするペンデバイス。
【請求項６】
ペンデバイス及び情報処理装置を備えるシステムであって、
前記ペンデバイスは、
タッチの入力点数を示す入力点数情報を前記情報処理装置に出力する第１スイッチと、
ジェスチャー機能を示す機能情報を前記情報処理装置に出力する第２スイッチと、
予め割り当てられた入力点数情報及び予め割り当てられた機能情報を前記情報処理装置に出力する第３スイッチと、
を備え、
前記情報処理装置は、
タッチパネルからタッチ点の座標データを取得する第１取得手段と、
前記第１スイッチ及び前記第２スイッチ、又は前記第３スイッチから前記入力点数情報及び前記機能情報を取得する第２取得手段と、
前記機能情報で特定されるジェスチャー機能を実行するためのパラメータを設定する設定手段と、
前記入力点数情報が前記タッチ点以外の点を含む場合に、前記入力点数情報及び前記パラメータに基づいてダミーの入力点の座標データを算出する算出手段と、
前記タッチ点の座標データ及び前記ダミーの入力点の座標データに基づいて前記機能情報で特定されるジェスチャー機能を実行する実行手段と
を備えることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理装置、ペンデバイス及びシステムに関する。
【背景技術】
【０００２】
マルチタッチ方式のタッチパネルでは、複数の指を用いてジェスチャーと呼ばれる予め定められた操作により様々な機能を実現することができる。また、レーザセンサを内蔵して相対座標データを出力できるペンデバイスが存在する。従来より、ピンチインやピンチアウトといったマルチタッチ操作を可能とする入力ペンが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１７７７３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
タッチパネルでは指による操作を基本としているが、油脂の付着や操作の確実性などからスタイラスペンを使用するユーザも多く存在する。しかしながら、ジェスチャー機能の中には、マルチタッチを必要とする機能もあるため、スタイラスペンではそのような機能を使用することができない。また、シングルタッチ方式のタッチパネルでは、マルチタッチを必要とするジェスチャー機能を使用することができない。
【０００５】
本発明の目的は、マルチタッチを必要とするジェスチャー機能をペン操作で実現することができるプログラム、情報処理装置、ペンデバイス及びシステムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、明細書に開示されたプログラムは、タッチパネル及びペンデバイスと通信可能なコンピュータを、前記タッチパネルからタッチ点の座標データを取得する第１取得手段、前記ペンデバイスからタッチの入力点数を示す入力点数情報及びジェスチャー機能を示す機能情報を取得する第２取得手段、前記機能情報で特定されるジェスチャー機能を実行するためのパラメータを設定する設定手段、前記入力点数情報が前記タッチ点以外の点を含む場合に、前記入力点数情報及び前記パラメータに基づいてダミーの入力点の座標データを算出する算出手段、及び前記タッチ点の座標データ及び前記ダミーの入力点の座標データに基づいて前記機能情報で特定されるジェスチャー機能を実行する実行手段として機能させることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、マルチタッチを必要とするジェスチャー機能をペン操作で実現することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施の形態に係る情報処理装置を含むシステムの構成図である。
【図２】（Ａ）はコンピュータの構成を示すブロック図である。（Ｂ）はペンデバイスの構成を示すブロック図である。
【図３】ペンデバイスの外観図である。
【図４】コンピュータからペンデバイスに送信される設定コマンドの例を示す図である。
【図５】ペンデバイスからコンピュータに送信されるスイッチデータの例を示す図である。
【図６】機能スイッチの設定を入力するためのペンデバイスドライバの設定画面の一例を示す図である。
【図７】縮小のジェスチャー機能が指定された場合にペンデバイスドライバで実行される処理を示すフローチャートである。
【図８】縮小のジェスチャー機能を示す概念図である。
【図９】ペンデバイスドライバの縮小用パラメータの設定画面の一例を示す図である。
【図１０】拡大のジェスチャー機能が指定された場合にペンデバイスドライバで実行される処理を示すフローチャートである。
【図１１】拡大のジェスチャー機能を示す概念図である。
【図１２】ペンデバイスドライバの拡大用パラメータの設定画面の一例を示す図である。
【図１３】回転のジェスチャー機能が指定された場合にペンデバイスドライバで実行される処理を示すフローチャートである。
【図１４】回転のジェスチャー機能を示す概念図である。
【図１５】ペンデバイスドライバの回転用パラメータの設定画面の一例を示す図である。
【図１６】平行移動のジェスチャー機能が指定された場合にペンデバイスドライバで実行される処理を示すフローチャートである。
【図１７】平行移動のジェスチャー機能を示す概念図である。
【図１８】ペンデバイスドライバの平行移動用パラメータの設定画面の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照しながら本発明の実施の形態を説明する。
【００１０】
図１は、本実施の形態に係る情報処理装置を含むシステムの構成図である。システム１は、情報処理装置としてのコンピュータ２、タッチパネル３及びペンデバイス４を備えている。コンピュータ２には、タッチパネルドライバ５及びペンデバイスドライバ６がインストールされている。
【００１１】
タッチパネル３は、ＵＳＢ（Universal Serial Bus）やPS/2などのシリアル通信を介してコンピュータ２に接続されている。タッチパネル３はシングルタッチ方式のタッチパネルでもよいし、マルチタッチ方式のタッチパネルでもよい。本実施の形態では、ペンデバイス４を使ってタッチパネル３の入力を行うので、タッチパネル３はシングルタッチ方式のタッチパネルとする。
【００１２】
ペンデバイス４は、ＵＳＢ（Universal Serial Bus）などの有線又はbluetooth（登録商標）などの無線を介してコンピュータ２に接続されている。ペンデバイス４は、シングルタッチ及びマルチタッチの入力点数を示す入力点数情報と、縮小、拡大、回転及び平行移動などのジェスチャー機能を示す機能情報とを含むスイッチデータをペンデバイスドライバ６に出力する。
【００１３】
タッチパネルドライバ５は、タッチパネル３から座標データを取得し、取得した座標データをペンデバイスドライバ６に出力する。ペンデバイスドライバ６は、タッチパネルドライバ５からタッチパネル３の座標データを取得し、ペンデバイス４からスイッチデータを取得する。そして、ペンデバイスドライバ６は、タッチパネル３の座標データ及びスイッチデータに基づいて、ジェスチャー用のダミーデータを含むマルチタッチの座標データを作成し、マルチタッチの座標データを出力する。
【００１４】
図２（Ａ）は、コンピュータ２の構成を示すブロック図である。図２（Ｂ）は、ペンデバイス４の構成を示すブロック図である。
【００１５】
図２（Ａ）において、コンピュータ２は、ＣＰＵ１１、ＲＡＭ１２、ＲＯＭ１３、ハードディスクドライブ（ＨＤＤ）１４、有線通信ＩＦ１５、無線コントローラ１６及び入力部１７を備えている。ＣＰＵ１１は、バス１９を介してＲＡＭ１２、ＲＯＭ１３、ハードディスクドライブ（ＨＤＤ）１４、有線通信ＩＦ１５及び無線コントローラ１６に接続されている。ＣＰＵ１１は設定手段及び実行手段として機能し、ペンデバイスドライバ６を起動するＣＰＵ１１は第１取得手段、第２取得手段及び算出手段として機能する。
【００１６】
ＣＰＵ１１はコンピュータ２の全体動作を制御する。ＲＡＭ１２は、一時的にデータを保存し、ワーキングエリアとして機能する。ＲＯＭ１３は、各種のデータやプログラムなどを保存する。ＨＤＤ１４は、タッチパネルドライバ５、ペンデバイスドライバ６、及び設定情報のデータベースであるレジストリ１８を備えている。タッチパネル３やペンデバイス４とデータ通信する場合に、タッチパネルドライバ５及びペンデバイスドライバ６は、ＣＰＵ１１によりＨＤＤ１４から読み出されて実行される。有線通信ＩＦ１５は、例えばＵＳＢ端子などであり、ペンデバイス４にＵＳＢケーブルを介して接続される。無線コントローラ１６は、ペンデバイス４に対してbluetoothなどの無線通信を行う。入力部１７は、不図示のキーボードやマウスなどの入力装置に接続され、キーデータ及びマウスデータを入力する。
【００１７】
図２（Ｂ）において、ペンデバイス４は、マイコン２１、スイッチ２２、記憶媒体２３、有線通信ＩＦ２４、無線コントローラ２５及びバッテリ２６を備えている。マイコン２１は、変更手段として機能し、ペンデバイス４の全体動作を制御する。スイッチ２２は、ペンデバイス４の筐体の側面に設けられた複数のメカスイッチであり、その詳細は後述する。記憶媒体２３は、例えばＥＥＰＲＯＭなどの不揮発性メモリであり、後述する機能スイッチの設定を保存する。有線通信ＩＦ２４は、例えばＵＳＢ端子などであり、コンピュータ２にＵＳＢケーブルを介して接続される。無線コントローラ２５は、コンピュータ２に対してbluetoothなどの無線通信を行う。バッテリ２６は例えば電池であり、マイコン２１及び無線コントローラ２５などに電力を供給する。ペンデバイス４は座標検出を行わないので、低消費電流で動作可能である。
【００１８】
図３は、ペンデバイス４の外観図である。ペンデバイス４の後端には、縮小、拡大、回転及び平行移動などのジェスチャー機能を指定するノック式スイッチ３１が設けられている。ノック式スイッチ３１が押下される度に、指定なし→縮小→拡大→回転→平行移動→指定なしのようにジェスチャー機能を切り替えることができる。
【００１９】
また、ペンデバイス４の筐体の側面には、マルチタッチの入力点数を指定するための点数スイッチ３２ａ〜３２ｄと、マルチタッチの入力点数及びジェスチャー機能が割り当てられた機能スイッチ３３ａ，３３ｂとが設けられている。点数スイッチ３２ａ〜３２ｄは第１スイッチとして機能し、ノック式スイッチ３１は第２スイッチとして機能し、機能スイッチ３３ａ，３３ｂは第３スイッチとして機能する。
【００２０】
点数スイッチ３２ａ〜３２ｄを押下しながら操作すると、入力されるダミー座標の点数が１〜４つにそれぞれ設定される。この場合、ペンデバイス４の先端による実際の入力座標データを含む２〜５つの座標データがペンデバイスドライバ６上で形成される。点数スイッチ３２ａ〜３２ｄが押下されていない場合には、ダミーの座標データは形成されない。
【００２１】
例えば、ノック式スイッチ３１のジェスチャー機能が縮小に設定され、点数スイッチ３２ａを押下しながら操作すると、タッチの入力点数が２つであることを示す入力点数情報及び縮小のジェスチャー機能を示す機能情報を含むスイッチデータがペンデバイスドライバ６に出力される。
【００２２】
機能スイッチ３３ａ，３３ｂは、コンピュータ２のペンデバイスドライバ６の設定に基づいて、マルチタッチの入力点数及びジェスチャー機能が割り当てられる。例えば、ペンデバイスドライバ６の設定画面において、マルチタッチの２つの入力点数、即ちダミー座標の１つの入力点数及び縮小のジェスチャー機能を機能スイッチ３３ａに設定すると、設定コマンドがペンデバイス４に送信され、マイコン２１が設定コマンドと機能スイッチ３３ａと関連付ける。これにより、マルチタッチの２つの入力点数及び縮小のジェスチャー機能が機能スイッチ３３ａに割り当てられる。マイコン２１はコンピュータ２からの設定コマンドに基づいて機能スイッチ３３ａに割り当てられる入力点数及びジェスチャー機能を変更可能である。尚、設定コマンドは記憶媒体２３に保存される。
【００２３】
機能スイッチ３３ａ又は３３ｂを押下しながら操作した場合には、機能スイッチ３３ａ又は３３ｂの設定がノック式スイッチ３１及び点数スイッチ３２ａ〜３２ｄの設定よりも優先される。例えば、縮小のジェスチャー機能が機能スイッチ３３ａに割り当てられ、機能スイッチ３３ａを押下している場合には、ノック式スイッチ３１のジェスチャー機能が回転である場合でも、縮小のジェスチャー機能を示す機能情報を含むスイッチデータがペンデバイスドライバ６に出力される。
【００２４】
図４は、コンピュータ２からペンデバイス４に送信される設定コマンドの例を示す図である。
【００２５】
図４に示すように、設定コマンドの１バイト目には、機能スイッチ３３ａ又は３３ｂを指定する値が入力される。設定コマンドの２バイト目には、マルチタッチデータの入力点数を指定する値が入力される。入力点数の値が１である場合には、ダミー座標数が０であること、つまり、ダミーの座標データが形成されないことを示す。入力点数の値が２〜５である場合には、ダミー座標数がそれぞれ１〜４つであることを示す。
【００２６】
設定コマンドの３バイト目には、ジェスチャー機能を指定する値が入力される。ジェスチャー機能を指定する値が１である場合には、ジェスチャー機能の指定がないことを示す。ジェスチャー機能を指定する値が２〜５である場合には、ジェスチャー機能として縮小、拡大、回転及び平行移動がそれぞれ設定されたことを示す。尚、設定コマンドの２バイト目又は３バイト目が０である場合には、指定された機能スイッチの設定は削除される。
【００２７】
図５は、ペンデバイス４からコンピュータ２に送信されるスイッチデータの例を示す図である。図５に示すように、入力点数情報及び機能情報を含むスイッチデータの１バイト目のビット０〜ビット５には、点数スイッチ３２ａ〜３２ｄ及び機能スイッチ３３ａ，３３ｂのオン又はオフを示す値がそれぞれ入力される。設定コマンドの１バイト目のビット６〜ビット７には、固定値として０が入力される。
【００２８】
スイッチデータの２バイト目は、入力点数情報に対応し、シングルタッチデータ及びマルチタッチデータの入力点数を指定する値が入力される。入力点数の値が１である場合には、ダミー座標数が０であること、つまり、ダミーの座標データが形成されないことを示す。入力点数の値が２〜５である場合には、ダミー座標数がそれぞれ１〜４つであることを示す。
【００２９】
スイッチデータの３バイト目は、機能情報に対応し、ジェスチャー機能を指定する値が入力される。ジェスチャー機能を指定する値が１である場合には、ジェスチャー機能の指定がないことを示す。ジェスチャー機能を指定する値が２〜５である場合には、ジェスチャー機能として縮小、拡大、回転及び平行移動がそれぞれ指定されたことを示す。
【００３０】
尚、機能スイッチ３３ａ又は３３ｂが押下された場合には、スイッチデータがコンピュータ２に送信されるが、対応する機能スイッチ３３ａ又は３３ｂの設定がペンデバイスドライバ６で予め行われている場合には、ペンデバイスドライバ６は、スイッチデータに含まれる入力点数情報及び機能情報を使用せず、コンピュータ２に保存されている機能スイッチ３３ａ又は３３ｂの設定データに基づいてマルチタッチの座標データを作成してもよい。
【００３１】
図６は、機能スイッチ３３ａ又は３３ｂの設定を入力するためのペンデバイスドライバ６の設定画面の一例を示す図である。
【００３２】
図６の設定画面は、機能スイッチ３３ａ又は３３ｂの設定の保存先を選択する選択欄３４と、機能スイッチ３３ａ又は３３ｂのいずれかを選択する選択欄３５と、機能スイッチ３３ａ又は３３ｂに割り当てられる、ダミーの入力点を含む入力点数を選択する選択欄３６と、機能スイッチ３３ａ又は３３ｂに割り当てられる機能を選択する選択欄３７とを備えている。機能スイッチ３３ａ又は３３ｂの設定の保存先がコンピュータ２である場合には、機能スイッチ３３ａ又は３３ｂの設定データはレジストリ１８に保存される。機能スイッチ３３ａ又は３３ｂの設定の保存先がペンデバイス４である場合には、機能スイッチ３３ａ又は３３ｂの設定データはペンデバイス４に送信され、記憶媒体２３に保存される。尚、選択欄３６及び選択欄３７を空欄に設定すると、レジストリ１８又は記憶媒体２３に保存された設定データは削除される。
【００３３】
以下、縮小、拡大、回転及び平行移動の各ジェスチャー機能が指定された場合にペンデバイスドライバ６で実行される処理を説明する。各処理はＣＰＵ１１がペンデバイスドライバ６を実行することにより実現される。
【００３４】
図７は、縮小のジェスチャー機能が指定された場合にペンデバイスドライバ６で実行される処理を示すフローチャートである。図８は、縮小のジェスチャー機能を示す概念図である。
【００３５】
図７において、ペンデバイスドライバ６はタッチパネル３から図８のタッチした座標データＴ１をタッチパネルドライバ５を介して取得すると共に、ペンデバイス４から入力点数情報及び機能情報を含むスイッチデータを取得する（Ｓ１）。なお、スイッチデータが取得できない場合（例えば、入力点数が指定されていない場合）又は機能情報が出力なしと設定されている場合には、ペンデバイスドライバ６はダミー座標データをＣＰＵ１１自身に出力しないものとし、本処理を行わない。
【００３６】
ペンデバイスドライバ６は機能情報が縮小のジェスチャー機能であるか否かを判別する（Ｓ２）。機能情報が縮小のジェスチャー機能でない場合には（Ｓ２でＮＯ）、ペンデバイスドライバ６は後述する縮小以外の処理を行う（Ｓ３）。機能情報が縮小のジェスチャー機能である場合には（Ｓ２でＹＥＳ）、ペンデバイスドライバ６は、ペンデバイス４の先端がタッチパネル３上で移動したときの図８の移動座標データＴ２をタッチパネルドライバ５から取得する（Ｓ４）。移動座標データＴ２は、ペンデバイス４の先端が移動している途中の座標データを示し、時間に応じて変化するものとする。
【００３７】
次いで、ペンデバイスドライバ６は、図８の縮小の収束点Ａが設定済みであるか否かを判別する（Ｓ５）。縮小の収束点Ａが設定済みでない場合には（Ｓ５でＮＯ）、ペンデバイスドライバ６は、座標データＴ１及び移動座標データＴ２を結ぶ直線上で移動座標データＴ２から距離Ｒだけ離れた位置に収束点Ａを設定する（Ｓ６）。距離Ｒは、固定値である又は座標データＴ１と移動座標データＴ２と間の距離の定数倍である。縮小の収束点Ａが設定済みである場合には（Ｓ５でＹＥＳ）、処理はＳ５からＳ７に進む。尚、初めて移動座標データＴ２を取得した場合には、収束点Ａは未設定であるので、処理はＳ５からＳ６に進む。一方、後述するＳ９からＳ４に戻るループ処理では、すでに収束点ＡはＳ６で設定済みなので、処理はＳ５からＳ７に進む。
【００３８】
図９は、ペンデバイスドライバ６の縮小用パラメータの設定画面の一例を示す図である。図９の設定画面は、収束点Ａの設定に使用される固定値又は倍率の選択欄４１と、収束点Ａを固定値で設定する場合の収束点Ａの座標の入力欄４２と、収束点Ａを距離Ｒの倍率で設定する場合の倍率の入力欄４３と、ダミーの入力点に割り当てられる角度情報θnの入力欄４４とを備えている。角度情報θnは、座標データＴ１及び収束点Ａを結ぶ直線と、各ダミーの入力点及び収束点Ａを結ぶ直線との間の角度を示す。図９の各欄に設定された縮小用パラメータはレジストリ１８に保存され、ペンデバイスドライバ６のインストール時に設定される。また縮小用パラメータの各値はアプリケーションにより変更することができる。
【００３９】
図７に戻り、ペンデバイスドライバ６は、スイッチデータ内のダミーの入力点数及び各ダミーの入力点に割り当てられている角度情報θnに基づいて、収束点Ａから移動座標データＴ２までの距離ｒを半径とした円上に配置されるダミーの入力点のダミー座標データＤｎを算出する（Ｓ７）。図８ではダミーの入力点は３つである。尚、収束点Ａから移動座標データＴ２までの距離ｒは、最初は距離Ｒと一致するが、ペンデバイス４の先端の移動に応じて減少する。
【００４０】
ペンデバイスドライバ６は、移動座標データＴ２と共に算出されたダミー座標データＤｎをＣＰＵ１１自身に出力し、ＣＰＵ１１が縮小のジェスチャー機能を実行する（Ｓ８）。ペンデバイスドライバ６は、タッチパネルドライバ５からのタッチオフ情報に基づいて、ペンデバイス４の先端がタッチパネル３から離れたか、即ちタッチオフであるか否かを判定する（Ｓ９）。タッチオフでない場合には（Ｓ９でＮＯ）、処理はＳ４に戻る。以降、移動座標データＴ２が収束点Ａに近づくたびに、ペンデバイスドライバ６は、ダミー座標データＤｎを算出しマルチタッチデータを出力するので（Ｓ７、Ｓ８）、縮小のジェスチャー機能が実行可能となる。タッチオフである場合には（Ｓ９でＹＥＳ）、本処理を終了する。
【００４１】
図１０は、拡大のジェスチャー機能が指定された場合にペンデバイスドライバ６で実行される処理を示すフローチャートである。図１１は、拡大のジェスチャー機能を示す概念図である。尚、図１０の処理は、図７のＳ３の縮小以外の処理の一つである。従って、ペンデバイスドライバ６は座標データＴ１及びスイッチデータを取得しているものとする（図７のＳ１参照）。
【００４２】
まず、ペンデバイスドライバ６はスイッチデータ内の機能情報が拡大のジェスチャー機能であるか否かを判別する（Ｓ１１）。機能情報が拡大のジェスチャー機能でない場合には（Ｓ１１でＮＯ）、ペンデバイスドライバ６は縮小及び拡大以外の処理を行う（Ｓ１２）。機能情報が拡大のジェスチャー機能である場合には（Ｓ１１でＹＥＳ）、ペンデバイスドライバ６は、図１１のタッチした座標データＴ１を中心点として設定する（Ｓ１３）。ペンデバイスドライバ６は、ペンデバイス４の先端がタッチパネル３上で移動したときの図１１の移動座標データＴ２をタッチパネルドライバ５から取得する（Ｓ１４）。移動座標データＴ２は、ペンデバイス４の先端が移動している途中の座標データを示し、時間に応じて変化するものとする。
【００４３】
図１２は、ペンデバイスドライバ６の拡大用パラメータの設定画面の一例を示す図である。図１２の設定画面は、ダミーの入力点に割り当てられる角度情報θnの入力欄４５を備えている。角度情報θnは、座標データＴ１及び移動座標データＴ２を結ぶ直線と、座標データＴ１及び各ダミーの入力点を結ぶ直線との間の角度を示す。図１２の各欄に設定された拡大用パラメータはレジストリ１８に保存され、ペンデバイスドライバ６のインストール時に設定される。また拡大用パラメータの各値はアプリケーションにより変更することができる。
【００４４】
図１０に戻り、ペンデバイスドライバ６は、スイッチデータ内のダミーの入力点数及び各ダミーの入力点に割り当てられている角度情報θnに基づいて、座標データＴ１から移動座標データＴ２までの距離ｒを半径とした円上に配置されるダミーの入力点のダミー座標データＤｎを算出する（Ｓ１５）。図１１ではダミーの入力点は１つである。尚、座標データＴ１から移動座標データＴ２までの距離ｒは、ペンデバイス４の先端の移動に応じて増加する。
【００４５】
ペンデバイスドライバ６は、移動座標データＴ２と共に算出されたダミー座標データＤｎをＣＰＵ１１自身に出力し、ＣＰＵ１１が拡大のジェスチャー機能を実行する（Ｓ１６）。ペンデバイスドライバ６は、タッチパネルドライバ５からのタッチオフ情報に基づいて、ペンデバイス４の先端がタッチパネル３から離れたか、即ちタッチオフであるか否かを判定する（Ｓ１７）。タッチオフでない場合には（Ｓ１７でＮＯ）、処理はＳ１４に戻る。以降、移動座標データＴ２が座標データＴ１から離れるたびに、ペンデバイスドライバ６は、ダミー座標データＤｎを算出しマルチタッチデータを出力するので（Ｓ１５、Ｓ１６）、拡大のジェスチャー機能が実行可能となる。タッチオフである場合には（Ｓ１７でＹＥＳ）、本処理を終了する。
【００４６】
図１３は、回転のジェスチャー機能が指定された場合にペンデバイスドライバ６で実行される処理を示すフローチャートである。図１４は、回転のジェスチャー機能を示す概念図である。尚、図１３の処理は、図７のＳ３の縮小以外の処理の一つである。従って、ペンデバイスドライバ６は座標データＴ１及びスイッチデータを取得しているものとする（図７のＳ１参照）。
【００４７】
まず、ペンデバイスドライバ６はスイッチデータ内の機能情報が回転のジェスチャー機能であるか否かを判別する（Ｓ２１）。機能情報が回転のジェスチャー機能でない場合には（Ｓ２１でＮＯ）、ペンデバイスドライバ６は縮小、拡大及び回転以外の処理を行う（Ｓ２２）。機能情報が回転のジェスチャー機能である場合には（Ｓ２１でＹＥＳ）、ペンデバイスドライバ６は、図１４に示すように、タッチパネル３の中心点Ｃを回転の中心点として設定する（Ｓ２３）。
【００４８】
図１５は、ペンデバイスドライバ６の回転用パラメータの設定画面の一例を示す図である。図１５の設定画面は、ダミーの入力点に割り当てられる角度情報θnの入力欄４６を備えている。角度情報θnは、中心点Ｃ及び座標データＴ１を結ぶ直線と、中心点Ｃ及び各ダミーの入力点を結ぶ直線との間の角度を示す。図１５の各欄に設定された回転用パラメータはレジストリ１８に保存され、ペンデバイスドライバ６のインストール時に設定される。また回転用パラメータの各値はアプリケーションにより変更することができる。
【００４９】
図１３に戻り、ペンデバイスドライバ６は、スイッチデータ内のダミーの入力点数及び各ダミーの入力点に割り当てられている角度情報θnに基づいて、中心点Ｃから座標データＴ１までの距離ｒを半径とした円上に配置されるダミーの入力点のダミー座標データＤｎ１を算出する（Ｓ２４）。図１４ではダミーの入力点は３つである。ペンデバイスドライバ６は、座標データＴ１と共に算出されたダミー座標データＤｎ１を出力する（Ｓ２５）。
【００５０】
次いで、ペンデバイスドライバ６は、ペンデバイス４の先端がタッチパネル３上で移動したときの図１４の移動座標データＴ２をタッチパネルドライバ５から取得する（Ｓ２６）。ペンデバイスドライバ６は、中心点Ｃを中心として座標データＴ１から移動座標データＴ２までの移動量を各ダミーの入力点に割り当てられている角度情報θnだけ回転させた量を各ダミー座標データＤｎ１に加算することにより移動後のダミー座標データＤｎ２を算出する（Ｓ２７）。
【００５１】
ペンデバイスドライバ６は、移動座標データＴ２と共に算出されたダミー座標データＤｎ２をＣＰＵ１１自身に出力し、ＣＰＵ１１が回転のジェスチャー機能を実行する（Ｓ２８）。ペンデバイスドライバ６は、タッチパネルドライバ５からのタッチオフ情報に基づいて、ペンデバイス４の先端がタッチパネル３から離れたか、即ちタッチオフであるか否かを判定する（Ｓ２９）。タッチオフでない場合には（Ｓ２９でＮＯ）、処理はＳ２６に戻る。以降、移動座標データＴ２を取得するたびに、ペンデバイスドライバ６は、ダミー座標データＤｎ２を算出しマルチタッチデータを出力するので（Ｓ２６〜Ｓ２８）、回転のジェスチャー機能が実行可能となる。タッチオフである場合には（Ｓ２９でＹＥＳ）、本処理を終了する。
【００５２】
図１６は、平行移動のジェスチャー機能が指定された場合にペンデバイスドライバ６で実行される処理を示すフローチャートである。図１７は、平行移動のジェスチャー機能を示す概念図である。尚、図１６の処理は、図７のＳ３の縮小以外の処理の一つである。従って、ペンデバイスドライバ６は座標データＴ１及びスイッチデータを取得しているものとする（図７のＳ１参照）。
【００５３】
まず、ペンデバイスドライバ６はスイッチデータ内の機能情報が平行移動のジェスチャー機能であるか否かを判別する（Ｓ３１）。機能情報が平行移動のジェスチャー機能でない場合には（Ｓ３１でＮＯ）、本処理を終了する。
【００５４】
図１８は、ペンデバイスドライバ６の平行移動用パラメータの設定画面の一例を示す図である。図１８の設定画面は、ダミーの入力点の設定に使用される固定値又は倍率の選択欄４７と、ダミーの入力点の設定に使用される固定値又は倍率の入力欄４８とを備えている。選択欄４７で固定値が選択されている場合には、入力欄４８には各ダミーの入力点の座標が入力される。選択欄４７で倍率が選択されている場合には、入力欄４８には、各ダミーの入力点に対応する、座標データＴ１のＸ，Ｙ座標の倍率が入力される。図１８の各欄に設定された平行移動用パラメータはレジストリ１８に保存され、ペンデバイスドライバ６のインストール時に設定される。また平行移動用パラメータの各値はアプリケーションにより変更することができる。
【００５５】
図１６に戻り、機能情報が平行移動のジェスチャー機能である場合には（Ｓ３１でＹＥＳ）、ペンデバイスドライバ６は、スイッチデータ内のダミーの入力点数及び各ダミーの入力点に割り当てられている固定値又は倍率に基づいて、各ダミーの入力点のダミー座標データＤｎ１を算出する（Ｓ３２）。図１７ではダミーの入力点は２つである。ペンデバイスドライバ６は、座標データＴ１と共に算出されたダミー座標データＤｎ１を出力する（Ｓ３３）。
【００５６】
次いで、ペンデバイスドライバ６は、ペンデバイス４の先端がタッチパネル３上で移動したときの図１５の移動座標データＴ２をタッチパネルドライバ５から取得する（Ｓ３４）。ペンデバイスドライバ６は、座標データＴ１から移動座標データＴ２までの移動量を各ダミー座標データＤｎ１に加算することにより移動後のダミー座標データＤｎ２を算出する（Ｓ３５）。
【００５７】
ペンデバイスドライバ６は、移動座標データＴ２と共に算出されたダミー座標データＤｎ２をＣＰＵ１１自身に出力し、ＣＰＵ１１が平行移動のジェスチャー機能を実行する（Ｓ３６）。ペンデバイスドライバ６は、タッチパネルドライバ５からのタッチオフ情報に基づいて、ペンデバイス４の先端がタッチパネル３から離れたか、即ちタッチオフであるか否かを判定する（Ｓ３７）。タッチオフでない場合には（Ｓ３７でＮＯ）、処理はＳ３４に戻る。以降、移動座標データＴ２を取得するたびに、ペンデバイスドライバ６は、ダミー座標データＤｎ２を算出しマルチタッチデータを出力するので（Ｓ３４〜Ｓ３６）、平行移動のジェスチャー機能が実行可能となる。タッチオフである場合には（Ｓ３７でＹＥＳ）、本処理を終了する。
【００５８】
以上説明したように、本実施の形態では、ペンデバイスドライバ６がタッチパネル３からタッチ点の座標データを取得し、ペンデバイス４からタッチの入力点数を示す入力点数情報及びジェスチャー機能を示す機能情報を取得し、図９、図１２、図１５又は図１８の設定画面からジェスチャー機能を実行するためのパラメータを設定し、入力点数情報がタッチパネル３からのタッチ点以外の点を含む場合に、入力点数情報及びパラメータに基づいてダミーの入力点の座標データを算出し、ＣＰＵ１１がタッチ点の座標データ及びダミーの入力点の座標データに基づいて機能情報で特定されるジェスチャー機能を実行する。
【００５９】
従って、マルチタッチを必要とするジェスチャー機能をペン操作で実現することができる。特に、シングルタッチ方式のタッチパネルを使用する場合でも、ジェスチャー機能をペン操作で実現することができる。また、ペンデバイス４は、タッチの入力点数を示す入力点数情報及びジェスチャー機能を示す機能情報を出力する複数のスイッチを備え、ジェスチャー動作そのものを示す大容量のデータを保持し、出力するわけではないので、ジェスチャー機能の変更や追加に柔軟に対応することができる。
【００６０】
尚、本発明は、上述した実施の形態に限定されるものではなく、その要旨を逸脱しない範囲内で種々変形して実施することが可能である。
【符号の説明】
【００６１】
１  システム
２  コンピュータ
３  タッチパネル
４  ペンデバイス
５  タッチパネルドライバ
６  ペンデバイスドライバ
１１  ＣＰＵ
３１  ノック式スイッチ
３２ａ〜３２ｄ  点数スイッチ
３３ａ，３３ｂ  機能スイッチ
【図１】
2019185118.tif 000003
【図２】
2019185118.tif 000004
【図３】
2019185118.tif 000005
【図４】
2019185118.tif 000006
【図５】
2019185118.tif 000007
【図６】
2019185118.tif 000008
【図７】
2019185118.tif 000009
【図８】
2019185118.tif 000010
【図９】
2019185118.tif 000011
【図１０】
2019185118.tif 000012
【図１１】
2019185118.tif 000013
【図１２】
2019185118.tif 000014
【図１３】
2019185118.tif 000015
【図１４】
2019185118.tif 000016
【図１５】
2019185118.tif 000017
【図１６】
2019185118.tif 000018
【図１７】
2019185118.tif 000019
【図１８】
2019185118.tif 000020