(57)【要約】  電子ペン装置におけるデータ管理デバイスは、製品表面の画像を受信し（６０２）、これらの画像からデータを抽出する（６０４）ように作動する。製品表面には、位置符号化パターンの一部が備えられてよく、そして、抽出されたデータは、パターンによって符号化された位置を表してよい。本デバイスは、抽出されたデータをオンライン処理とオフライン処理にて選択的に処理する。処理の選択（６０６）は、画像内のパターンデータによって制御されてよい。オンライン処理は、抽出されたデータを連続的に、かつ典型的にはほぼリアルタイムで、ペン装置の通信インターフェースに提供する（６１４）ように作動可能である。オフライン処理は、抽出されたデータをペン装置の内部の格納部（Ｍ）に格納する（６０８）ように作動可能である。オフライン処理はまた、抽象的な位置符号化パターンの特定の部分から生じる抽出されたデータを取り出して揃えることによって、抽出されたデータを通信インターフェースに非連続的な順序で選択的に提供する（６１０）ようにも作動可能である。
2008519325.tif 000002
【特許請求の範囲】
【請求項１】
電子ペン装置における方法であって、
製品表面の画像を受信することと、
前記画像からデータを抽出することと、
前記抽出されたデータをオンライン処理とオフライン処理にて選択的に処理することと、を備え、
前記オンライン処理は、前記抽出されたデータを連続的に前記ペン装置の通信インターフェースに提供するように作動可能であり、
前記オフライン処理は、前記抽出されたデータを前記ペン装置の内部の格納部に格納するように作動可能であり、前記抽出されたデータを不連続な順序で選択的に前記通信インターフェースに提供するように作動可能であることを特徴とする方法。
【請求項２】
前記オンライン処理は、前記抽出されたデータを、前記抽出することと本質的にリアルタイムで前記通信インターフェースにおいて提供するように作動可能であることを特徴とする請求項１に記載の方法。
【請求項３】
前記抽出されたデータは、複数の位置を備え、前記位置のそれぞれは、位置領域識別子と関連付けられており、前記不連続な順序の前記抽出されたデータは、位置領域識別子に基づいて揃えられることを特徴とする請求項１または２に記載の方法。
【請求項４】
前記オフライン処理は、前記抽出されたデータを、コンピュータファイルシステムにおける格納に好適な少なくとも１つの自律的なデータファイルオブジェクトに提供するように作動可能であることを特徴とする請求項１〜３のいずれかに記載の方法。
【請求項５】
前記オフライン処理は、専用トリガーイベントの検出時にのみ前記抽出されたデータを選択的に提供するように作動可能であることを特徴とする請求項１〜４のいずれかに記載の方法。
【請求項６】
前記専用トリガーイベントは、外部デバイスに接続された前記通信インターフェースから、または、前記画像の少なくとも１つにおいて検出された所定パターンから生じることを特徴とする請求項５に記載の方法。
【請求項７】
前記オンライン処理と前記オフライン処理の少なくとも１つが、前記画像の少なくとも１つにおける所定パターンの検出によって選択されることを特徴とする請求項１〜６のいずれかに記載の方法。
【請求項８】
前記抽出されたデータは、デフォルトでは前記オフライン処理にて処理され、
前記検出により、前記検出に続いて抽出されたデータは、前記オンライン処理にて処理されることを特徴とする請求項７に記載の方法。
【請求項９】
前記検出を示すために専用処理イベントを生成することをさらに備える請求項７または８に記載の方法。
【請求項１０】
前記オンライン処理は、前記画像における前記所定パターンの前記検出の間に限定して起動されることを特徴とする請求項７〜９のいずれかに記載の方法。
【請求項１１】
前記所定パターンは、前記抽出されたデータから検出されることを特徴とする請求項９または１０に記載の方法。
【請求項１２】
前記抽出されたデータが、大域座標系における位置を備えている方法であって、
前記方法は、前記ペン装置のメモリに格納された定義データに対して、前記位置の少なくとも１つをマッピングすることによって処理指示子を引き出すことをさらに備え、
前記所定パターンは、前記処理指示子から検出されることを特徴とする請求項７〜１１のいずれかに記載の方法。
【請求項１３】
前記定義データは、前記大域座標系において個別にアドレス指定可能な位置領域を示しており、前記位置領域のそれぞれは、位置領域識別子と関連付けられており、
前記処理指示子は、前記位置領域識別子を備えることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記定義データは、前記大域座標系において個別にアドレス指定可能な位置領域を示しており、一組の前記位置領域を機能的属性と関連付けるものであり、
前記処理指示子は、前記機能的属性を備えることを特徴とする請求項１２に記載の方法。
【請求項１５】
前記オンライン処理は、前記オフライン処理が前記抽出されたデータを不連続な順序で選択的に前記通信インターフェースに提供することによって起動されることを特徴とする請求項７に記載の方法。
【請求項１６】
前記オフライン処理は、さらに、前記ペン装置によって実行されるべき機能を、前記抽出されたデータに基づいて特定するように作動可能であることを特徴とする請求項１〜１５のいずれかに記載の方法。
【請求項１７】
前記機能は、前記ペン装置のマンマシンインターフェース（ＭＭＩ）を起動させる命令を備えることを特徴とする請求項１６に記載の方法。
【請求項１８】
前記オンライン処理は、さらに、フィードバック命令を前記通信インターフェースで受信するように作動可能であり、前記ペン装置のＭＭＩを前記フィードバック命令に基づいて起動するように作動可能であることを特徴とする請求項１〜１７のいずれかに記載の方法。
【請求項１９】
前記オンライン処理は、さらに、前記通信インターフェースを介した外部デバイスへの接続の開始と確立との間に取得された画像から抽出されたデータを、前記ペン装置のバッファーメモリに格納するように作動可能であり、前記確立の後に、前記バッファーメモリに格納された前記データと前記確立に続いて抽出されたデータとを、前記通信インターフェースを介して前記外部デバイスに提供するように作動可能であることを特徴とする請求項１〜１８のいずれかに記載の方法。
【請求項２０】
前記オンライン処理は、さらに、前記接続が確立されなかった場合に、前記バッファーメモリに格納された前記データを消去するように作動可能であることを特徴とする請求項１９に記載の方法。
【請求項２１】
前記オンライン処理は、さらに、前記確立の前に前記バッファーメモリに格納されていた前記抽出されたデータを特定するバッファー指示子を、前記通信インターフェースを介して提供するように作動可能であることを特徴とする請求項１９または２０に記載の方法。
【請求項２２】
前記バッファー指示子は、前記通信インターフェースに提供された前記抽出されたデータに含まれる各データ項目のための取り込みタイムスタンプと、接続タイムスタンプとを備え、
前記取り込みタイムスタンプは、前記画像において前記データ項目が記録されたときの時間を表し、前記接続タイムスタンプは、前記接続の確立のための時間を表すことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記オンライン処理は、前記通信インターフェースを介した外部デバイスへの接続の確立のための時間を表す接続タイムスタンプを備えるセッションメッセージを提供することを特徴とする請求項１〜２２のいずれかに記載の方法。
【請求項２４】
前記セッションメッセージは、前記ペン装置を一意に特定するペン識別子をさらに備えることを特徴とする請求項２３に記載の方法。
【請求項２５】
前記オンライン処理は、前記抽出されたデータを一続きのデータメッセージとして提供し、前記データメッセージのそれぞれは、前記画像の１つから抽出されたデータ項目を備えることを特徴とする請求項１〜２４のいずれかに記載の方法。
【請求項２６】
前記データ項目のそれぞれは、位置と、位置領域識別子とを備えることを特徴とする請求項２５に記載の方法。
【請求項２７】
前記データメッセージのそれぞれは、前記画像が取得されたときの時間を表すタイムスタンプをさらに備えることを特徴とする請求項２５または２６に記載の方法。
【請求項２８】
前記データメッセージのそれぞれは、前記ペン装置のペン先と関連付けられた力センサから得られた力値を備えることを特徴とする請求項２５〜２７のいずれかに記載の方法。
【請求項２９】
前記データメッセージのそれぞれは、前記画像から決定された、前記ペン装置の三次元の方位を表す方位データを備えることを特徴とする請求項２５〜２８のいずれかに記載の方法。
【請求項３０】
電子ペン装置におけるデバイスであって、
前記ペン装置の画像センサによって取り込まれた製品表面の画像からデータを抽出する抽出プロセッサと、
前記抽出されたデータをオンライン処理とオフライン処理にて選択的に処理するデータプロセッサと、
を備え、
前記データプロセッサは、前記オンライン処理においては、前記抽出されたデータを連続的に前記ペン装置の通信インターフェースにおいて提供するように作動可能であり、
前記データプロセッサは、前記オフライン処理においては、前記抽出されたデータを前記ペン装置の内部の格納部に格納するように作動可能であり、前記抽出されたデータを不連続な順序で選択的に前記通信インターフェースにおいて提供するように作動可能であることを特徴とするデバイス。
【請求項３１】
製品表面の画像を取り込むための画像センサと、
通信インターフェースと、
請求項１〜２９のいずれかに記載の方法を実行する処理デバイスと、
を備える電子ペン装置。
【請求項３２】
符号化された製品表面と情報交換するためのシステムであって、
請求項３１に記載の前記電子ペン装置と、
前記電子ペンの前記通信インターフェースへの接続を確立するように作動可能な通信インターフェースと、
制御部と、
フィードバックデバイスと、
を備え、
前記制御部は、前記電子ペン装置がオンラインデータを提供する時に、前記通信インターフェースを介して前記ペン装置から前記オンラインデータを受信するように作動可能であり、前記オンラインデータの前記受信と本質的にリアルタイムで前記フィードバックデバイスを介してフィードバックデータを提供するように作動可能であることを特徴とするシステム。
【請求項３３】
前記制御部は、前記ペン装置が前記オンラインデータを提供する時に、前記ペン装置によって予め提供されているオフラインデータを取り出すように作動可能であることを特徴とする請求項３２に記載のシステム。
【請求項３４】
前記制御部は、取り出すべき前記オフラインデータを、前記オンラインデータに基づいて特定することを特徴とする請求項３３に記載のシステム。
【請求項３５】
前記制御部は、前記取り出されたオフラインデータに対して前記オンラインデータを操作することを特徴とする請求項３２または３３に記載のシステム。
【請求項３６】
前記接続の継続時間は、前記電子ペン装置によって制御されることを特徴とする請求項３２〜３５のいずれかに記載のシステム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本出願は、２００４年１１月５日に出願された米国仮特許出願第６０／６２５，１６７号と、２００４年１１月５日に出願されたスウェーデン特許出願第０４０２７１０−８号と、２００５年６月６日に出願された米国仮特許出願第６０／６８７，３３２号と、２００５年６月２日に出願されたスウェーデン特許出願第０５０１２６５−３号との利益を主張し、すべての当該出願は、参照によりここに組み込まれているものとする。
【技術分野】
【０００２】
本発明は、全体として、デジタル的に記録されたデータの管理に関し、特に、電子ペンにおけるデータ管理処理に関する。
【背景技術】
【０００３】
電子ペンは、製品表面の手書きの書き込みを電子的に表す情報の生成に用いられることができる。ある型の電子ペンは、製品表面の位置符号の画像を取り込むことによって作動する。ペンは、製品表面におけるペンの動作を反映する一続きの位置（ペンストローク）を、画像に基づいて電子的に記録することができる。
【０００４】
国際公開ＷＯ００／７２２３０号は、そのような電子ペンを開示しており、その電子ペンは、電子ペンストロークを一つ一つ、ほぼリアルタイムで近くのプリンタへ送信する。プリンタは、専用のサービスを行うネットワークサーバへ、ペンストロークを中継する。サービスは、ペンストロークを処理し、場合によっては位置符号化された応答シートをプリンタに印刷させる。ペンがプリンタの範囲外にあるときは、ペンは、ペンストロークを内部メモリにバッファリングする。ペンが再びプリンタの範囲内に戻ったら、ペンは、バッファリングされたペンストロークを、プリンタへ直接送信されるペンストロークと同じ形式で転送する。このペンは、プリンタ／ネットワークサーバとオンライン通信をして作動するよう設計されている。ペンは常に、連続的に、すなわちペンストロークが作成された厳密な順序でペンストロークを出力するので、ユーザにはペンストローク移送処理が見えない。同時に、この作動原理は、ペンの有用性を限定してしまう。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、従来技術のペンよりも多用途性の改善された電子ペンを提供することにある。
【０００６】
全体として、本発明の目的は、独立請求項に記載された電子ペン装置における方法およびデバイスと、電子ペン装置と、符号化された製品表面と情報交換するためのシステムとによって少なくとも部分的に達成されるものであり、また、好ましい実施の形態は、従属請求項に規定されている。
【課題を解決するための手段】
【０００７】
本発明の第１の態様は、電子ペン装置における方法であって、製品表面の画像を受信することと、前記画像からデータを抽出することと、前記抽出されたデータをオンライン処理とオフライン処理にて選択的に処理することと、を備え、前記オンライン処理は、前記抽出されたデータを連続的に前記ペン装置の通信インターフェースに提供するように作動可能であり、前記オフライン処理は、前記抽出されたデータを前記ペン装置の内部の格納部に格納するように作動可能であり、前記抽出されたデータを不連続な順序で選択的に前記通信インターフェースに提供するように作動可能であることを特徴とする方法である。
【０００８】
本発明の第２の態様は、電子ペン装置におけるデバイスであって、前記ペン装置の画像センサによって取り込まれた製品表面の画像からデータを抽出する抽出プロセッサと、前記抽出されたデータをオンライン処理とオフライン処理にて選択的に処理するデータプロセッサと、を備え、前記データプロセッサは、前記オンライン処理においては、前記抽出されたデータを連続的に前記ペン装置の通信インターフェースにおいて提供するように作動可能であり、前記データプロセッサは、前記オフライン処理においては、前記抽出されたデータを前記ペン装置の内部の格納部に格納するように作動可能であり、前記抽出されたデータを不連続な順序で選択的に前記通信インターフェースにおいて提供するように作動可能であることを特徴とするデバイスである。
【０００９】
本発明の第３の態様は、製品表面の画像を取り込むための画像センサと、通信インターフェースと、第１の態様の方法を実行する処理デバイスとを備える電子ペン装置である。
【００１０】
本発明の第４の態様は、符号化された製品表面と情報交換するためのシステムであって、第３の態様の前記電子ペン装置と、前記電子ペンの前記通信インターフェースへの接続を確立するように作動可能な通信インターフェースと、制御部と、フィードバックデバイスと、を備え、前記制御部は、前記電子ペン装置がオンラインデータを提供する時に、前記通信インターフェースを介して前記ペン装置から前記オンラインデータを受信するように作動可能であり、前記オンラインデータの前記受信と本質的にリアルタイムで前記フィードバックデバイスを介してフィードバックデータを提供するように作動可能であることを特徴とするシステムである。
【００１１】
本発明のさらなる目的、特徴、態様、および利点は、以下の詳細な開示、添付の従属請求項、そして図面から明らかになるであろう。
【発明を実施するための最良の形態】
【００１２】
次に、添付の概略図を参照して、本発明をさらに詳しく説明する。
【００１３】
（全般）
図６は、本発明の実施の形態に係る電子ペンにおける処理の主な概観を示す。ペンは、符号化パターンを備えた表面の画像を６０２で取り込む。画像は、６０４で処理されて、一続きのデータ項目、典型的には各画像に対して１つの位置が生成される。次に、これらの位置は、選択機構６０６に基づいて、オフライン処理か、オンライン処理か、またはその両方へ、連続的に入力される。オフライン処理では、データ項目は、６０８でペンの固定メモリＭに格納される。そして、後に、典型的にはペンのユーザによって開始されて、選択基準に基づいてメモリＭが６１０でアクセスされ、結果として得られた位置がペンから出力される。選択基準は、典型的には、符号化パターンの特定の部分に起因する位置を示す。オンライン処理では、位置は、６１４でペンから出力される前、少なくともペンが外部デバイスに接続しようとしている間は、６１２で一時メモリＢにバッファリングされてよい。オンライン処理は、連続的に、かつ画像処理６０４と本質的にリアルタイムで、６１４で位置を出力するように作動する。
【００１４】
オフライン処理により、ペンのユーザは、ペンによって生成されたペンストロークをそれぞれ備える一組の電子文書を、外部デバイスとは無関係に作成することができる。そして、ユーザは後で、１以上の選択された文書、または文書の一部を、ペンによってペンストロークが生成された特定の順序にかかわりなく、ペンから出力させることができる。
【００１５】
一方、オンライン処理により、ペンのユーザは、ディスプレイやスピーカなどの局所的な周辺装置またはペン自体を介して受信デバイスからペンのユーザへ与えられている対話型フィードバックによって、ペンによってペンストロークが生成されている時にそのペンストロークと直接、情報交換することができる。
【００１６】
オフラインおよびオンラインの作動処理の両方を同一の電子ペンにおいて提供することで、ペンの多用途性が増す。一つには、ユーザの経験が向上する可能性がある。それは、今や、ペンのユーザが手書きデータを生成し情報交換するための、非常に強力な新手法を実行できるからである。
【００１７】
（抽象パターン）
以下の説明は、ページ単位に細分された抽象的な位置符号化パターンの使用に基づいている。そのような抽象パターンの例は、米国第６，５７０，１０４号、米国第６，６６３，００８号、および米国第６，６６７，６９５号にて与えられており、これらは参照によりここに組み込まれているものとする。ページ単位は、ページ単位群の階層において個別にアドレス指定可能である。図１に例を示す。同図において、パターン１０６は、「セグメント」１１０を含み、次に「セグメント」１１０は、いくつかの「シェルフ」１１１に分割されている。各「シェルフ」１１１は、いくつかの「ブック」１１２を含み、「ブック」１１２は、前述したいくつかのページ単位１１３に分割されている。ページ単位１１３は「パターンページ」とも呼ばれる。好適には、すべてのパターンページは、上記パターン階層の１つの段階内において、同じフォーマットを有する。例えば、いくつかのシェルフがＡ４フォーマットのパターンページで構成され、他のシェルフがＡ５フォーマットのパターンページで構成されるようにしてもよい。抽象パターンにおけるあるパターンページの場所は、例えば「９９．５０００．１．１５００」といったややＩＰアドレスに似た「セグメント．シェルフ．ブック．ページ」という形のページアドレスとして表されることができる。処理効率の理由で、ページアドレスの内部表現は異なっていてもよく、例えば、６４ビットなどといった所定の長さの整数として与えられてもよい。
【００１８】
ある例では、各セグメントは、それぞれのサイズがおよそ５０×５０ｃｍ2の、２６００万を超えるパターンページで構成されている。ある実施の形態では、そのようなセグメントの少なくとも１個は、５１７５個のシェルフに分割され、各シェルフは、２個のブックで構成され、各ブックは、２５１７個のページを持つ。
【００１９】
各パターンページは、符号化パターンの事実上の部分集合と見なされてもよいし、あるいは部分集合によって符号化された絶対位置と見なされてもよい。そのような絶対位置のそれぞれは、全パターンの座標系１１４における大域位置（global position）として表されてもよいし、あるいは論理位置、すなわち、ページアドレスとパターンページ内の座標系１１５における局所位置として表されてもよい。
【００２０】
好適な電子ペンは、位置符号化製品上での自身の動作を、一続きの大域位置（すなわち大域のペンストローク）、またはページアドレスおよび対応するパターンページ上の一続きの局所位置（すなわちアドレス指定されたペンストローク）のいずれかとして記録してよい。
【００２１】
以下の説明はまた、１以上のパターンページに対応する位置符号を含む各製品に基づいている。しかし、製品上の位置符号はパターンページと同じである必要はない、ということが留意されよう。従って、１以上のパターンページからの１以上の部分集合（subset）が、製品上で任意に配置されてよい。製品はまた、製品上の位置符号が、ある位置を含む電子ペンストロークに対して選択的に働く１以上の機能と関連付けられているという点において、埋め込み機能を有してもよい。
【００２２】
そのような実施の形態では、ペンの機能は、位置符号化パターンの特定の部分でペンを操作するユーザによって、少なくとも部分的に制御されてよい。この目的のため、ペンは、１以上のテンプレートを格納してよい。このテンプレートは、位置符号化パターンの別々の部分（機能領域）から記録された情報に対してペンがどのように作動するかを規定する。ある実施の形態において、ページ階層における特定のページ単位群、例えばセグメントまたはシェルフは、所与のテンプレート定義と関連付けられており、それによって、そのテンプレート定義は、その特定のページ単位群内のすべてのパターンページについて有効となっている。テンプレートは、ペンの働きに影響を及ぼし得るあらゆる機能領域の大きさと、配置と、機能とを規定する。そのような機能領域は、「ピジェット（pidgets）」として示される。図４は、テンプレート４００がパターンページ４０２上に展開された状態を説明する図であり、さまざまなピジェット４０４の配置を示している。
【００２３】
テンプレートにおいて、パターンページ内でピジェットに占められていないすべての位置は、描画領域に属しているものと規定される。従って、描画領域は、暗黙のピジェットと見なされてよい。描画領域で検出された位置は、ペンストロークとして記録されるべきものとペンに解釈される。
【００２４】
ピジェットは、トリガー機能、サービス選択機能、デバイス選択機能、局所動作機能、またはフィードバック機能を示してよい。トリガー機能は、以下にさらに説明するように、データを提示するようペンにトリガーをかける。サービス選択機能は、サービスを特定する。サービスは、記録された位置についてのペンの処理に影響を及ぼす文脈情報（例えば電子メール、ファックス、ＳＭＳ）、および／または、処理されるべき位置についてのペンの選択に影響を及ぼす内容情報（例えばページ、ブック、シェルフ）を伝達してよい。デバイス選択機能は、ペンの接続デバイスを特定する（例えばＰＣ、移動デバイス、ＬＡＮアクセスポイント）。局所動作機能は、ペンメモリに影響を及ぼす動作を開始する。フィードバック機能は、バイブレータ、ディスプレイ、またはスピーカといった内部ＭＭＩ（マンマシンインターフェース）をペンに起動させる。
【００２５】
ある実施の形態において、テンプレートは、各ピジェット４０４を、ピジェットＩＤと、パターンページ４０２内の局所位置における大きさおよび配置とによって規定する（図４）。ピジェットＩＤは、ピジェット機能を決定する１６ビットの識別子である。ピジェットＩＤは、ピジェットの型（８ビット〜１５ビット）およびピジェット番号（０ビット〜７ビット）で構成される。ピジェットの型は、上記の機能を特定するものであり、ピジェット番号は、補助機能（subfunction）を特定してもよい。
【００２６】
上記のトリガーピジェットは、特定的（specific）であるか一般的（generic）であるかのいずれかであってよい。特定的なトリガーピジェットは、ピジェット番号を介して特定の接続デバイスと特定のサービスとを両方とも特定するピジェットＩＤを有する。ペンがそのような特定的なトリガーピジェット内の位置を記録するときはいつでも、ペンはデータの提示を遂行することができる。一般的なトリガーピジェットは、特定の接続デバイスおよび／または特定のサービスを特定しないピジェットＩＤを有する。データを提示するようトリガーをかけるには、一般的なトリガーピジェットは、ペンが、対応する位置を記録して有効なサービスと有効な接続デバイスとを両方とも特定するトリガーピジェットＩＤを形成することによって、デバイス選択ピジェットおよび／またはサービス選択ピジェットと組み合わせて使用されなければならない。
【００２７】
ある実施の形態において、例えばセグメントなどのページ階層における特定のページ単位群は、１以上の機能的属性（functional attribute）と関連付けられており、それによって、機能的属性は、その特定のページ単位群内のすべてのパターンページについて有効となっている。そのような属性の一つがストリーミング（STREAMING）属性であるが、これは、ページ単位群内にある記録された位置がリアルタイムで外部デバイスへ出力されるべきであることを、ペンに示すものである。ページ単位群の格納禁止（DO＿NOT＿STORE）属性は、このページ単位群内にある記録されたペンストロークをペンが格納しないようにする。例えばフォーム（FORMS）やノートパッド（NOTEPADS）といった別々の型にページ単位群を分類するために、他の機能的属性が用いられてもよい。概して、機能的属性は、ページ階層におけるどのページ単位群について設定されてもよく、包括的な論理とテンプレートによって提供される論理とを分けるという利点を提供する。このように、機能的属性は、論理の第２段階を提供する。この論理の第２段階は、テンプレートの論理から独立して設定されることができ、パターンページの全範囲についてペン制御システムにとって利用可能となる。
【００２８】
（電子ペン）
図２は、上記のペン２００の実施の形態を説明する図である。ペン２００は、ペンの形をしたケースまたは外殻２０２を有している。このケースまたは外殻２０２が窓または開口２０４を規定し、窓または開口２０４を通して画像が記録される。ケースは、カメラシステムと、電子システムと、電源とを含んでいる。
【００２９】
カメラシステム２０６は、少なくとも１つの照明用光源と、レンズ配列と、光学式画像読取部とを備える（図示しない）。光源は、好適には発光ダイオード（ＬＥＤ）またはレーザダイオードであるが、窓２０４を通して見える領域の一部を、赤外線によって照明する。見えた領域の画像は、レンズ配列によって画像読取部上に投影される。画像読取部は、二次元のＣＣＤまたはＣＭＯＳ検出器であってよい。このＣＣＤまたはＣＭＯＳ検出器は、一定の割合または変動する割合で、典型的にはおよそ７０〜１００Ｈｚで画像を取り込むようトリガーがかけられる。
【００３０】
センサデバイス用の電源は、バッテリ２０８であると有利であるが、バッテリ２０８は、代わりに、主電源（図示せず）で置き換えるか、あるいは補うことができる。
【００３１】
電子システムは、メモリブロック２１２に接続された制御ユニット２１０を備える。制御ユニット２１０は、電子ペンにおける種々の機能を担当しており、ＣＰＵ（「中央処理装置」）のような市販のマイクロプロセッサや、ＤＳＰ（「デジタルシグナルプロセッサ」）によって、または、ＦＰＧＡ（「フィールド・プログラマブル・ゲート・アレイ」）もしくはＡＳＩＣ（「特定用途向け集積回路」）、個別のアナログおよびデジタル部品、またはこれらの適当な組み合わせといった他のプログラム可能な論理装置によって有利に実装されることができる。メモリブロック２１２は、作業メモリ（例えばＲＡＭ）や、プログラムコードと固定記憶用のメモリ（不揮発性メモリ、例えばフラッシュメモリ）といった様々な型のメモリを備えるのが好ましい。関連するソフトウェアは、メモリブロック２１２に格納されており、電子ペンの作動のためのペン制御システムを提供するために制御ユニット２１０によって実行される。
【００３２】
ケース２０２は、ペン先２１４も保持しており、ユーザは、ペン先に蓄えられた顔料系のマーキングインクで表面に物理的に書き、あるいは描くことができる。ペン先２１４のマーキングインクは、電子ペンにおける光電子工学的な検出との干渉を避けるため、照射光に対して透明であると好適である。ペン先２１４には接触センサ２１６が作動可能に接続されて、いつペンが表面に当てられ（ペンダウン）、および／または、いつ表面から持ち上げられるか（ペンアップ）を検出するようになっており、また、随意に、加えられる力を求めることができるようになっている。カメラシステム２０６は、接触センサ２１６の出力に基づいて、ペンダウンとペンアップとの間の画像を取り込むよう制御される。これらの画像は、符号化された製品上でのペンの絶対位置と動作とを表す一続きの位置を生成するため、制御ユニット２１０によって処理される。
【００３３】
生成された位置は、内蔵された通信インターフェース２１８を介して、コンピュータ、移動電話、ＰＤＡ、ネットワークサーバ等といった近隣または遠隔の装置へ、ペンによって出力されることができる。この目的のため、通信インターフェース２１８は、有線もしくは無線の短距離通信（例えばＵＳＢ、ＲＳ２３２、無線伝送、赤外線伝送、超音波伝送、誘導結合など）のための構成要素、および／または、典型的には、コンピュータ、電話、もしくは衛星通信ネットワークを介した有線もしくは無線の遠隔通信のための構成要素を提供してよい。
【００３４】
ペンはまた、ユーザフィードバックのために選択的に起動されるＭＭＩ（マンマシンインターフェース）２２０を含んでもよい。ＭＭＩは、ディスプレイ、表示ランプ、バイブレータ、スピーカ等を含んでよい。
【００３５】
さらに、ペンは、ペンの起動および／または制御を可能にするための１以上のボタン２２２を含んでよい。
【００３６】
（オフラインシステム）
オフライン処理（オフラインモード）において、ペンは、オフラインデータを出力するよう操作されてよく、この出力は、自身のメモリブロックからペンストロークデータを選択的に取り出して、このデータを、外部デバイスへ提示されるファイルオブジェクトに組み込むことによって行われる。具体的には、オフラインデータを提示するときには、メモリブロック２１２（図２）に格納されたペンストロークデータが空間的に揃えられる。典型的には、ペンストロークデータは、ページアドレスで揃えられる。各ファイルオブジェクトは、１以上の特定のパターンページからのペンストロークデータを含んでよい。通常、オフラインデータは、ペンによってペンストロークが記録された時系列の順序を表してはおらず、むしろ、位置符号化パターンの特定の部分において記録されたすべてのペンストロークデータの集まりである。ファイルオブジェクト内において、ペンストロークデータは、パターンページごとに時系列に並べられてもよいし、そうでなくてもよい。
【００３７】
図３Ａは、電子ペンからオフラインデータを受信し得る情報管理システムの概観図である。
【００３８】
ある実施の形態において、ファイルオブジェクト３００は、図３Ａの経路３００Ａ〜３００Ｃによって示されるように、ペン２００から所与の局所または遠隔の受信デバイス３０２、３０４上の通信インターフェース３０１へとプッシュ（push）される。経路Ａは、通信ネットワーク３１０を介して、ペン２００と遠隔デバイス３０４との間に直接設定されている。経路３００Ｂは、ペン２００から、局所デバイス３０２を通り、ネットワーク３１０を介して、遠隔デバイス３０４へと設定されている。経路３００Ｃは、ペン２００と局所デバイス３０２との間に設定されている。別の実施の形態においては、ファイルオブジェクト３００は、経路３００Ａ〜３００Ｃのいずれかに沿って受信デバイス３０２、３０４によりペン２００からプル（pull）されるために提示される。さらに別の実施の形態においては、ペン２００は、ファイルオブジェクトを生成しない。その代わりに、受信デバイス３０２、３０４は、ペン２００に対してデータ要求を伝達することができる。要求データをペン２００から受信した後、デバイス３０２、３０４は、このデータまたはこのデータから引き出されたデータを含めてファイルオブジェクト３００を生成する。
【００３９】
局所または遠隔の受信デバイスは、フロー制御部３０６を含んでよく、フロー制御部３０６は、経路３００Ｃ１、３００Ｃ２で例示されているように、フィルオブジェクト３００またはそこから引き出されたデータを、受信デバイスに局所的に常駐するか遠隔デバイスに常駐するかのいずれかであるアプリケーションプログラム３０８へと中継する。そのようなフロー制御部の例は、米国第２００３／００４６２５６号、国際公開ＷＯ０３／０５６４２０号、および国際公開ＷＯ０３／１０５０６４号にて与えられている。ペンからアプリケーションプログラムへのデータ転送には、１以上のフロー制御部がかかわってよい。
【００４０】
フロー制御部３０６は、ファイルオブジェクト３００から中継データを抽出し、適切なデータを宛先アドレスへと中継するよう構成されてよく、この中継は、例えばＨＴＴＰ（ハイパーテキスト転送プロトコル）ポスト、ＳＭＴＰ（簡易メール転送プロトコル）、Ｘ．４００、ＭＭＳ（マルチメディアメッセージングサービス）、ＳＭＳ（ショートメッセージサービス）、データベース同期等を介して行われる。宛先アドレスは、中継データによって、直接的または間接的に与えられてよい。ある実施の形態において、フロー制御部３０６は、ファイルオブジェクトから明示的な宛先アドレスをこのように抽出してよい。別の実施の形態においては、フロー制御部３０６は、アドレス指示子を宛先アドレスと関連付ける参照テーブルを含んでよい。例えば、アドレス指示子は、ページアドレス、大域位置、ピジェットＩＤ、ペン常駐パラメータ値等であってよい。中継されるべき適切なデータは、ファイルオブジェクトによって与えられてもよい。フロー制御部３０６は、ファイルオブジェクト３００を中継する代わりに、ファイルオブジェクト３００が取り出し可能であるという通知を宛先アドレスへ送ってもよい。
【００４１】
アプリケーションプログラム３０８は、ファイルオブジェクト３００またはそこから引き出されたデータを受信したら、元となる物理的製品を規定するページ記述にアクセスしてよい。元となる物理的製品とは、すなわちファイルオブジェクト３００内の位置データが生じる元となっている製品である（図３Ａにおいて、参照記号Ｐで示されている）。ページ記述は、元となる製品Ｐのレイアウトを規定する。このレイアウトは、製品の物理的レイアウトおよび機能的レイアウトの両方を含んでよい。物理的レイアウトは、支援グラフィックスを含む。支援グラフィックスとは、人が理解できる情報であり、すなわちユーザに指示し、ユーザを制御し、および／またはユーザに知らせることを狙ったものである。機能的レイアウトは、関連するパターンページ（または関連する複数のパターンページ）上の、いわゆるユーザ領域の配置および大きさを規定する。ユーザ領域は、アプリケーションに特有の機能領域であり、特定のアプリケーションプログラム３０８に固有であってよい配置と、大きさと、機能とを持つものである。ページ記述においては、各ユーザ領域は、専用の処理命令の識別子を割り当てられてよい。この専用の処理命令の識別子は、アプリケーションプログラムにアクセスすることができる。あるいは、各処理命令は、ページ記述に含まれてもよい。また、物理的レイアウトは、物理的レイアウトの生成のための明示的な命令か、または物理的レイアウトを規定するコンピュータファイルのネットワーク格納アドレスの指示子かのいずれかとして、ページ記述に含まれてよい。ページ記述はまた、処理アプリケーションがペンストロークを支援グラフィックスに対して正確な位置関係に表示できるように、製品上のパターンの配列および配置を規定してよい。
【００４２】
ページ記述の構造、機能、および使用については、米国第２００２／００４０８１６号および国際公開ＷＯ０３／１０５０６４号にさらに記述されている。
【００４３】
図４はさらに、パターンページ４０２と、テンプレート４００と、ページ記述４１０と、物理的製品４２０との相互関係を説明している。物理的製品４２０は、１以上のパターンページ４０２（図４に１つのみ示す）内の位置を規定する位置符号（図示せず）を含む。これらの位置は、１以上の機能と関連付けられており、機能は、システムにおいて予め規定されているか（ピジェット４０４について）、あるいはアプリケーションに特有のものであるか（ユーザ領域４１４について）のいずれかである。テンプレート４００によって与えられるように、ピジェット４０４は、パターンページ４０２内において予め規定された配置および大きさを有する。しかし、位置符号化パターンの一部を「切り抜いて（cut out）」、どのような様式であれ製品４２０上で組み直すことによって、ピジェット４０４が物理的製品４２０上でどのような配置を有するようにしてもよい。ページ記述４１０は、パターンページ４０２上の付加的なユーザ領域４１４の配置と、大きさと、機能とを規定する。このように、その物理的レイアウトは別として、製品４２０は、テンプレート４００によって与えられる１つの機能的レイアウト部４００’と、ページ記述４１０によって与えられる１つの機能的レイアウト部４１０’とを有する。
【００４４】
ファイルオブジェクト３００（図３Ａ）内のペンストロークデータは、自立的（self-supporting）あるいは自律的（autonomous）である。すなわち、受信アプリケーションプログラム３０８は、データを作成したペン２００と通信する必要なしに、データにアクセスし、データを処理することができる。
【００４５】
ファイルオブジェクト３００は、ペン２００により、さまざまな細かさに区別立てされたレベル（levels of refinement）で生成されてよい。例えば、ファイルオブジェクト３００は、以下のいずれか、またはそれらの組み合わせを含んでよい。
（１）生のペンストロークデータ。すなわち、ペンストロークを構成する時間的にまとまった大域位置または論理位置の並び。
（２）ペンストロークの絵。すなわち、記録された位置を直接表す画像。
（３）細かく区別立てされたペンストロークデータ。典型的には、ペンストロークによって接触されたピジェットの識別、および／または、そのようなピジェットと関連付けられた機能の結果といったテンプレートに関する情報。
【００４６】
ファイルオブジェクト３００は、いずれの細かさに区別立てされたレベルにおいても、ペンに関する付加的なデータ、またはストロークに関する付加的なデータを含んでよい。この付加的なデータは、ペンストローク内の位置のタイムスタンプおよびピジェットのタイムスタンプや、ペンストローク内の位置の力値、ペン常駐パラメータ（または複数のペン常駐パラメータ）といったものである。タイムスタンプによって、アプリケーションプログラムまたはフロー制御部は、ストロークおよび／またはピジェットを互いの記録時刻に基づいて組み合わせることができるであろう。力値によって、アプリケーションプログラムは、ストロークの画像を力に応じた線の太さで描画できるであろう。
【００４７】
ペン常駐パラメータは、ペン自体の特徴、またはペンの所有者／ユーザの特徴を特定するために、メモリブロック２１２（図２）に予め格納されている。これらのパラメータは、受信アプリケーションプログラム３０８（図３Ａ）によって用いられてよく、またそうして、ファイルオブジェクト３００に少なくとも選択的に含まれてよい。ペン常駐パラメータを含めることについては、ファイルオブジェクト内のストロークのページアドレス（または複数のページアドレス）によって、および／または、上記の文脈情報もしくは内容情報によって決定されてよい。ペン常駐パラメータは、ペンの固有識別子、言語識別子、名前、所在地住所、電子メールアドレス、電話番号、無線呼び出し器番号、ファックス番号、クレジットカード番号等を含んでよい。
【００４８】
また、ファイルオブジェクト３００は、ペンによって記録されたペンストロークにもペン自体にも関連しない独立データを含んでもよい。独立データは、あらゆる種類の非位置データを含んでよく、非位置データは、ペンのセンサ（例えばカメラシステム２０６）によって得られてもよいし、通信インターフェース２１８（図２）を介してペンによって受信されてもよい。そのような独立データは、１以上の画像の形式（すなわち静止画または動画）であってもよいし、そのような画像から抽出されたデータの形式（例えば、バーコードなどの機械可読符号から復号されたデータ、または光学式文字認識（ＯＣＲ）処理から生じる機械で符号化されたテキスト）であってもよい。さらに別の例では、独立データは、ペンの音センサによって記録された音データであってもよいし、通信インターフェースを介して受信した音データであってもよい。
【００４９】
ファイルオブジェクト３００は、文字符号化されているか非文字符号化されているか（例えばバイナリ）のいずれかであってよく、またあらゆる好適なフォーマットであってよい。ファイルフォーマットは、独自のものでも標準化されたものでもよく、例えばＸＭＬ（拡張可能なマークアップ言語）、ＨＴＭＬ（ハイパーテキストマークアップ言語）、ＸＦｏｒｍｓ、ＰＤＦ（ポータブルドキュメントフォーマット）等でもよい。
【００５０】
（オンラインシステム）
オンライン処理（オンラインモード）において、ペンは、受信デバイスへデータをストリーミングするよう操作される。このデータは、以下においてオンラインデータと表示される。オンラインデータは、対話型サービスを実装するアプリケーションプログラムによって受信されてよい。そのようなオンラインデータの対話的利用のためのシステムを図３Ｂに示す。
【００５１】
図３Ｂにおいて、ペン２００は、短距離通信を介してオンラインデータを局所受信デバイス３０２’上の通信インターフェース３０１’へ送り込む。オンラインデータは、前述した形式のフロー制御部３０６’を随意に介して、専用のアプリケーションプログラム３０８’へ転送される。専用のアプリケーションプログラム３０８’は、典型的には、受信デバイスにおいて処理ユニット（ＣＰＵ）により局所的に実行されるが、代わりに、通信ネットワーク３１０’を介してアクセスされてよい遠隔デバイス３０４’で処理ユニット（ＣＰＵ）により実行されてもよい。アプリケーションプログラム３０８’は、前述したページ記述に基づいてデータを処理してフィードバックデータを生成し、フィードバックデータは、ディスプレイ画面またはスピーカといった局所フィードバックデバイス３１２’を介して、ほぼリアルタイムでユーザへ提示される（経路３００Ａ’から３００Ｃ’）。こうして、アプリケーションプログラム３０８’によって、ユーザは、ほぼリアルタイムにサービスにアクセスすることができる。ユーザは、手書きデータをサービスに入力してもよいし、および／または、符号化された製品Ｐ上でペン２００を操作することにより、対話形式でサービスを制御してもよい。また、サービスは、手書きデータを、ペンから受信した通りに連続的に画面に表示して、符号化された製品上でのペンの動作をほぼリアルタイムで再生してもよい。
【００５２】
以下にさらに詳しく説明される好ましい実施の形態において、ペンは、デフォルトではオフラインモードで作動し、ストリーミング属性と関連付けられたセグメント（オンラインセグメント）から位置を記録したときのみオンラインモードを起動する。ペンは、ストリーミング属性と関連付けられていないセグメントから位置を記録したときはいつでも、オンラインモードを停止する。
【００５３】
別の実施の形態では、ペンは、オフラインデータ（ファイルオブジェクト）を提示するよう操作されたときに、自動的にオンラインモードを起動する。この実施の形態により、ユーザは、オフラインで手書きデータを生成することができ、そして、このデータが外部デバイスのアプリケーションプログラムによって受信されたと見なされたときに、その同じ手書きデータに対して対話形式で操作することができる。例えば、ユーザは、元となる製品上でペンを操作することにより、ズームまたはスクロールなどによって手書きデータの表示を制御してもよい。別の例では、アプリケーションプログラムは、手書きデータに対してＨＷＲ処理を実行して、ユーザが、元となる製品上でペンを操作することによって対話形式で手書き入力に訂正、注釈、または編集を施せるようにしてもよい。アプリケーションプログラムは、最後に受信されたオフラインデータに対して自動的にオンラインデータを操作してもよい。あるいは、オンラインデータは、外部デバイスにアクセスできるメモリから関連するオフラインデータを取り出すためにアプリケーションプログラムによって用いられてもよく、アプリケーションプログラムはそこで、このオフラインデータに対してオンラインデータを操作する。例えば、アプリケーションプログラムは、オンラインデータのページアドレスを、同じページアドレスを持つオフラインデータを取り出すために用いてもよい。
【００５４】
オンラインモードにおけるペンの作動は、オフラインモードと同様、部分的にピジェットによって制御されてよい。しかしながら、好ましい実施の形態においては、オンラインセグメントのテンプレートには、描画領域以外にピジェットがない。あるいは、ペンは、オンラインモードにおいてはそのようなピジェットを無視するよう設計されてもよい。ペンＭＭＩフィードバックを実装するため、ペンは、自身のＭＭＩ２２０（図２）を、フィードバック命令に基づいて選択的に起動するよう設計されてもよい。このフィードバック命令は、アプリケーションプログラムから通信インターフェース２１８において受信される。それにより、オンラインモードにおけるすべてのユーザフィードバックが、アプリケーションプログラムによって制御される。
【００５５】
ペンは、現在ペンに接続されている受信デバイスへオンラインデータを送り込んでよい。あるいは、ペンは、デフォルトのオンラインデータ用受信デバイスか、またはオンラインモードにおいてペンが最後に接続されていた受信デバイスへの接続を開始してもよい。別の代替手法では、受信デバイスは、ペンが専用ピジェットを検出することによって与えられてもよいし、ユーザがペンを受信デバイスに物理的に接続することによって与えられてもよい。また、受信デバイスの方から接続が開始されることも考えられる。
【００５６】
（ペン制御システム）
ペン２００は、制御ユニット２１０（図２）においてソフトウェアが実行されることにより作動する。次に、いくつかの主なソフトウェア構成要素を例示する図５を参照して、全体的なソフトウェアアーキテクチャを説明する。
【００５７】
ペンシステムソフトウェアは、モジュールに基づいている。モジュールは、クリーン（clean）なインターフェースを持つ、ソフトウェア内の独立した存在である。モジュールは、少なくとも１つの処理を含むことにより能動的であるか、または、処理を含まないことにより受動的であるかのいずれかである。モジュールは、機能呼び出しを実行する機能インターフェース、または、メッセージを受信するメッセージインターフェースを有してよい。能動的モジュールおよび受動的モジュールは、基本的に、モジュールの親がそのすべての子の始動（starting）と停止（shutting down）を担当するツリーとして構成される。
【００５８】
ペンシステムソフトウェアは、モジュール間の依存性を減らすために、イベントフレームワークも実装する。各モジュールは、自らが信号で知らせることのできる予め規定された一組のイベントを提示してよい。特定のイベントの通知を受け取るためには、モジュールは、このイベントについてイベントレジスタに登録されていなければならない。また、イベントレジスタは、通知がメッセージの掲示によって行われることになっているのか、あるいはコールバック機能として行われることになっているのかを示してもよい。
【００５９】
ソフトウェアモジュールの組み合わせは、いわゆる座標パイプライン５０２を実装しており、座標パイプライン５０２は、ストロークの格納のための（オフラインモード）、または位置のストリーミングのための（オンラインモード）イベントのフローである。画像処理モジュール５０４からの大域位置のストリームは、変換部モジュール５０６へ伝達され、変換部モジュール５０６は、大域位置を論理位置に変換する。ストロークがピジェットを通過するのを変換部モジュール５０６が検出すると、対応するピジェットイベントにトリガーがかけられる。また、大域位置のセグメントが機能的属性と関連付けられている場合、変換部モジュール５０６は、特定の属性イベントも生成する。ピジェットおよび属性イベントによって、他のソフトウェアモジュールにおいて適切な動作が行われてよく、これは、これらのモジュールが、ピジェットおよび属性イベントのそれぞれの妥当性を決定するイベントリスナを含むことにより行われる。格納禁止属性イベントが生成されない限り、論理位置は、座標管理部モジュール５０８によって受信され、座標管理部モジュール５０８は、論理位置をアドレス指定されたペンストロークへとまとめるが、このペンストロークは簡潔な表現に符号化されており、メモリブロック２１２（図２）に格納される。
【００６０】
ストリーミング属性イベントが生成されると、論理位置は、ストリーム部モジュール５０８’によっても受信され、ストリーム部モジュール５０８’は、オンラインデータを生成し、一方で、提示モジュール５１６は、受信デバイスへのオンライン接続を確立させられる。
【００６１】
このように、特にこの実施の形態においては、ペンは、専らオフラインモードで作動してもよいし（デフォルトで）、専らオンラインモードで作動してもよいし（描かれたパターンがストリーミング属性および格納禁止属性の両方と関連付けられている場合）、あるいはオフラインおよびオンラインの両モードで作動してもよい（描かれたパターンが、ストリーミング属性とは関連付けられているが、格納禁止属性とは関連付けられていない場合）。
【００６２】
１．監督部
図５に示すように、ペンシステムソフトウェアは、他のすべてのモジュールを直接的または間接的に開始する監督部モジュール５０９を含む。監督部モジュール５０９は、イベントレジスタへのインターフェースを含んでいるので、モジュールは、受信したいイベントに自身を登録することができる。また、監督部モジュール５０９は、他のソフトウェアモジュールのリスナー（listener）にとって利用可能な制御イベントも生成する。
【００６３】
２．サーバ
ペンにおけるイベントの調整役として、サーバモジュール５１０が備えられている。サーバモジュール５１０は、システムの状態および入ってくるイベントに基づいて、ペンが何をすべきかを決定する。
【００６４】
３．画像処理部
画像処理モジュール５０４について、ここではさらなる記述は行わない。画像処理モジュール５０４は、例えば、本出願人が先に公表した米国第２００３／００５３６９９号、米国第２００３／０１８９６６４号、米国第２００３／０１１８２３３号、米国第２００２／００４４１３８号、米国第６，６６７，６９５号、米国第６，７３２，９２７号、米国第６，９２９，１８３号、米国第２００３／０１２８１９４号、およびこれらにおける参照文献に従って実装することができる。
【００６５】
４．位置データベース
ペンは、ペンのメモリブロック２１２（図２）に常駐して通信インターフェース２１８（図２）を介して編集または更新されることのできる位置データベース５１１を含む。位置データベース５１１は、変換部モジュール５０６によって用いられ、セグメントデータベース５１１Ａを含んでいる。このセグメントデータベース５１１Ａは、各セグメントをテンプレートインデックスによって与えられるテンプレートと関連付け、また随意に１以上の機能的属性とも関連付ける。セグメントデータベース５１１Ａは、好適には、高速なアクセスのためにＲＡＭメモリにキャッシュされる。また、位置データベース５１１は、テンプレートインデックスをテンプレート定義へのポインタと関連付けるテンプレートデータベース５１１Ｂも含んでいる。テンプレート定義は、プロパティとしてペンの不揮発性メモリに格納されてよい。そのようなテンプレート定義は、ページＸ寸法（１６ビット）、ページＹ寸法（１６ビット）、ページ数（１６ビット）、ピジェット数（１６ビット）、ピジェットリスト（ピジェット数に応じた長さ）を含んでよい。ピジェットリストは、いくつかのピジェットで構成される。各ピジェットは、ピジェットＩＤ（１６ビットで、上位８ビットは型、下位８ビットは番号）、左上Ｘ座標（１６ビット）、左上Ｙ座標（１６ビット）、幅（１６ビット）、高さ（１６ビット）によって規定されてよい。
【００６６】
５．変換部
上記の変換部モジュール５０６は、大域位置を論理位置に変換するために、既知のパターンフォーマッティングデータに基づいたアルゴリズムを用いる。パターンフォーマッティングデータは、符号化パターンのパターンページへの階層的な分割（図１）を規定する。パターンフォーマッティングデータの一部は、予めペンに格納されてよく、他の部分は、ペンの位置データベース５１１から動的に引き出されてもよい。例えば、すべてのセグメントがある所定の大きさを有する場合、大域位置は、この大域位置の現在のセグメントを特定するために処理されてよい。現在のセグメントが分かったら、位置データベース５１１にあるそのセグメントのテンプレート定義からそのセグメントの分割についてのデータが引き出されてよく、そこで、現在のシェルフ、ブック、ページ、および局所位置、すなわち完全な論理位置を特定するために、大域位置がさらに処理されてよい。ペンが同一のパターンページ上でしばらくの間、普通に操作される場合は、現在のパターンページの境界（boundary）を大域位置にてキャッシュし、新しい大域位置をこの境界と照合することによって、大幅な高速化が達成される可能性がある。新しい大域位置が境界内にある限り、ページアドレスを再計算する必要がなくなる。
【００６７】
また、変換部モジュール５０６は、記録された位置が現在のパターンページ上のピジェット内にあるか否かを、関連するテンプレート定義に対して局所位置をマッピングすることによって検出する。このテンプレート定義は、位置データベース５１１によって与えられる。ある実施の形態においては、各ストロークにつき１個のピジェットのみが特定されることができる。つまり、いくつかのピジェットが特定された場合、最後のピジェットのみが考慮される。そして、他のソフトウェアモジュールへの通知のため、対応するピジェットイベントが生成される。ピジェットが特定されない場合は、位置は描画領域内にあるものと見なされる。
【００６８】
変換部モジュール５０６は、現在のセグメントが機能的属性と関連付けられているか否かも検出する。そして、そのような機能的属性それぞれについて他のソフトウェアモジュールへ示すために、対応する属性イベントが生成されて通知される。
【００６９】
このように、変換部モジュール５０６は、各大域位置について、少なくともページアドレスおよび局所位置を提供し、また、属性指示子も提供してよい。変換部モジュール５０６はまた、時間的にまとまった位置の並び、すなわちストロークのそれぞれについて、ピジェットＩＤを提供してもよい。各論理位置は、制御ユニット２１０（図２）の時間回路によって与えられるタイムスタンプ、および接触センサ２１６によって与えられる力値と関連付けられている。同様に、各ピジェットＩＤは、タイムスタンプと関連付けられている。さらに、変換部モジュール５０６は、他のモジュールがテンプレート、機能的属性、およびピジェットについて位置データベース５１１の情報を調べられるようにするインターフェースを有してよい。
【００７０】
６．座標管理部
座標管理部モジュール５０８は、変換部モジュール５０６から論理位置を受信する。座標管理部モジュール５０８は、格納の前に、論理位置を時間的にまとまった並び、すなわちストロークにグループ分けする。そして、座標管理部モジュール５０８は、各ストロークを圧縮のために前処理してよく、その結果を不揮発性メモリに格納してよい。そのような圧縮および格納の例は、米国第２００３／０１２３７４５号および米国第２００３／０１２２８０２号にて与えられている。
【００７１】
また、座標管理部モジュール５０８は、他のモジュールが、例えばページアドレスに基づいて、格納されたストロークを捜してオフライン移送フォーマットでストロークを取り出すためのインターフェースを含む。ある実施の形態においては、オフライン移送フォーマットは、バイナリであって、以下のデータ、すなわち、各ストロークの開始時刻、各ストロークにおける局所位置、および各位置の力値を含む。
【００７２】
また随意に、オフライン移送フォーマットは、位置記録中のペンの三次元の方位（orientation）を示すため、取り込まれた画像から引き出される方位データを含んでもよい。
【００７３】
７．ストリーム部
ストリーム部モジュール５０８’は、変換部モジュール５０６から論理位置を受信するために起動されてよく、また３つの内部状態を有する。３つの内部状態とは、切断、接続確立中、および接続である。ストリーム部モジュール５０８’は、それぞれの状態に、提示モジュール５１６（下記参照）によって生成される接続確立中イベント、接続イベント、および接続失敗イベントに基づいて入力する。
【００７４】
切断状態においては、ペンシステムソフトウェアは、オフラインモードにある。接続確立中状態においては、ストリーム部モジュール５０８’は、変換部モジュール５０６から出力されたすべての論理位置を（力値およびタイムスタンプとともに）、メモリブロック２１２（図２）に含まれるバッファーメモリ（典型的にはＲＡＭ）に連続的に格納する。接続確立中状態の継続時間は、典型的にはおよそ１秒〜１０秒である。接続状態においては、ストリーム部モジュール５０８’は、所定のバイナリオンライン移送フォーマットに従って、オンラインデータを生成する。ある実施の形態において、このフォーマットは、以下の３つの異なるメッセージを含む。
【００７５】
ニューセッション（タイムスタンプ、ペン識別子）
ニューポジション（タイムスタンプ、ページアドレス、位置、力値）
ペンアップ（タイムスタンプ）
【００７６】
ストリーム部モジュール５０８’は、接続イベントを検出するとニューセッションメッセージをを生成し、オンライン接続が確立された時刻を表すタイムスタンプを含める。そして、ストリーム部モジュール５０８’は、ニューポジションメッセージを生成し、各ニューポジションメッセージに１つの論理位置と力値と時間値とを含める。時間値は、元となる画像がペンカメラシステムによって取り込まれた時刻を表す。各ニューポジションメッセージは、前述の方位データも含んでよい。接触センサ２１６（図２）によって示されるのであるが、ペンが表記面から離れるように動かされたときはいつでも、ストリーム部モジュール５０８’は、ペンアップメッセージを生成する。
【００７７】
代替となる実施の形態においては、ページアドレスは、各ペンストロークにつき１回だけ出力される。例えば前述の米国第２００３／０１２３７４５号および米国第２００３／０１２２８０２号に記載されているように、転送されるデータの量をさらに減らすために、リサンプリング基準に従って局所位置が各ペンストロークから除外されてもよいし、および／または、各局所位置が、同じストローク内の先行する局所位置に対する差値として与えられてもよい。
【００７８】
ストリーム部モジュール５０８’は、常に、画像処理モジュール５０４によって生成された順序で論理位置を処理する。従って、ストリーム部モジュール５０８’は、まず、接続確立中状態の間にバッファーメモリに格納された位置を取り出して処理し、それから、続いて生成された位置を処理するが、これは、必要であればバッファーメモリ内の中間格納部を介して行ってもよい。
【００７９】
ペン制御システムが、作動を停止するかまたはオフラインモードへ切り替わるよう命令された場合、ストリーム部モジュール５０８’は、バッファーメモリ内のすべてのデータを処理するまで接続状態にとどまり、それによって、提示モジュール５１６に、このデータをオンライン接続へ出力させることになる。接続確立中状態においてストリーム部モジュール５０８’によって接続失敗イベントが受信された場合は、ストリーム部モジュールは、バッファーメモリからすべてのデータを削除するように作動する。
【００８０】
オンライン移送フォーマットによって、受信デバイスは、接続確立中状態および接続状態の間にそれぞれ生成されたデータを区別することができる。接続確立中状態の間に記録された位置のタイムスタンプがニューセッションメッセージのタイムスタンプに先行することになるのに対して、接続状態の間に記録された位置のタイムスタンプは、ニューセッションメッセージのタイムスタンプの後に続くことになる。代わりに、または加えて、各ニューポジションメッセージには、そのデータがバッファリングされたものであるか否かを示すために、ビット値が含まれてよい。
【００８１】
８．パラメータ格納部
ペンシステムは、パラメータ格納部モジュール５１２も含む。ペンの作動停止後に状態を保持する必要を有する他のすべてのモジュールは、自身の状態パラメータを格納するために、このモジュールを呼び出す。また、パラメータ格納部モジュール５１２は、テンプレート定義だけでなく、固有のペンプロパティ（ペン識別子等）または較正パラメータといった製造時に設定されたペン常駐パラメータも扱う。各パラメータは、名称、大きさ、およびデータとともに不揮発性メモリに格納される。モジュール５１２は、パラメータの書き込み、取り出し、および削除のためにインターフェース５１２’を提供する。
【００８２】
９．ファイルアセンブリ
ペンの外部のデータハンドラに提示されるべきファイルオブジェクト３００（図３Ａ）を生成するために、ファイルアセンブリモジュール５１４が実装されている。モジュール５１４は、トリガーピジェットイベントのような専用のイベントをリスニングするように実装される。モジュール５１４は、専用イベントを検出すると、座標管理部モジュール５０８から、トリガーピジェットと関連付けられたストロークをバイナリオフライン移送フォーマットで取り出す。
【００８３】
明らかに、ファイルアセンブリモジュール５１４の機能は、どの程度細かく区別立てするかのレベルに依存することになる。レベル１の細かさの区別立てのためには、上記のステップで十分である。
【００８４】
レベル２の細かさの区別立てのためには、ペンシステムは、所与のストロークの組をメモリブロック２１２（図２）内の画像バッファーへ転送するストローク変換部モジュール（図示せず）を含んでよく、また、画像バッファーを、例えばビットマップフォーマットまたはベクトルグラフィックスフォーマットといった所与の形式の画像に符号化する画像エンコーダを含んでよい。
【００８５】
レベル３の細かさの区別立てのためには、モジュール５１４は、トリガーピジェットと関連付けられた他のピジェットによって与えられたデータ項目を、他のモジュール（開示せず）から取り出してよい。そのようなデータ項目は、ペンストロークの手書き認識（Handwriting Recognition、ＨＷＲ）による機械で符号化された文字や、ペンメモリから取り出された機械で符号化された文字、ペンメモリから取り出された通信アドレス等を含んでよい。
【００８６】
また、モジュール５１４は、バーコードデータ、ＯＣＲテキスト、音、画像等といったファイルオブジェクトに含まれるべき独立データを取り出してもよい。
【００８７】
最後に、同モジュールは、ファイルオブジェクト３００（図３Ａ）を生成し、ファイルオブジェクト３００は、インターフェース５１４’を介して他のモジュールにとって利用可能となる。
【００８８】
そのようなファイルオブジェクトは、例えば以下の構造を有してよい。
【００８９】
・ファイルヘッダ（トリガーピジェットＩＤ、ページアドレス、ページ数、追加データ項目数）
・・ページデータヘッダ（ページアドレス、ピジェット数）
・・・ページデータ（オフライン移送フォーマットのストロークデータ）
・・・ピジェットデータ（ピジェットＩＤ（または複数のピジェットＩＤ）、タイムスタンプ（または複数のタイムスタンプ））
・・追加データ（ペン常駐パラメータ値（または複数のペン常駐パラメータ値）、ピジェットから生じるデータ項目、独立データ）
【００９０】
ファイルオブジェクトによって、アプリケーションプログラム３０８（図３Ａ）と、随意にフロー制御部３０６とは、ファイルオブジェクトのすべてまたは選択された部分を特定し、抽出することができる。
【００９１】
ファイルオブジェクトに含まれるべきストロークの選択は、トリガーピジェットＩＤに含まれる内容情報から決定されてよい。そのような内容情報は、例えば、現在のパターンページまたはブックを示してよい。すなわち、選択されたストロークは、トリガーピジェットと同じパターンページの組に属していなければならない。また、ストロークを選択する代替手法があることは明らかである。例えば、専用のペンストロークによって規定された境界領域（bounding area）内から、ストロークが選択されてもよい（すなわち、ペンは、何を提示すべきかをペンに示すために製品上を動かされる）。別の例では、パターンページと関連付けられた分類属性に基づいて、ストロークが選択されてよい。例えば、前述のフォーム属性と関連付けられたすべてのパターンページから、ストロークが選択されてもよい。さらに別の例では、ペンメモリ内のすべてのストロークが、好適には各パターンページまたは各ブックについて作成される１つのファイルオブジェクトとともに、提示のために自動的に選択される。
【００９２】
このように選択されたストロークはすべて、ファイルオブジェクトに組み込まれてよい。あるいは、ピジェットとして表されていないストロークのみが、ファイルオブジェクトに組み込まれる。
【００９３】
１０．提示部
集めたデータをペンの外部のデータハンドラへ提供するために、提示モジュール５１６が備えられている。本モジュールは、トリガーピジェットイベントまたはストリーミング属性イベントのような専用のイベントをリスニングするよう実装される。
【００９４】
本モジュールは、トリガーピジェットイベントを検出すると、ファイルアセンブリモジュール５１４からファイルオブジェクトを取り出して、ファイルオブジェクトを提示する。この提示は、例えばトリガーピジェットまたはデバイス選択ピジェットによって与えられる特定のデバイス／ポートへファイルをプッシュすること、または、外部のデータハンドラがペンからファイルオブジェクトをプルできるようにすることのいずれかによって行われる。例えば、ファイルオブジェクトは、ペンメモリ内のファイルシステムに格納されてよい。このファイルシステムは、外部のデータハンドラへ提示されている。例えば、ファイルシステムは、ＵＳＢ（ユニバーサルシリアルバス）、ブルートゥース（登録商標）、ＦＴＰ（ファイル転送プロトコル）、ＨＴＴＰ（ハイパーテキスト転送プロトコル）などの好適なプロトコルを介して閲覧するために提示されてよい。
【００９５】
提示モジュール５１６は、ストリーミング属性イベントを検出すると、特定の受信デバイスへのオンライン接続を開始し、接続確立中イベントを生成する。接続が確立されると、本モジュールは、接続イベントを生成して、ストリーム部モジュール５０８’によって生成されたメッセージを連続的に出力し始める。タイムアウト期間内に受信デバイスへ接続することができなければ、本モジュールは、接続失敗イベントを生成する。
【００９６】
提示モジュール５１６は、すべての必要なプロトコルスタックを含み、また、伝送手段からは独立するよう設計されているが、これは、リンクを設定する担当を別のモジュールに割り当て、デバイス抽象化によって働くことにより実現される。リンクを設定する担当は、リンク選択モジュール（図示せず）に割り当てられる。リンク選択モジュールは、通信リンクの選択および設定を扱う。
【００９７】
以上、いくつかの実施の形態を参照して、本発明についておおむね説明した。しかしながら、当業者には容易に理解されるように、上に開示されたもの以外の実施の形態が本発明の範囲と精神の中において等しく可能であり、また本発明は、添付の特許請求の範囲によってのみ規定され、限定される。
【００９８】
例えば、イベントは、ユーザがペンのボタンを押すことによって、あるいはペンのマイクによって記録されるべき言葉の命令を発することによって、ペン制御システムにおいて生成されてよい。このように、トリガーピジェットイベントまたはいずれかの機能的属性イベントが、このようなイベントと置き換えられたり補われたりしてよい。
【００９９】
上記の実施の形態では、抽象パターンの分割は、ペンの位置データベースに基づいて論理位置が計算されるという点で、動的（dynamic）である。代替となる実施の形態においては、抽象パターンの分割は、パターンにおいて符号化されることにより、静的（static）であってよい。例えば、米国第６，３３０，９７６号は、ある符号化パターンを開示しており、この符号化パターンにおいては、符号化セルが製品表面にタイル状に並べられ、各セルが局所位置とページ識別子との両方を符号化する。そのようなパターンは、機能的属性を、パターンにおいて符号化された１以上のフラグビットとして実装してよい。従って、ペンは、パターンを復号することによって自身の論理位置を直接検出することができ、また、随意に機能的属性を検出することもできる。
【０１００】
また、加速時計、ローラボール、三角測量デバイス等といった相対位置決めのための補完的な機器をペンが含んでよいことにも留意されよう。そのようにして、ペンは、位置符号から導かれる絶対位置を、補完的な機器によって与えられる相対位置で補ってよい。この場合、位置符号は、製品上のわずかな絶対位置を符号化するだけで十分である。
【０１０１】
さらに、ペンシステムソフトウェアは、別々のソフトウェアモジュール間での機能の分配に基づいてもよい。例えば、いくつかのモジュールの機能が単一のモジュールによって実装されてもよく、これは例えば、サーバモジュールが提示モジュールの機能も実装することにより実現される。実際、ペンシステムソフトウェアは、別々のモジュールで構成される必要はない。
【０１０２】
同様に、イベントのシグナリング（signaling）は、省略または削減されてもよい。そのような実施の形態の１つにおいて、属性イベントは省略される。その代わり、変換部モジュールが、すべての論理位置を座標管理部モジュールとストリーム部モジュールとの両方に送り込む。変換部モジュールは、格納禁止属性も検出したときはいつでも、関連付けられた論理位置をストリーム部モジュールのみに送り込む。ストリーム部モジュールは、受信された論理位置がストリーミング属性と関連付けられているか否かを確認するため、絶えず変換部インターフェースにアクセスする。そのような属性を検出すると、ストリーム部モジュールは、提示モジュールにオンライン接続を開始させる。
【０１０３】
さらにまた、ペンは、ここに記載された以外の方法でオフラインデータを出力してもよい。例えば、ペンは、受信デバイスとの間でエンドツーエンド（end-to-end）通信を確立し、受信デバイスへのＨＴＴＰリクエストの一部としてオフラインデータを出力してよい。そのような通信のためのプロトコルは、本出願人の特許公報である米国第２００３／００５５８６５号にさらに記載されており、当該公報は、参照によりここに組み込まれているものとする。
【図面の簡単な説明】
【０１０４】
【図１】図１は、抽象的な位置符号化パターンの、アドレス指定可能なページ単位のツリー構造への論理的分割を説明する図である。
【図２】図２は、本発明の原理を実現する電子ペンの断面図である。
【図３】図３Ａおよび図３Ｂは、それぞれオフラインデータおよびオンラインデータを生成して処理するための情報管理システムとその通信経路を説明する図である。
【図４】図４は、テンプレート定義とページ記述の最終的な位置符号化製品への関係を説明する図である。
【図５】図５は、図２のペンの作動を制御するためのソフトウェアモジュールのシステムの実施の形態を説明する図である。
【図６】図６は、本発明の実施の形態の電子ペンにおいて位置データを生成するための処理の概観図である。
【図１】
2008519325.tif 000003
【図２】
2008519325.tif 000004
【図３】
2008519325.tif 000005
【図４】
2008519325.tif 000006
【図５】
2008519325.tif 000007
【図６】
2008519325.tif 000008
【国際調査報告】
2008519325.tif 000009
2008519325.tif 000010
2008519325.tif 000011
2008519325.tif 000012
2008519325.tif 000013
2008519325.tif 000014
2008519325.tif 000015
2008519325.tif 000016
2008519325.tif 000017
2008519325.tif 000018
2008519325.tif 000019
2008519325.tif 000020
2008519325.tif 000021
2008519325.tif 000022
2008519325.tif 000023
2008519325.tif 000024
2008519325.tif 000025
2008519325.tif 000026
2008519325.tif 000027
2008519325.tif 000028