(57)【要約】【課題】情報処理装置に、複数の指示具の接触状態を適切に認識させる。【解決手段】入力装置から受信したデータに基づいて、複数の指示具の画面への接触状態を判断する判断部と、前記接触状態の判断結果に応じたデータを生成するデータ生成部と、を有し、前記複数の指示具が前記画面に接触している状態から、前記複数の指示具に含まれる少なくとも一つの指示具が、前記画面から離れたと判断された場合、前記データ生成部は、前記指示具が前記画面に接触している旨を示すデータを生成後、前記指示具が前記画面から離れた旨を示すデータを生成する、座標検出装置、が提供される。【選択図】図５
2019035993.tif 000002
【特許請求の範囲】
【請求項１】
入力装置から受信したデータに基づいて、複数の指示具の画面への接触状態を判断する判断部と、
前記接触状態の判断結果に応じたデータを生成するデータ生成部と、を有し、
前記複数の指示具が前記画面に接触している状態から、前記複数の指示具に含まれる少なくとも一つの指示具が、前記画面から離れたと判断された場合、前記データ生成部は、前記指示具が前記画面に接触している旨を示すデータを生成後、前記指示具が前記画面から離れた旨を示すデータを生成する、座標検出装置。
【請求項２】
前記指示具が前記画面に接触している旨を示すデータは、前記指示具が前記画面に接触を開始した旨を示すデータと、前記指示具が前記画面に継続して接触していることを示すデータとを含む、請求項１に記載の座標検出装置。
【請求項３】
前記複数の指示具に含まれる第１の指示具と、第２の指示具とが、同時に前記画面から離れたと判断された場合、
前記データ生成部は、
前記第１の指示具が前記画面に接触している旨を示すデータを生成後、前記第１の指示具が前記画面から離れている旨を示すデータを生成し、
前記第２の指示具が前記画面に接触している旨を示すデータを生成後、前記第２の指示具が前記画面から離れている旨を示すデータを生成する、請求項１又は２に記載の座標検出装置。
【請求項４】
前記第１の指示具が前記画面に接触している旨を示すデータは、前記第１の指示具が前記画面に継続して接触していることを示すデータであり、
前記第２の指示具が前記画面に接触している旨を示すデータは、前記第２の指示具が前記画面に接触を開始した旨を示すデータである、請求項３に記載の座標検出装置。
【請求項５】
前記第１の指示具が前記画面に接触しているときに、前記第２の指示具が、前記画面に接触を開始したと判断された場合、
前記データ生成部は、前記第２の指示具が前記画面に接触を開始した旨を示すデータの代わりに、前記第２の指示具が前記画面に継続して接触していることを示すデータを送信する、請求項３又は４に記載の座標検出装置。
【請求項６】
前記接触状態の判断結果に応じたデータは、前記指示具の識別子を含む、請求項1乃至５のいずれか一項に記載の座標検出装置。
【請求項７】
座標検出装置が、入力装置から受信したデータに基づいて、複数の指示具の画面への接触状態を判断するステップと、
座標検出装置が、前記接触状態の判断結果に応じたデータを生成し、情報処理装置に送信するステップと、
前記情報処理装置が、受信した前記接触状態の判断結果に応じたデータに基づいて、前記複数の指示具による前記画面への前記接触状態に対応した画像を生成するステップと、を有し、
前記複数の指示具が前記画面に接触している状態から、前記複数の指示具に含まれる少なくとも一つの指示具が、前記画面から離れたと判断された場合、前記座標検出装置は、前記指示具が前記画面に接触している旨を示すデータを生成後、前記指示具が前記画面から離れた旨を示すデータを生成する、制御方法。
【請求項８】
前記接触状態の判断結果に応じたデータは、前記指示具の識別子を含み、
前記情報処理装置が、前記指示具の識別子に対応付けられている、前記指示具の属性を特定するステップと、を有し、
特定された前記指示具の属性にしたがって、前記画像が生成される、請求項７に記載の制御方法。
【請求項９】
前記指示具の属性は、前記指示具が前記画面に接触した部分に画像を形成するペン機能、又は、前記指示具が前記画面に接触した部分に存在する画像を消去する消しゴム機能である、請求項８に記載の制御方法。
【請求項１０】
画面と、
前記画面への指示具の接触状態を検知し、検知した内容を含むデータを送信する入力装置と、
座標検出装置と、を含む座標検出システムであって、
前記座標検出装置は、
入力装置から受信したデータに基づいて、複数の指示具の前記画面への接触状態を判断する判断部と、
前記接触状態の判断結果に応じたデータを生成するデータ生成部と、を有し、
前記複数の指示具が前記画面に接触している状態から、前記複数の指示具に含まれる少なくとも一つの指示具が、前記画面から離れたと判断された場合、前記データ生成部は、前記指示具が前記画面に接触している旨を示すデータを生成後、前記指示具が前記画面から離れた旨を示すデータを生成する、座標検出システム。
【請求項１１】
前記座標検出システムは、情報処理装置を含み、
前記情報処理装置は、
前記判断結果に応じたデータを前記座標検出装置から受信する受信部と、
前記判断結果に応じたデータを基に、前記複数の指示具による前記画面への前記接触状態に対応した画像を生成する画像生成部と、
生成された前記画像を前記画面に表示させる表示制御部と、を有する、請求項１０に記載の座標検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、座標検出装置、制御方法、座標検出システムに関する。
【背景技術】
【０００２】
ディスプレイ、座標検出装置、及びＰＣ等の情報処理装置を有する座標検出システムが普及している。これらの座標検出システムでは、スタイラス（Ｓｔｙｌｕｓ）等の指示具によるディスプレイへの接触を、赤外線カメラ等により検出し、検出された内容に対応する画像をディスプレイに生成するＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）技術が、使用されている。
【０００３】
単一のスタイラスにより画像が生成される形態に加えて、複数のスタイラスにより描画された内容に対応する画像を生成する方法についても様々な検討がされている。
【０００４】
例えば、特許文献１では、指示具を用いて描画をする際に、単一の指示具による接触を検出して描画等を行うモードと、複数の指示具による接触を検出して描画等を行うモードとを切り替えて、座標検出システムに適用することについても、提案されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、座標検出装置が検出した内容を情報処理装置に通知するときに用いる、通信データのフォーマット（ＨＩＤ  Ｒｅｐｏｒｔ）が、単一の指示具を用いることを前提に規定されているため、複数の指示具による、描画等を行った場合であっても、情報処理装置にて、指示具の接触状態を適切に認識できず、指示具により入力された内容について、ディスプレイ上に誤った内容が表示されるおそれがあった。
【０００６】
本発明は、上記の課題を鑑みてされたものであって、情報処理装置に、複数の指示具の接触状態を適切に認識させることを目的とする。
【課題を解決するための手段】
【０００７】
一つの態様によれば、入力装置から受信したデータに基づいて、複数の指示具の画面への接触状態を判断する判断部と、前記接触状態の判断結果に応じたデータを生成するデータ生成部と、を有し、前記複数の指示具が前記画面に接触している状態から、前記複数の指示具に含まれる少なくとも一つの指示具が、前記画面から離れたと判断された場合、前記データ生成部は、前記指示具が前記画面に接触している旨を示すデータを生成後、前記指示具が前記画面から離れた旨を示すデータを生成する、座標検出装置、が提供される。
【発明の効果】
【０００８】
情報処理装置に、複数の指示具の接触状態を適切に認識させることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る座標検出システムの全体構成の一例を示す図である。
【図２】一つのスタイラスを用いて描画するときの、タイミングチャートと生成される画像の一例を示す図である。
【図３】第１の実施例に係るタイミングチャートと生成される画像の一例を示す図である。
【図４】第２の実施例に係るタイミングチャートと生成される画像の一例を示す図（その１）である。
【図５】第２の実施例に係るタイミングチャートと生成される画像の一例を示す図（その２）である。
【図６】実施形態に係る座標検出装置のハードウェア構成の一例を示す図である。
【図７】実施形態に係る座標検出装置、及びＰＣの機能構成の一例を示す図である。
【図８】実施形態に係るフローチャートの一例を示す図（その１）である。
【図９】実施形態に係るフローチャートの一例を示す図（その２）である。
【図１０】実施形態に係る動作シーケンスの一例を示す図である。
【発明を実施するための形態】
【００１０】
＜システム構成＞
図１は、実施形態に係る座標検出システムの全体構成の一例を示す図である。座標検出システム１は、ディスプレイ２、入力装置３、座標検出装置１０、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）２０、及びスタイラス３０を有する。図１では、ＰＣ２０が使用される例を示しているが、タブレット端末、スマートフォン、又はサーバ等の情報処理装置が使用されてもよい。
【００１１】
ディスプレイ２は、指示具であるスタイラス３０により描画された内容に対応する画像をＰＣ２０から受信し、表示する。
【００１２】
入力装置３は、赤外線カメラ、又は赤外線センサ等により実現される。図１では、４つの入力装置（３ａ、３ｂ、３ｃ、３ｄ）が用いられる例を示しているが、座標検出システム１に、任意の数の入力装置３を設けることが可能である。入力装置３は、スタイラス３０のディスプレイ２への接触を検知し、検知した内容を含むデータを座標検出装置１０に送信する。
【００１３】
座標検出装置１０は、例えば、ＰＣＢ（プリント基板、Ｐｒｉｎｔｅｄ  Ｃｉｒｃｕｔ  Ｂｏａｒｄ）により実現される。座標検出装置１０は、入力装置３から検知した内容を受信し、スタイラス３０が接触したディスプレイ２上の座標を算出する。例えば、座標検出装置１０は、三角測量を用いて、入力装置３が検知した内容から、スタイラス３０が接触したディスプレイ２上の座標を算出する。
【００１４】
また、座標検出装置１０は、入力装置３が検知した内容から、スタイラス３０の識別子、スタイラス３０の接触圧力、及びサイズ（例えば、スタイラス３０の接触部分の幅と高さ）等のスタイラス３０の特徴を特定する。
【００１５】
ＰＣ２０と、座標検出装置１０は、ネットワーク５を介して接続される。ネットワーク５は、有線ネットワーク、無線ネットワーク、又はこれらの組み合わせでもよい。また、ＰＣ２０と座標検出装置１０とはケーブル等により直接接続されてもよい。
【００１６】
座標検出装置１０は、算出した座標及び、特定した特徴、つまり、スタイラス３０によりディスプレイ２上に描画された内容を含むＨＩＤのフォーマット（ＨＩＤ  Ｒｅｐｏｒｔ）のデータを生成し、ＰＣ２０に送信する。ここでは、座標検出装置１０により生成され、ＰＣ２０に送信されるＨＩＤのフォーマットのデータをＨＩＤデータと呼ぶ。
【００１７】
ＨＩＤのフォーマットは、単一のスタイラス３０を用いることを前提に規定されている。ＰＣ２０のアプリケーションでは、複数のスタイラス３０が用いられることを認識し、スタイラス３０Ａにより描画された内容と、スタイラス３０Ｂにより描画された内容を区別できるが、ＯＳ（オペレーティングシステム）は、複数のスタイラス３０を認識することができない。このため、座標検出装置１０は、複数のスタイラス３０により描画されたことに応じて、生成されたＨＩＤデータを、ＰＣ２０のＯＳが、単一のスタイラス３０の描画により生成されたＨＩＤデータとして認識するように、ＨＩＤデータの送信タイミングと、送信するＨＩＤデータの内容を調整する。詳細については後述する。
【００１８】
ＰＣ２０のアプリケーションは、ＯＳから、受信したＨＩＤデータを受け取り、描画された内容に対応する画像を生成する。
【００１９】
ＰＣ２０はスタイラス３０の識別子とスタイラス３０の属性を対応付けて記憶している。例えば、スタイラス３０Ａに、所定の色のペン機能の属性が設定されている場合、ＰＣ２０のアプリケーションは、画像を、所定の色で生成する。生成される画像は、座標検出装置１０により、特定された接触圧力、及びサイズ等から、線の太さ、及び濃さ等が調整される。
【００２０】
また、例えば、スタイラス３０Ｂに消しゴム機能の属性が設定されている場合には、スタイラス３０Ｂの描画した部分と重複する部分に存在する、画像は消去される。なお、消去される画像は、他のスタイラス３０により描画された内容に対応する画像としてもよい。
【００２１】
以下の説明では、スタイラス３０に、ペン機能の属性が設定されている場合について説明するが、消しゴム機能の設定がされている場合についても同様の実施形態で実現される。
【００２２】
ＰＣ２０は、生成した画像を、ディスプレイ２に表示させる。
【００２３】
ＰＣ２０は、ディスプレイ２とＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ，登録商標）等の規格に準拠したケーブル６を用いて接続される。ＰＣ２０とディスプレイ２とは、データを中継する装置を介して接続されてもよい。
【００２４】
＜タイミングチャート：一つのスタイラスの場合＞
図２を用いて、一つのスタイラスを用いて描画するときのタイミングチャートと、画像が生成される一般的な手順について説明する。
【００２５】
図２の（１）は、スタイラス３０が、ディスプレイ２に接触したときに座標検出装置１０が生成したデータをＰＣ２０に送信するタイミングチャートを示している。
【００２６】
「スタイラスの接触状態」は、スタイラス３０が、タイミングＴ１でディスプレイ２に接触を開始し、タイミングＴ２でディスプレイから離れたことを示している。座標検出装置１０は、赤外線カメラ等からのデータを基に接触状態を判断する。
【００２７】
ＰＯＩＮＴＥＲＤＯＷＮデータ（以下、ＰＤデータ）は、座標検出装置１０が、入力装置３から受信したデータを基に、スタイラス３０がディスプレイ２への接触を開始したと判断した場合に、生成されるデータである。
【００２８】
ＰＯＩＮＴＥＲＵＰＤＡＴＥデータ（以下、ＰＵＤデータ）は、座標検出装置１０が、入力装置３から受信したデータを基に、スタイラス３０がディスプレイ２への接触を継続していると判断した場合に、生成されるデータである。
【００２９】
ＰＯＩＮＴＥＲＵＰデータ（以下、ＰＵデータ）は、入力装置３から受信したデータを基に、スタイラス３０がディスプレイ２から離れたと判断した場合に、生成されるデータである。
【００３０】
ここで、ＰＤデータ、ＰＵＤデータ、及びＰＵデータは、ＨＩＤのフォーマットで生成されるＨＩＤデータであり、図２の（１）に示すタイミングで、座標検出装置１０からＰＣ２０に送信される。これらのＨＩＤデータにはスタイラス３０が接触しているディスプレイ２上の座標と、特定されたスタイラス３０の特徴とを含む。
【００３１】
「ＰＯＩＮＴＥＲＤＯＷＮデータの送信タイミング」では、スタイラス３０が、タイミングＴ１でディスプレイに接触したことに伴い、座標検出装置１０が、ＰＤデータを送信するタイミングを示している。
【００３２】
「ＰＯＩＮＴＥＲＵＰＤＡＴＥデータの送信タイミング」では、座標検出装置１０が、所定のタイミングでＰＵＤデータを送信するタイミング（ＰＵＤ＃１〜ＰＵＤ＃４）を示している。
【００３３】
「ＰＯＩＮＴＥＲＵＰデータの送信タイミング」では、スタイラス３０が、タイミングＴ２でディスプレイから離れたことに伴い、座標検出装置１０が、ＰＵデータを生成するタイミングを示している。
【００３４】
生成されたＰＤデータ、ＰＵＤデータ、及びＰＵデータには、スタイラス３０がディスプレイ２に接触したディスプレイ上の座標を特定する情報を含む。ＰＣ２０は、座標検出装置１０から生成されたデータを受信し、スタイラスにより描画された内容に対応する画像を生成する。
【００３５】
図２の（２）は、ＰＣ２０により生成された画像の一例を示す図である。各データに含まれる座標を特定する情報を基に、スタイラス３０により描画された内容に対応する画像が生成される様子を示す図している。生成された画像は、ディスプレイ２に表示される。
【００３６】
次に、複数のスタイラスによりディスプレイに描画されたときのタイミングチャートと、生成される画像について説明する。
【００３７】
＜タイミングチャート：第１の実施例＞
図３は、第１の実施例に係るタイミングチャートと生成される画像の一例を示す図である。図３の（１）は、２つのスタイラス３０（３０Ａ、３０Ｂ）が、ディスプレイ２に接触したときに生成されるデータのタイミングチャートを示している。
図３の（１）に示すタイミングで、生成されたＨＩＤデータが、座標検出装置１０からＰＣ２０に送信される。
【００３８】
「スタイラス３０Ａ接触状態」は、スタイラス３０Ａが、座標検出装置１０により、タイミングＴ３でディスプレイ２に接触を開始したと判断され、タイミングＴ４でディスプレイ２から離れたと判断されたことを示している。
【００３９】
「スタイラス３０Ｂ接触状態」は、スタイラス３０Ｂが、座標検出装置１０により、タイミングＴ５でディスプレイ２に接触を開始したと判断され、タイミングＴ６でディスプレイ２から離れたと判断されたことを示している。
【００４０】
スタイラス３０Ａの接触状態に対応して、ＰＤデータ＃１、ＰＵＤデータ＃１／＃２／＃４、及びＰＵデータ＃１が生成され、ＰＣ２０に送信される。
【００４１】
また、スタイラス３０Ｂの接触状態に対応して、ＰＤデータ＃２、ＰＵＤデータ＃３／＃５、及びＰＵデータ＃２が生成され、ＰＣ２０に送信される。
【００４２】
ここで、スタイラス３０Ｂが、Ｔ５でディスプレイ２に接触したと判断されたことに応じて、座標検出装置１０は、ＰＤデータではなく、ＰＵＤデータ＃３を生成し、ＰＣ２０に送信する。これにより、ＰＣ２０のＯＳには、新たなスタイラス３０が接触したのではなく、接触しているスタイラス３０の接触が継続していると認識させつつ、ＰＣ２０のアプリケーションには、２つ目のスタイラス３０Ｂが接触したと認識させることができる。
【００４３】
また、スタイラス３０Ａがディスプレイ２から離れたと判断されると、座標検出装置１０は、ＰＵデータ＃１を送信後に、スタイラス３０Ｂが接触を開始したことを示すＰＤデータを生成し、ＰＣ２０に送信する。これにより、ＰＣ２０のＯＳには、新たに１つのスタイラス３０が接触したと認識させつつ、ＰＣ２０のアプリケーションには、スタイラス３０Ｂの接触が継続していると認識させることができる。その後、ＰＵデータ＃２が送信されることにより、ＰＣ２０のＯＳ及びアプリケーションは、スタイラス３０Ｂがディスプレイ２に接触していないと認識できる。この手順は、図６の（１）の点線で囲まれている部分で示されている。
【００４４】
上記のように、動作することにより、複数のスタイラス３０がディスプレイ２に接触している場合でも、ＰＣ２０のＯＳには、１つのスタイラス３０が接触しているように認識させつつ、ＰＣ２０のアプリケーションには、２つのスタイラス３０の接触状態を適切に認識できる。
【００４５】
図３の（２）は、ＰＣ２０により生成された画像の一例を示す図である。画像５１が、スタイラス３０Ａによる描画に対応する画像であり、画像５２が、スタイラス３０Ｂによる描画に対応する画像である。ＰＣ２０は、ＨＩＤデータに含まれるスタイラス３０の識別子を用いて、スタイラス３０の各々に対応するＨＩＤデータを特定し、画像５１、及び画像５２を生成する。
【００４６】
＜タイミングチャート：第２の実施例＞
上述したように、ＰＣ２０のＯＳは、複数のスタイラス３０がディスプレイ２に接触していることを認識できないため、複数のスタイラス３０が同じタイミングで、ディスプレイ２から離れたと判断された場合、スタイラス３０の接触状態を適切に認識できないという状態が発生し得る。そこで、第２の実施例では、複数のスタイラス３０が同じタイミングで、ディスプレイ２から離れた場合でも、ＰＣ２０に複数のスタイラス３０の接触状態を適切に認識させる手法が提供される。まず、図４を用いて、複数のスタイラス３０が同じタイミングで離れた場合に発生する状態について説明する。図４は、第２の実施例に係るタイミングチャートと生成される画像の一例を示す図（その１）である。
【００４７】
「スタイラス３０Ａ接触状態」は、スタイラス３０Ａが、座標検出装置１０により、タイミングＴ７でディスプレイ２に接触を開始したと判断され、タイミングＴ８でディスプレイ２から離れたと判断され、Ｔ９で再びディスプレイ２に接触を開始したと判断されたことを示している。
【００４８】
「スタイラス３０Ｂ接触状態」は、スタイラス３０Ｂが、座標検出装置１０により、タイミングＴ１０でディスプレイ２に接触を開始したと判断され、タイミングＴ１１でディスプレイ２から離れたと判断され、Ｔ１２で再びディスプレイ２に接触を開始したと判断されたことを示している。
【００４９】
ＰＤデータ、ＰＵＤデータ、及びＰＵデータは、図４の（１）に示すタイミングで、座標検出装置１０からＰＣ２０に送信される。
【００５０】
ここで、Ｔ８とＴ１１は同じタイミングである。
【００５１】
スタイラス３０Ａの接触状態に対応して、ＰＤデータ＃１、ＰＵＤデータ＃１／＃２／＃４／＃６／＃８が生成され、ＰＣ２０に送信される。また、スタイラス３０Ｂの接触状態に対応して、ＰＵＤデータ＃３／＃５／＃７／＃９、ＰＤデータ＃２、ＰＵデータ＃１が生成され、ＰＣ２０に送信される。
【００５２】
上述したように、ＰＣ２０のＯＳからは、同時にひとつのスタイラス３０が接触しているように認識させるため、座標検出装置１０は、複数のＰＵデータを同じタイミングで送信することはできない。図４の例では、スタイラス３０Ｂが離れた旨を示すＰＵデータ＃１のみが送信され、ＰＣ２０は、スタイラス３０Ｂが離れたことを認識するものの、スタイラス３０Ａが離れたことを認識することはできない。
【００５３】
スタイラス３０Ｂが、Ｔ１２で再びディスプレイ２に接触を開始したことに対応して、座標検出装置１０が、ＰＤデータ＃２を生成し、ＰＣ２０に送信すると、ＰＣ２０は、ＰＤデータ＃２に含まれる座標を基に、スタイラス３０Ｂにより描画された内容に対応する画像を新たに生成する。
【００５４】
一方、スタイラス３０Ａが離れた旨を示すＰＵデータが送信されていないため、ＰＣ２０のアプリケーションには、ディスプレイ２から離れたと認識されていない。スタイラス３０ＡがＴ９で再びディスプレイ２に接触を開始したことに対応して、座標検出装置１０が、ＰＵＤデータ＃８を生成し、ＰＣ２０に送信すると、新たな画像ではなく、スタイラス３０Ａを離す前に生成された画像が更新される。
【００５５】
具体的には、ＰＣ２０のアプリケーションは、ＰＵＤデータ＃８に含まれる座標で特定される点と、スタイラス３０Ａが離れる前のＰＵＤデータ＃６に含まれる座標で特定される点とが、つながった画像に更新される。
【００５６】
図４の（２）は、図４の（１）のタイミングチャートに示されるデータが生成されたときに、ＰＣ２０のアプリケーションにより生成される画像の一例を示す図である。
【００５７】
画像５４と、画像５５とが、スタイラス３０Ｂの描画に対応する画像であり、画像５３が、スタイラス３０Ａの描画に対応する画像である。
【００５８】
スタイラス３０Ｂがディスプレイ２から離れたことを示すＰＵデータ＃１が生成されているため、ディスプレイ２に、スタイラス３０Ｂを再び接触させると、新たな画像５５が生成される。
【００５９】
一方、スタイラス３０Ａがディスプレイ２から離れたことを示すＰＵデータは生成されていないため、ＰＣ２０のアプリケーションは、スタイラス３０Ａがディスプレイ２に接触していると認識している。したがって、ＰＵＤデータ＃８に含まれる座標で特定される点と、ＰＵＤデータ＃６に含まれる座標で特定される点との間がつながった画像５３が生成されてしまう。
【００６０】
図５は、第２の実施例に係るタイミングチャートと生成される画像の一例を示す図（その２）である。
【００６１】
図５を用いて、同じタイミングで複数のスタイラス３０がディスプレイ２から離れた場合でも、ＰＣ２０に適切に状態を認識させる座標検出装置１０のＨＩＤデータの送信方法について説明する。
【００６２】
「スタイラス３０Ａ接触状態」は、スタイラス３０Ａが、座標検出装置１０により、タイミングＴ１３でディスプレイ２に接触を開始したと判断され、タイミングＴ１４でディスプレイ２から離れたと判断され、Ｔ１５で再びディスプレイ２に接触を開始したと判断されたことを示している。
【００６３】
「スタイラス３０Ｂ接触状態」は、スタイラス３０Ｂが、座標検出装置１０により、タイミングＴ１６でディスプレイ２に接触を開始したと判断され、タイミングＴ１７でディスプレイ２から離れたと判断され、Ｔ１８で再びディスプレイ２に接触を開始したと判断されたことを示している。
【００６４】
ＰＤデータ、ＰＵＤデータ、及びＰＵデータは図５の（１）に示すタイミングで、座標検出装置１０からＰＣ２０に送信される。
【００６５】
ここで、Ｔ１４とＴ１７は同じタイミングである。
【００６６】
スタイラス３０Ａの接触状態に応じて、ＰＤデータ＃１／＃２／＃３、ＰＵＤデータ＃１／＃２／＃４／＃６／＃９、ＰＵデータ＃２が生成され、ＰＣ２０に送信される。スタイラス３０Ｂの接触状態に応じて、ＰＵＤデータ＃３／＃５／＃７／＃８／＃１０、ＰＵデータ＃１が生成され、ＰＣ２０に送信される。
【００６７】
図５の（１）に示すタイミングチャートでは、複数のスタイラス３０が、ディスプレイ２から同じタイミングで離れたと判断された場合、座標検出装置１０は、ＰＤデータ、又はＰＵＤデータを生成し、ＰＣ２０に送信する。その直後に、ＰＵデータを生成し、ＰＣ２０に送信する。これにより、ＰＣ２０のＯＳからはひとつのスタイラス３０が用いられていると認識させつつ、アプリケーションには、スタイラス３０の接触状態を適切に認識させることが可能となる。
【００６８】
具体的には、Ｔ１４（Ｔ１７）の後に、ＰＵＤデータ＃７と、ＰＵデータ＃１とを座標検出装置１０が、生成し、ＰＣ２０に送信することにより、スタイラス３０Ｂがディスプレイ２から離れたことを、ＰＣ２０のアプリケーションに認識させる。スタイラス３０Ａがディスプレイ２に接触しているため、ＰＤデータではなく、ＰＵＤデータが用いられる。
【００６９】
ＰＵＤデータ＃７とＰＵデータ＃１に含まれるスタイラス３０Ｂの接触している場所の座標は同じである。
【００７０】
この状態では、ＰＣ２０のアプリケーションは、スタイラス３０Ａがディスプレイ２に接触している状態と認識し、ＰＣ２０のＯＳは、スタイラス３０がディスプレイ２に接触していない状態と認識しているため、以下の手順が実行される。
【００７１】
Ｔ１４（Ｔ１７）の後に、座標検出装置１０は、ＰＤデータ＃２と、ＰＵデータ＃２とを生成し、ＰＣ２０に送信することにより、スタイラス３０Ａがディスプレイ２から離れたことを、ＰＣ２０のアプリケーションに認識させる。ＰＵデータ＃１が送信され、ＰＣ２０のＯＳが、ディスプレイ２にスタイラス３０が接触していないと認識しているため、座標検出装置１０は、まずＰＤデータ＃２が送信し、スタイラス３０Ｂが、ディスプレイ２に接触しているとＰＣ２０のＯＳに認識させる。次に、座標検出装置１０は、ＰＵデータ＃２を送信する。これにより、ＰＣ２０のＯＳは、スタイラス３０がディスプレイ２にから離れたことを認識し、ＰＣ２０のアプリケーションは、スタイラス３０Ａがディスプレイ２にから離れたことを認識する。
【００７２】
この場合、スタイラス３０Ａのみがディスプレイ２に接触しているため、ＰＵＤデータではなく、ＰＤデータが用いられる。
【００７３】
ＰＤデータ＃２とＰＵデータ＃２に含まれるスタイラス３０Ａの接触している場所の座標は同じである。
【００７４】
ＰＣ２０のアプリケーションが、スタイラス３０Ａ及びスタイラス３０Ｂの接触状態を適切に認識しているため、スタイラス３０Ａ及びスタイラス３０Ｂが再びディスプレイ２に接触した際に、描画された内容に対応する画像が新たに生成される。
【００７５】
図５の（２）は、図５の（１）のタイミングチャートに示されるデータが生成されたときに、ＰＣ２０のアプリケーションにより生成される画像の一例を示す図である。
【００７６】
画像５６は、Ｔ１３からＴ１４の期間のスタイラス３０Ａの描画に対応する画像であり、画像５７は、Ｔ１５以降のスタイラス３０Ａの描画に対応する画像である。画像５８は、Ｔ１６からＴ１７の期間のスタイラス３０Ｂの描画に対応する画像であり、画像５９は、Ｔ１８以降のスタイラス３０Ｂの描画に対応する画像である。
【００７７】
図５の例では、複数のスタイラス３０が同時に、ディスプレイ２から離れる場合に、データが生成されるタイミングを示しているが、座標検出装置１０は、複数のスタイラス３０が異なるタイミングでディスプレイ２から離れる場合であっても、ＰＵＤデータ又はＰＤデータを送信後に、ＰＵデータを送信してもよい。座標検出装置１０は、複数のスタイラス３０の離れるタイミングを意識せずにデータを生成することができるため、座標検出装置１０の処理が簡略化される。
【００７８】
＜ハードウェア構成＞
図６は、実施形態に係る座標検出装置のハードウェア構成の一例を示す図である。
【００７９】
座標検出装置１０は入力データ受信装置２０１、ＲＡＭ２０２、ＲＯＭ２０３、ＣＰＵ２０４、通信Ｉ／Ｆ２０５、フラッシュメモリ２０６などを備え、それぞれがバスＢで相互に接続されている。
【００８０】
入力データ受信装置２０１は、入力装置３が検知したスタイラス３０の状態に関するデータを受信する。
【００８１】
通信Ｉ／Ｆ２０５は、有線、無線のネットワーク、又はケーブルを介して、ＨＩＤデータを、ＰＣ２０に送信する。
【００８２】
フラッシュメモリ２０６はプログラムやデータを格納している不揮発性の記憶装置の一例である。格納されるプログラムやデータには座標検出装置１０全体を制御する基本ソフトウェアであるＯＳ、ＯＳ上において各種機能を提供するアプリケーションソフトウェアなどがある。
【００８３】
ＲＯＭ２０３は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ（記憶装置）の一例である。ＲＯＭ２０３には座標検出装置１０の起動時に実行されるＢＩＯＳ、ＯＳ設定、及びネットワーク設定などのプログラムやデータが格納されている。ＲＡＭ２０２はプログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）の一例である。
【００８４】
ＣＰＵ２０４は、ＲＯＭ２０３及びフラッシュメモリ２０６などの記憶装置からプログラムやデータをＲＡＭ２０２上に読み出し、処理を実行することで、座標検出装置１０全体の制御や座標検出装置１０の機能を実現する演算装置である。
【００８５】
なお、ＰＣ２０についても、上述した、座標検出装置１０と同様のハードウェア構成を用いて実現される。ＰＣ２０の場合は、上述したハードウェア構成に加えて、マウス、キーボード等の入力装置、及びディスプレイを備える。また、ＰＣ２０は、ＨＤＤ等の記憶媒体を具備してもよい。
【００８６】
＜機能構成＞
図７は、実施形態に係る座標検出装置、及びＰＣの機能構成の一例を示す図である。
【００８７】
座標検出装置１０は、接触判断部１１０、座標算出部１２０、特徴特定部１３０、ＨＩＤデータ生成部１４０、及び送信タイミング制御部１５０を有する。
【００８８】
接触判断部１１０は、入力装置３が検知した内容の通知を受け、スタイラス３０のディスプレイ２への接触状態を判断する。具体的には、接触判断部１１０は、スタイラス３０が接触を開始したか否か、スタイラス３０が接触を継続しているか否か、及びスタイラス３０が離れたか否かを判断する。接触判断部１１０は、入力装置３から通知された内容を、座標算出部１２０、及び特徴特定部１３０に通知する。
【００８９】
座標算出部１２０は、入力装置３から通知された内容を用いて、ディスプレイ２における、スタイラス３０が接触を開始した座標、スタイラス３０が接触している座標、及びスタイラス３０が離れた座標を算出する。
【００９０】
特徴特定部１３０は、入力装置３から通知された内容を用いて、スタイラス３０の識別子、スタイラス３０の接触圧力、及びサイズ等の特徴を特定する。
【００９１】
ＨＩＤデータ生成部１４０は、接触判断部１１０の判断結果に応じたＨＩＤデータを生成する。ＨＩＤデータには、座標算出部１２０が算出した座標、及び特徴特定部１３０が特定した特徴とを含む。
【００９２】
具体的には、ＨＩＤデータ生成部１４０は、スタイラス３０が接触を開始したことを示すＰＤデータ、スタイラス３０が継続して接触していることを示すＰＵＤデータ、スタイラス３０が離れたことを示すＰＵデータを生成する。
【００９３】
実施形態に係るＰＣ２０のＯＳは、複数のスタイラス３０が、ディスプレイ２に接触していることを認識できない。このため、スタイラス３０Ａがディスプレイ２に接触している状態で、スタイラス３０Ｂがディスプレイ２に接触を開始したと判断された場合、ＨＩＤデータ生成部１４０は、ＰＤデータの代わりにＰＵＤデータを生成する。また、複数のスタイラス３０がディスプレイ２に接触している状態で、スタイラス３０Ａが、ディスプレイ２から離れたと判断された場合、ＰＤデータ又はＰＵＤデータを送信した後に、ＰＵデータを送信する。
【００９４】
送信タイミング制御部１５０は、生成されたＨＩＤデータを、ＰＣ２０に送信するタイミングを調整し、調整されたタイミングでＨＩＤデータをＰＣ２０に送信する。
【００９５】
ＰＣ２０は、デバイスドライバ２１０、ＯＳ機能実行部２２０、アプリケーション機能実行部２３０、表示制御部２４０、及び属性管理部２５０を有する。
【００９６】
デバイスドライバ２１０は、ネットワーク５を介して、ＨＩＤデータを座標検出装置１０から受信する。
【００９７】
ＯＳ機能実行部２２０は、ＰＣ２０のＯＳ機能を実行する。デバイスドライバ２１０からＨＩＤデータを受信し、受信したＨＩＤデータをアプリケーション機能実行部２３０に通知する。
【００９８】
上述したように、ＯＳ機能実行部２２０は、複数のスタイラス３０がディスプレイ２に接触していることを認識できないため、１つのスタイラス３０の接触状態をＨＩＤデータで通知されたものとして、動作する。
【００９９】
アプリケーション機能実行部２３０は、ＨＩＤデータに含まれる、算出された座標と、特定された特徴とから、スタイラス３０Ａによりディスプレイ２に描画された内容に対応する画像を生成する。なお、アプリケーション機能実行部２３０により生成される画像データは、描画された内容に対応する画像と、その他の画像（例えば、図、及び表等）とを含んでもよい。
【０１００】
アプリケーション機能実行部２３０は、属性管理部２５０を参照し、スタイラス３０の識別子と対応付けられて記憶されているスタイラス３０の属性を特定する。アプリケーション機能実行部２３０は、特定された属性を用いて、描画された内容に対応する画像を生成する。
【０１０１】
表示制御部２４０は、アプリケーション機能実行部２３０により生成された画像をディスプレイ２に表示させる。
【０１０２】
属性管理部２５０は、スタイラス３０の識別子と、スタイラス３０の属性とを対応付けて記憶する。スタイラス３０の属性として、ペン機能、消しゴム機能、及びこれらの機能の設定である。機能の設定には、ペンの色、及び太さ等が設定される。
【０１０３】
＜動作手順＞
図８は、実施形態に係るフローチャートの一例を示す図（その１）である。図８を用いて、スタイラス３０がディスプレイ２に接触を開始するとき、及び接触をしているときの動作手順について説明する。
【０１０４】
ステップＳ８０１で、接触判断部１１０が、スタイラス３０のディスプレイ２への接触を判断したことに応じて、座標算出部１２０は、スタイラス３０の接触した場所の座標を算出する。また、特徴特定部１３０は、スタイラス３０の識別子等の特徴を特定する。
【０１０５】
ステップＳ８０２で、接触判断部１１０は、スタイラス３０による最初の接触か否かを判断する。スタイラス３０Ａがディスプレイ２への接触を開始した場合であって、かつスタイラス３０Ｂがディスプレイ２に接触していない場合、スタイラス３０による最初の接触と判断する。
【０１０６】
スタイラス３０による最初の接触と判断された場合（Ｓ８０２  Ｙｅｓ）、ステップＳ８０３に進む。一方、スタイラス３０による最初の接触と判断されなかった場合（Ｓ８０２  Ｎｏ）、ステップＳ８０４に進む。
【０１０７】
ステップＳ８０３で、ＨＩＤデータ生成部１４０は、ＰＤデータを生成する。ＰＤデータには、算出された座標、特定されたスタイラス３０の識別子等の特徴を含む。
【０１０８】
ステップＳ８０４で、接触判断部１１０は、他のスタイラス３０（スタイラス３０Ｂ）による接触か否かを判断する。判断には、特徴特定部１３０により特定されたスタイラス３０の識別子を用いてもよい。スタイラス３０Ｂによる接触の場合（ステップＳ８０４  Ｙｅｓ）、ステップＳ８０５に進む。一方、スタイラス３０Ｂによる接触でない場合（ステップＳ８０４  Ｎｏ）、ステップＳ８０６に進む。
【０１０９】
ステップＳ８０５で、ＨＩＤデータ生成部１４０は、ＰＵＤデータを生成する。ＰＵＤデータには、算出された座標、特定されたスタイラス３０の識別子等の特徴を含む。ここで、特定されたスタイラス３０の識別子は、新たに接触したスタイラス３０Ｂの識別子である。
【０１１０】
ステップ８０６で、ＨＩＤデータ生成部１４０は、ステップＳ８０５と同様に、ＰＵＤデータを生成する。ＰＵＤデータには、算出された座標、特定されたスタイラス３０の識別子等の特徴を含む。ここで、特定されたスタイラス３０の識別子は、スタイラス３０Ａの識別子である。
【０１１１】
ステップＳ８０７で、送信タイミング制御部１５０は、生成されたＨＩＤデータを、所定のタイミングでＰＣ２０に送信する。
【０１１２】
図９は、実施形態に係るフローチャートの一例を示す図（その２）である。図９を用いて、スタイラス３０がディスプレイ２から離れるときの動作手順について説明する。
【０１１３】
ステップＳ９０１で、接触判断部１１０が、スタイラス３０がディスプレイ２から離れたと判断したことに応じて、座標算出部１２０は、スタイラス３０が離れた場所の座標を算出する。また、特徴特定部１３０は、スタイラス３０の識別子等の特徴を特定する。ここでは、スタイラス３０Ａがディスプレイ２から離れたと判断されたものとする。
【０１１４】
ステップＳ９０２で、接触判断部１１０は、スタイラス３０Ｂがディスプレイ２に接触しているか否かを判断する。スタイラス３０Ｂがディスプレイ２に接触している場合（ステップＳ９０２  Ｙｅｓ）、ステップＳ９０３に進む。一方、スタイラス３０Ｂがディスプレイ２に接触していない場合（ステップＳ９０２  Ｎｏ）、ステップＳ９０５に進む。
【０１１５】
なお、２つのスタイラス３０が同時に離れた場合には、接触判断部１１０は、いずれか一方のスタイラス３０が先に離れたとみなして、処理を進める。
【０１１６】
この場合、先に離れたと判断されたスタイラス３０に関する処理は、ステップＳ９０３に進んで実行される（ステップＳ９０２  Ｙｅｓ）。後に離れたと判断されたスタイラス３０に関する処理は、ステップＳ９０５に進んで実行される（ステップＳ９０２  Ｎｏ）。
【０１１７】
ステップＳ９０３で、ＨＩＤデータ生成部１４０は、ＰＵＤデータを生成する。ＰＵＤデータには、算出された座標、特定されたスタイラス３０Ａの識別子等の特徴を含む。
【０１１８】
ステップＳ９０４で、送信タイミング制御部１５０は、生成したＰＵＤデータを、ＰＣ２０に送信する。
【０１１９】
ステップＳ９０５で、ＨＩＤデータ生成部１４０は、ＰＤデータを生成する。ＰＤデータには、算出された座標、特定されたスタイラス３０Ａの識別子等の特徴を含む。
【０１２０】
ステップＳ９０６で、送信タイミング制御部１５０は、生成されたＰＤデータを、ＰＣ２０に送信する。
【０１２１】
ステップＳ９０７で、ＨＩＤデータ生成部１４０は、ＰＵデータを生成する。ＰＵデータには、算出された座標、特定されたスタイラス３０Ａの識別子等の特徴を含む。
【０１２２】
ステップＳ９０８で、送信タイミング制御部１５０は、生成されたＰＵデータを、ＰＣ２０に送信する。
【０１２３】
上述した動作手順を実行することにより、複数のスタイラス３０を使用する場合でも、ＰＣ２０のアプリケーション機能実行部２３０に、適切にスタイラス３０の状態を認識させることが可能となる。
【０１２４】
図１０は、実施形態に係る動作シーケンスである。図１０を用いて、座標検出装置１０からＰＣ２０に送信されるＨＩＤデータのシーケンスを説明する。なお、ＨＩＤデータは、デバイスドライバ２１０を介して、ＯＳ機能実行部２２０に受信されるが、デバイスドライバ２１０の記載は省略する。
【０１２５】
ステップＳ１００１で、座標検出装置１０は、スタイラス３０Ａの接触の開始を検知する。
【０１２６】
ステップＳ１００２で、座標検出装置１０は、ＰＤデータをＰＣ２０に送信する。ＰＤデータには、スタイラス３０Ａの識別子、算出された座標を含む。ＯＳ機能実行部２２０は、デバイスドライバ２１０を介して、ＰＤデータを受信する。ＯＳ機能実行部２２０は、スタイラス３０がディスプレイ２に接触したことを認識する。
【０１２７】
ステップＳ１００３で、ＯＳ機能実行部２２０は、ＰＤデータをアプリケーション機能実行部２３０に送信する。アプリケーション機能実行部２３０は、受信したＰＤデータから、スタイラス３０Ａがディスプレイ２に接触したこと、及び接触したディスプレイ２上の座標を認識する。
【０１２８】
ステップＳ１００４で、アプリケーション機能実行部２３０は、属性管理部２５０を参照し、スタイラス３０Ａの属性を特定する。
【０１２９】
ステップＳ１００５で、座標検出装置１０は、スタイラス３０Ａがディスプレイ２に継続して接触していることを示すＰＵＤデータをＰＣ２０に通知する。ＯＳ機能実行部２２０は、スタイラス３０が接触していることを認識し、アプリケーション機能実行部２３０は、スタイラス３０Ａが継続して接触していること、及びスタイラス３０Ａの接触場所の座標を認識する。ステップＳ１００５のＰＵＤデータは、スタイラス３０Ａがディスプレイ２に接触中は、所定のタイミングで、繰り返し送信される。
【０１３０】
ステップＳ１００６で、座標検出装置１０は、スタイラス３０Ｂの接触の開始を検知する。
【０１３１】
ステップＳ１００７で、座標検出装置１０は、ＰＵＤデータをＰＣ２０に送信する。ＯＳ機能実行部２２０が、スタイラス３０が既にディスプレイ２に接触していると認識しているため、ＰＤデータの代わりにＰＵＤデータが用いられる。ＰＵＤデータには、スタイラス３０Ｂの識別子、算出された座標を含む。ＯＳ機能実行部２２０は、デバイスドライバ２１０を介して、ＰＵＤデータを受信する。ＯＳ機能実行部２２０は、スタイラス３０がディスプレイ２に継続して接触していると認識する。
【０１３２】
ステップＳ１００８で、ＯＳ機能実行部２２０は、ＰＵＤデータをアプリケーション機能実行部２３０に送信する。アプリケーション機能実行部２３０は、受信したＰＵＤデータから、スタイラス３０Ｂがディスプレイ２に接触したこと、及び接触したディスプレイ２上の座標を認識する。
【０１３３】
ステップＳ１００９で、アプリケーション機能実行部２３０は、属性管理部２５０を参照し、スタイラス３０Ｂの属性を特定する。
【０１３４】
ステップＳ１０１０で、座標検出装置１０は、スタイラス３０Ｂがディスプレイ２に継続して接触していることを示すＰＵＤデータをＰＣ２０に通知する。ＯＳ機能実行部２２０は、スタイラス３０が接触していることを認識し、アプリケーション機能実行部２３０は、スタイラス３０Ｂが継続して接触していること、及びスタイラス３０Ｂの接触場所の座標を認識する。ステップＳ１０１０のＰＵＤデータは、スタイラス３０Ｂがディスプレイ２に接触中は、所定のタイミングで、繰り返し送信される。
【０１３５】
アプリケーション機能実行部２３０は、受信したＰＤデータ、及びＰＵＤデータを基に、スタイラス３０Ａ及びスタイラス３０Ｂにより描画された内容に応じた画像を生成する。また、画像は、スタイラス３０の属性（例えば、ペンの色）に基づいて生成される。
【０１３６】
次に、スタイラス３０Ａとスタイラス３０Ｂとが同じタイミングでディスプレイ２から離れるときの動作手順について説明する。
【０１３７】
ステップＳ１０１１で、座標検出装置１０は、スタイラス３０Ａとスタイラス３０Ｂとが同じタイミングで、ディスプレイ２から離れたと判断する。
【０１３８】
ステップＳ１０１２で、座標検出装置１０は、スタイラス３０Ａの識別子と、ディスプレイ２から離れた場所の座標を含むＰＵＤデータをＰＣ２０に送信する。ＯＳ機能実行部２２０は、デバイスドライバ２１０を介して、ＰＵＤデータを受信する。
【０１３９】
ステップＳ１０１３で、ＯＳ機能実行部２２０は、ＰＵＤデータをアプリケーション機能実行部２３０に送信する。アプリケーション機能実行部２３０は、ＰＵＤデータを受信し、スタイラス３０Ａが継続してディスプレイ２に接触していることを認識する。
【０１４０】
ステップＳ１０１４で、座標検出装置１０は、スタイラス３０Ａの識別子とディスプレイ２から離れた場所の座標を含むＰＵデータを送信する。ＯＳ機能実行部２２０は、デバイスドライバ２１０を介してＰＵデータを受信し、スタイラス３０がディスプレイ２から離れたと認識する。
【０１４１】
ステップＳ１０１５で、ＯＳ機能実行部２２０は、アプリケーション機能実行部２３０に、ＰＵデータを送信する。アプリケーション機能実行部２３０は、ＰＵデータを受信し、スタイラス３０Ａが、ディスプレイ２から離れたと認識する。
【０１４２】
ステップＳ１０１６で、座標検出装置１０は、スタイラス３０Ｂの識別子と、ディスプレイ２から離れた場所の座標を含むＰＤデータをＰＣ２０に送信する。ＯＳ機能実行部２２０は、デバイスドライバ２１０を介して、ＰＤデータを受信する。
【０１４３】
ステップＳ１０１７で、ＯＳ機能実行部２２０は、スタイラス３０がディスプレイ２に接触したと認識する。ＯＳ機能実行部２２０は、ＰＤデータをアプリケーション機能実行部２３０に送信する。アプリケーション機能実行部２３０は、ＰＤデータを受信し、スタイラス３０Ｂが接触していることを認識する。
【０１４４】
ステップＳ１０１８で、座標検出装置１０は、スタイラス３０Ｂの識別子とディスプレイ２から離れた場所の座標を含むＰＵデータを送信する。ＯＳ機能実行部２２０は、デバイスドライバ２１０を介してＰＵデータを受信し、スタイラス３０がディスプレイ２から離れたと認識する。
【０１４５】
ステップＳ１０１９で、ＯＳ機能実行部２２０は、アプリケーション機能実行部２３０に、ＰＵデータを送信する。アプリケーション機能実行部２３０は、ＰＵデータを受信し、スタイラス３０Ｂが、ディスプレイ２から離れたと認識する。
【０１４６】
＜変形例等＞
上述した実施形態では、複数のスタイラス３０が、ディスプレイ２から同じタイミングで離れたと判断された場合、座標検出装置１０は、ＰＤデータ、又はＰＵＤデータをＰＣ２０に送信し、その直後に、ＰＵデータをＰＣ２０に送信することにより、ＰＣ２０にスタイラス３０の接触状態を適切に認識させていた。
【０１４７】
この手順は、次のように変形することが可能である。
【０１４８】
座標検出装置１０が、スタイラス３０Ａとスタイラス３０Ｂとが同じタイミングでディスプレイ２から離れたと認識した場合、座標検出装置１０は、まずスタイラス３０Ａの識別子を含むＰＵデータを送信する。次に、スタイラス３０Ｂの識別子を含むＰＤデータを送信する。最後に、スタイラス３０Ｂの識別子を含むＰＵデータを送信する。
【０１４９】
この手順は、図１０に示す動作シーケンスにおいて、ステップＳ１０１２とステップＳ１０１３とが省略された場合と同様である。
【０１５０】
この場合でも、同様にＰＣ２０にスタイラス３０の接触状態を適切に認識させることができる。
【０１５１】
ＰＣ２０は、情報処理装置の一例である。接触判断部１１０は、判断部の一例である。ＨＩＤデータ生成部１４０は、データ生成部の一例である。ディスプレイ２は、画面の一例である。デバイスドライバ２１０は、受信部の一例である。アプリケーション機能実行部２３０は、画像生成部の一例である。
【０１５２】
上述した実施形態は、赤外線カメラ等による入力装置３から座標検出装置１０が、スタイラス３０の状態に応じたデータを受け付ける例について説明したが、入力装置３は、様々な形態で実現可能である。例えば、入力装置３として、静電容量センサ、光学式センサ、又はこれらの組み合わせが用いられてもよい。座標検出装置１０が、これらの装置から通知されたデータを基に、スタイラス３０の状態を判断した場合にも、座標検出装置１０は、スタイラス３０の状態を、ＰＣ２０に適切に認識させることができる。
【０１５３】
単一のスタイラス３０を用いることを前提としてＨＩＤデータを使用する場合に、上述した実施形態を適用可能である。例えば、Ｗｉｎｄｏｗｓ（登録商標）、又はＬｉｎｕｘ（登録商標）等のＯＳを使用するＰＣ２０と、座標検出装置１０との間で適用することが可能である。
【０１５４】
ＰＣ２０と、座標検出装置１０とは、同一の装置により実現されてもよい。
【０１５５】
上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、コンピュータ装置に供給してもよい。そして、コンピュータ装置が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、上述の実施形態が、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は、いずれかの実施の形態を構成することになる。ここで、記憶媒体は、記録媒体または非一時的な記憶媒体である。
【０１５６】
また、コンピュータ装置が読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。そのプログラムコードの指示に従って、コンピュータ装置上で動作しているオペレーティングシステム（ＯＳ）等が実際の処理の一部または全部を行ってもよい。さらに、その処理によって前述した実施形態の機能が実現されてもよいことは言うまでもない。
【０１５７】
以上、本発明の好ましい実施形態について説明したが、本発明はこうした実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【０１５８】
１  座標検出システム
２  ディスプレイ
３  入力装置
５  ネットワーク
６  ケーブル
１０  座標検出装置
２０  ＰＣ
３０  スタイラス
１１０  接触判断部
１２０  座標算出部
１３０  特徴特定部
１４０  ＨＩＤデータ生成部
１５０  送信タイミング制御部
２１０  デバイスドライバ
２２０  機能実行部
２３０  アプリケーション機能実行部
２４０  表示制御部
２５０  属性管理部
【先行技術文献】
【特許文献】
【０１５９】
【特許文献１】特開２０１４−２１６２０号公報
【図１】
2019035993.tif 000003
【図２】
2019035993.tif 000004
【図３】
2019035993.tif 000005
【図４】
2019035993.tif 000006
【図５】
2019035993.tif 000007
【図６】
2019035993.tif 000008
【図７】
2019035993.tif 000009
【図８】
2019035993.tif 000010
【図９】
2019035993.tif 000011
【図１０】
2019035993.tif 000012