(57)【要約】【課題】  表示済みの表示データとの重なりを避けつつ、新たな表示データを動的に指定して表示することができるようにする。【解決手段】  ユーザが、文字や図形等の検索条件の入力を、ストローク（手書き）入力によって行う際に、手書き入力された検索条件に基づく表示データを描画するための入力データ描画領域９０１を確保するように、手書き入力された入力データ描画領域９０１の位置の周辺に、表示済みの表示データの描画領域である表示データ描画領域９０４、９０５を移動させるようにしたので、既に表示されている表示データと重ならないようにしつつ、表示領域の任意の位置に検索条件を表示することが可能になる。【選択図】  図９
2007079623.tif 000002
【特許請求の範囲】
【請求項１】
表示装置の表示画面において、手書き入力される領域を予測して、既に手書き入力された描画領域に追加して新たに描画領域を配置する予測手段と、
前記予測手段により予測された描画領域と、既に表示装置に表示されている表示データの描画領域とが重なっているか否かを判定する判定手段と、
前記判定手段によって、前記予測手段により予測された描画領域と既に表示装置に表示されている表示データの描画領域とが重なっていると判定された場合、前記既に表示画面に表示されている描画領域を移動させる移動手段とを有することを特徴とする情報処理装置。
【請求項２】
前記予測手段は、既に手書き入力された複数のオブジェクトの外接矩形に基づいて、前記描画領域を予測することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記予測手段は、前記既に手書き入力された複数のオブジェクトの外接矩形の重心を通る直線に前記新たに配置する描画領域の重心が位置するように、前記新たに配置する描画領域を配置することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記予測手段は、前記既に手書き入力された複数のオブジェクトの外接矩形に基づいて、新たに入力されるオブジェクトが配置される矩形枠の大きさおよび位置を予測し、この予測された矩形枠が既に手書き入力された描画領域に含まれない場合に、前記新たに描画領域を配置することを特徴とする請求項２に記載の情報処理装置。
【請求項５】
表示装置の表示画面において、手書き入力される領域を予測して、既に手書き入力された描画領域に追加して新たに描画領域を配置する予測ステップと、
前記予測ステップにおいて予測された描画領域と、既に表示装置に表示されている表示データの描画領域とが重なっているか否かを判定する判定ステップと、
前記判定ステップにおいて、前記予測ステップにおいて予測された描画領域と既に表示装置に表示されている表示データの描画領域とが重なっていると判定された場合、前記既に表示画面に表示されている描画領域を移動させる移動ステップとを有することを特徴とする情報処理装置の表示処理方法。
【請求項６】
前記予測ステップにおいて、既に手書き入力された複数のオブジェクトの外接矩形に基づいて、前記描画領域を予測することを特徴とする請求項５に記載の情報処理装置の表示処理方法。
【請求項７】
前記予測ステップにおいて、前記既に手書き入力された複数のオブジェクトの外接矩形の重心を通る直線に前記新たに配置する描画領域の重心が位置するように、前記新たに配置する描画領域を配置することを特徴とする請求項６に記載の情報処理装置の表示処理方法。
【請求項８】
前記予測ステップにおいて、前記既に手書き入力された複数のオブジェクトの外接矩形に基づいて、新たに入力されるオブジェクトが配置される矩形枠の大きさおよび位置を予測し、この予測された矩形枠が既に手書き入力された描画領域に含まれない場合に、前記新たに描画領域を配置することを特徴とする請求項６に記載の情報処理装置の表示処理方法。
【請求項９】
前記請求項５〜８の何れか１項に記載の情報処理装置の表示処理方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１０】
前記請求項９に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の表示処理方法、及びコンピュータプログラムに関し、特に、データを表示装置に表示するために用いて好適なものである。
【背景技術】
【０００２】
従来から、デジタイザ（座標入力装置）付きの電子白板、ＰＤＡ（Personal Digital Assistance）、及び大画面ディスプレイ等の手書き入力機能を備えた情報処理装置では、手書きで入力された文字や図形等の表示方法が提案されている。
【０００３】
また、表示データの重なりを避けることによって、表示データを分かりやすく表示装置の表示画面上に表示する方法が提案されている。
例えば、特許文献１では、重なり合ったウィンドウの操作性を向上させるために、ウィンドウタイトルのみを重ならないように表示することが提案されている。
【０００４】
【特許文献１】特開平５−２４１７５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、上述した手書き入力されたデータに対し、表示済みの表示データとの重なりを避けつつ、新たな表示データを動的に指定して表示することができるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置の表示処理方法は、表示装置の表示画面において、手書き入力される領域を予測して、既に手書き入力された描画領域に追加して新たに描画領域を配置する予測手段と、前記予測手段により予測された描画領域と、既に表示装置に表示されている表示データの描画領域とが重なっているか否かを判定する判定手段と、前記判定手段によって、前記予測手段により予測された描画領域と既に表示装置に表示されている表示データの描画領域とが重なっていると判定された場合、前記既に表示画面に表示されている描画領域を移動させる移動手段とを有することを特徴とする。
【０００７】
本発明のデータ表示方法は、表示装置の表示画面において、手書き入力される領域を予測して、既に手書き入力された描画領域に追加して新たに描画領域を配置する予測ステップと、前記予測ステップにおいて予測された描画領域と、既に表示装置に表示されている表示データの描画領域とが重なっているか否かを判定する判定ステップと、前記判定ステップにおいて、前記予測ステップにおいて予測された描画領域と既に表示装置に表示されている表示データの描画領域とが重なっていると判定された場合、前記既に表示画面に表示されている描画領域を移動させる移動ステップとを有することを特徴とする。
【０００８】
本発明のコンピュータプログラムは、前記情報処理装置の表示処理方法をコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記憶媒体は、前記コンピュータプログラムを記憶したことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ユーザによって入力された表示データの描画領域を動的に指定しつつ、ユーザによって入力された表示データの描画領域と、既に表示装置に表示されている描画領域とが重なって表示されることを防止することができる。
【発明を実施するための最良の形態】
【００１０】
次に、図面を参照しながら、本発明の一実施形態について説明する。
本実施形態では、図１から図１１を用いて、表示装置の表示画面上に表示されている表示データの近傍に、検索条件を入力する際に、その検索条件を入力するための領域を動的に確保する方法の一例について説明する。
【００１１】
図１は、本実施形態の情報処理装置を備えて構成されるネットワークシステムの構成の一例を示す図である。
図１において、ネットワークシステムは、各種データの伝送媒体となるネットワーク１０２に、複数の情報処理装置１０１ａ〜１０１ｅが接続されている。ネットワーク１０２としては、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）のようなＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）あるいはインターネットのような広域情報通信網を用いることができる。各情報処理装置１０１ａ〜１０１ｅは、図２を参照しながら後述する通信装置２０８を用いることにより、ネットワーク１０２を介して相互に接続される。
なお、図１では、情報処理装置１０１ａ〜１０１ｅが５つの場合を例に挙げて説明したが、情報処理装置１０１の数は５つに限定されないということは言うまでもない。
【００１２】
図２は、本実施形態の情報処理装置１０１のハードウェアの構成の一例を示す図である。図２において、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１は、ＲＯＭ２０２等に記憶されている処理プログラムを実行する等して、各処理のための演算や、論理判断等を行い、バス２０９を介して相互に接続された各構成要素を制御する。
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２は、読み出し専用の固定メモリであり、本実施形態で実行される前記処理プログラム等の制御プログラムコード等を記憶する。
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３は、書き込み可能なメモリであり、各構成要素から出力された各種データ等を一時的に記憶する。
【００１３】
入力装置２０４は、例えば、キーボードやマウスや手書き入力装置等を備えて構成され、情報（データ）を入力する際のユーザインターフェースとして用いられる。
表示装置２０５は、例えば、陰極線管ＣＲＴ（Ｃａｔｈｏｄ−Ｒａｙ  Ｔｕｂｅ）又は液晶パネル等であり、各種表示データを表示する。
表示コントローラ２０６は、表示装置２０５におけるドット構成の表示パターン及びカーソルの表示を制御する。
外部記憶装置２０７は、種々の情報（例えばデータやプログラム等）を記憶する。外部記憶装置２０７として、例えば、ＲＯＭ、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリカード、光磁気ディスク等を用いることができる。
【００１４】
通信装置２０８は、ネットワーク１０２に接続し、複数の情報処理装置１０１同士を相互に接続する役割を担う。
以上のような構成要素からなる情報処理装置１０１は、入力装置２０４からの各種の入力、及び他の情報処理装置１０１の通信装置２０８からネットワーク２０９を経由して供給される各種の入力に応じて作動するものである。入力装置２０４からの入力、及び通信装置２０８からの入力があると、まず、インタラプト信号がＣＰＵ２０１に送られる。そうすると、ＣＰＵ２０１は、例えば、外部記憶装置２０７に記憶されている各種の制御信号を読み出し、それらの制御信号に従って、各種の制御を行う。
【００１５】
図３は、本実施形態の情報処理装置１０１の機能ブロック図である。
図３に示すように、本実施形態の情報処理装置１０１の機能は、入力部３０１、表示部３０２、入力データ解析部３０３、入力データ領域算出部３０４、描画領域重なり判定部３０５、表示データ領域算出部３０６、及び検索部３０７を有している。
【００１６】
入力部３０１は、ユーザによる手書き入力を受け付ける。
表示部３０２は、検索結果、及び入力部３０１に入力された検索条件等を表示する。表示部３０２により表示される検索結果及び入力部３０１に入力される検索条件の描画情報は、図１０を参照しながら後述する入力データオブジェクトリストと、図１１を参照しながら後述する表示データオブジェクトリストとから取得する。
【００１７】
入力データ解析部３０３は、入力部３０１により入力されたストロークデータを文字あるいは図形として認識する処理を行う。
入力データ領域算出部３０４は、入力データ解析部３０３において文字あるいは図形として認識された表示データを描画するための描画領域を算出する。算出した描画領域を示す情報は、図１０において後述する入力データオブジェクトリストに反映される。
【００１８】
描画領域重なり判定部３０５は、新たに入力された表示データを描画するための入力データ描画領域と、既に表示されている表示データを描画するための入力データ描画領域との重なりを判定する。描画領域重なり判定部３０５は、まず、図１０において後述する入力データオブジェクトリストから、前記入力データ描画領域を取得する。次に、描画領域重なり判定部３０５は、図１１において後述する表示データオブジェクトリストから、表示データ描画領域を取得する。そして、描画領域重なり判定部３０５は、取得した入力データ描画領域と表示データ描画領域とが重なっているか否かを判定する。
【００１９】
表示データ領域算出部３０６は、描画領域重なり判定部３０５の判定結果に基づき、表示データ描画領域が、入力データ描画領域と重ならないように、表示データ描画領域の位置を変更する。位置が変更された表示データ描画領域の情報は、図１１において後述する表示データオブジェクトリストに反映する。
検索部３０７は、入力データ解析部３０３において認識された文字（列）あるいは図形を検索クエリとして検索処理を実行する。
【００２０】
なお、図３に示した入力部３０１は、例えば、図２に示した入力装置２０４を用いて実現することができる。また、表示部３０２は、例えば、図２に示した表示装置２０５及び表示コントローラ２０６を用いて実現することができる。さらに、入力データ解析部３０３、入力データ領域算出部３０４、描画領域重なり判定部３０５、表示データ領域算出部３０６、及び検索部３０７は、図２に示したＣＰＵ２０１、及びＲＯＭ２０２に記憶された処理プログラムを用いて実現することができる。
【００２１】
図４は、本実施形態の情報処理装置１０１における動作処理の一例を説明するフローチャートである。図４の処理は、ＣＰＵ２０１がＲＯＭ２０２からＲＡＭ２０３に展開されたプログラムに基づいて実行することにより処理される。以下では便宜的に図３に示す各機能構成を引用して説明する。
まず、ステップＳ４０１では、入力部３０１は、ユーザにより行われた手書き入力を受け付ける。このステップＳ４０１の入力処理が初めて行われる場合には、後述するステップＳ４０４からステップＳ４０７で示す方法と同様の方法で、新たに入力された表示データを描画するための入力データ描画領域を確保する。この入力データ描画領域の大きさは、手書き入力された１文字目のデータオブジェクトの大きさで決定される。例えば、入力データ描画領域のＸ軸方向の長さをそのデータオブジェクトのＸ軸方向の長さ３倍に設定し、入力データ描画領域のＹ軸方向の長さをそのデータオブジェクトのＹ軸方向の長さ２倍に設定する処理が行われる。なお、例えば、外部記憶装置２０７等に予め記憶されている不図示の入力データ描画領域初期値から決定するよう処理することも可能である。
【００２２】
次に、ステップＳ４０２において、入力データ解析部３０３は、入力されたデータを解析する。このステップＳ４０２における入力データ解析処理の詳細は図５を用いて後述する。
次に、ステップＳ４０３において、入力データ解析部３０３は、ステップＳ４０２で解析されたデータが、検索実行を指示することを示す検索コマンド（不図示）であるか否かを判定する。この判定の結果、ステップＳ４０２で解析されたデータが、検索コマンドである場合は、検索処理を実行するために後述するステップＳ４０８へ進む。一方、ステップＳ４０２で解析されたデータが、検索コマンド以外の場合は、ステップＳ４０２で解析されたデータを描画するための領域が確保されているか否かを判定するためにステップＳ４０４へ移る。
【００２３】
次に、ステップＳ４０４において、入力データ領域算出部３０４は、既に確保されている入力データ描画領域が、入力されるべき表示データの全てを表示するのに十分な領域を有しているか否かを判定する。このステップＳ４０４では、既に入力されたデータオブジェクトだけではなく、これから描画（手書き入力）されるであろう入力データオブジェクトの描画位置を予測して、入力データ描画領域が十分な領域を有しているか否かを判定する。
この判定の結果、既に確保されている入力データ描画領域が、入力されるべき表示データを表示するのに十分な領域を有していない場合には、入力データ描画領域の追加処理を行う。このステップＳ４０４における入力領域算出処理の詳細は図７を用いて後述する。
次に、ステップＳ４０５において、描画領域重なり判定部３０５は、ステップＳ４０４において確保された入力データ描画領域が、表示部３０２に既に表示されている表示データの描画領域である表示データ描画領域と重なるか否かを判定する。
【００２４】
この判定の結果、入力データ描画領域が、表示データ描画領域と重なる場合には、ステップＳ４０６へ移る。一方、入力データ描画領域が、表示データ描画領域と重ならない場合には、表示データの入力を再度受け付けるためにステップＳ４０１へ戻る。
そして、ステップＳ４０６において、表示データ領域算出部３０６は、表示データ描画領域が入力データ描画領域と重ならないように、表示データ描画領域の位置をずらすための計算を行い、前記表示データ描画領域の変更位置を算出する。このステップＳ４０６における表示データ領域算出処理の詳細は図９を用いて後述する。
【００２５】
次に、ステップＳ４０７において、表示部３０２は、ステップＳ４０６で算出された前記表示データ描画領域の変更位置に基づいて、入力データ描画領域と重なると判定された表示データ描画領域に表示されている表示データのオブジェクトを再描画する処理を行う。このステップＳ４０７におけるオブジェクト再描画処理が行われた後は、データの入力を再度受け付けるためにステップＳ４０１へ戻る。
【００２６】
ステップＳ４０３において、ステップＳ４０２で解析されたデータが、検索コマンドであると判定された場合は、ステップＳ４０８に進み、検索部３０７は、ステップＳ４０２で解析された結果に基づいて認識された文字（列）あるいは図形を検索クエリとして検索する。
次に、ステップＳ４０９では、表示部３０２は、ステップＳ４０８で検索された結果を表示する。
【００２７】
図５は、図４のステップＳ４０２における入力データ解析処理の詳細な動作の一例を説明するフローチャートである。
まず、ステップＳ５０１において、入力データ解析部３０３は、入力されたデータのオブジェクト（以下では、必要に応じて入力データオブジェクトと称する）の領域を示す入力データオブジェクト領域を算出する。
ここで、図６に、入力データオブジェクト領域の算出結果の一例を示す。
図６（ａ）に示す表示領域６０１は、大画面ディスプレイ等、表示部３０２における表示画面上の全表示領域を示している。図６（ｂ）に示す入力データオブジェクト領域６０２は、入力データ解析部３０３により実際に認識されたオブジェクトの描画領域である。この入力データオブジェクト領域６０２は、入力データ描画領域６０４内に配置される。入力データオブジェクト座標６０３は、入力データ解析部３０３により認識された入力データオブジェクト領域６０２を形成する外接矩形を特定するための座標である。入力データオブジェクト座標６０３は、外接矩形の左上座標および右下座標の組で管理される。入力データ描画領域区画座標６０５ａ、６０５ｂは、入力データ描画領域６０４を形成する外接矩形を特定するための座標である。入力データ描画領域区画座標６０５は、入力データ描画領域の左上座標および右下座標の組で管理される。
【００２８】
次に、ステップＳ５０２において、入力データ解析部３０３は、ステップＳ５０１で算出された入力データオブジェクト領域６０２内に描画されているオブジェクトを認識する。図６（ｂ）に示す例では、入力データ解析部３０３により認識されるオブジェクトは"レ"及び"ス"である。
【００２９】
次に、ステップＳ５０３において、入力データ解析部３０３は、ステップＳ５０１及びステップＳ５０２で得られた入力データオブジェクトに関するデータから図１０を参照しながら後述する入力データオブジェクトリストの値を更新する。
【００３０】
図７は、図４のステップＳ４０４における入力領域算出処理の詳細な動作の一例を説明するフローチャートである。
まず、ステップＳ７０１において、入力データ領域算出部３０４は、入力データオブジェクト領域６０２を形成する外接矩形の位置を特定するための入力データオブジェクト座標６０３を、図１０において後述する入力データオブジェクトリストから取得する。
【００３１】
次に、ステップ７０２において、入力データ領域算出部３０４は、ステップＳ７０１において取得した入力データオブジェクト座標６０３に基づいて、入力データオブジェクト領域６０２を形成する外接矩形の重心を算出する。ステップＳ７０１において取得したオブジェクトの数が１である場合は、入力データ描画領域６０４の重心を算出する。入力データ描画領域６０４の重心は、例えば、外部記憶装置２０７に記憶されているリストから入力データ描画領域区画座標６０５を取得することにより行う。
【００３２】
次に、ステップＳ７０３において、入力データ領域算出部３０４は、ステップＳ７０１において取得した入力データオブジェクト座標６０３と、ステップＳ７０２において算出した入力データオブジェクト領域６０２を形成する外接矩形の重心とを参照する。そして、それらに基づいて、入力データ領域算出部３０４は、既に確保されている入力データ描画領域６０４（ステップＳ７０１で取得した入力データオブジェクト座標６０３により定められる入力データ描画領域）が、入力された全ての表示データを表示するのに十分な大きさを持っているか否かを判定する。
【００３３】
具体的に説明すると、まず、入力済みの外接矩形枠のＸ軸方向の辺の平均値とＹ軸方向の辺の平均値を求める。また、外接矩形枠が互いに隣接する重心間の距離の平均値を求める（図８においては、重心８０１ａおよび重心８０１ｂ間の距離に決定される）。そして、求められたＸ軸方向およびＹ軸方向の辺の平均値で構成される矩形枠６９０の重心６９１がステップＳ７０２で算出した重心を通る直線上に位置するように、矩形枠６９０を仮配置する。すなわち、この矩形枠６９０は、新たに手書き入力されるデータオブジェクトが配置される矩形枠の大きさおよび位置を予測することにより仮配置されたものである。
ここで、矩形枠６９０は、矩形枠６９０と隣接する外接矩形６０２ｂの重心から、上記求められた外接矩形枠が互いに隣接する重心間の距離の平均値の位置に仮配置される。ここで、矩形枠６９０は、外接矩形６０２ｂに隣接して配置されるが、これは、外接矩形６０２ｂが最も新しく入力データオブジェクトリストに登録されたためである。すなわち、矩形枠６９０は、入力データオブジェクトリストの入力データオブジェクトの描画時刻情報を参照し、最も新しく入力データオブジェクトリストに登録された外接矩形枠に隣接して仮配置される。
そして、仮配置した矩形枠６９０が、既に確保されている入力データ描画領域６０４に含まれない部分が存在するか否かを判定する。すなわち、既に確保されている入力データ描画領域６０４が十分な大きさであるかを判定することになる。この判定の結果、既に確保されている入力データ描画領域６０４が十分な大きさである場合には、入力領域算出処理を終了する。一方、既に確保されている入力データ描画領域６０４が十分な大きさでない場合には、ステップＳ７０４へ移る。
【００３４】
そして、ステップＳ７０４において、入力データ領域算出部３０４は、ステップＳ７０２で算出された重心の値を用いて入力データ描画領域を追加する。
具体的に説明すると、ステップＳ７０２で算出した重心を結ぶ直線上に存在し、且つ既に確保されている入力データ描画領域６０４と接するという条件を満たすように、新たな入力データ描画領域６０５を追加配置する。このとき、本実施の形態では、新たな入力データ描画領域６０５の大きさは、入力データ描画領域６０４と同じものとするが、矩形枠６９０が含まれる程度の大きさ以上であればよい。また、新たな入力データ描画領域６０５は、入力データオブジェクトリストの入力データオブジェクトの描画時刻情報を参照し、その重心と最も新しく登録された外接矩形枠の重心が近い側に入力データ描画領域６０４に隣接配置される。
【００３５】
図８は、既に確保されている入力データ描画領域に新たな入力データ描画領域を追加する方法の一例を説明する図である。
図８（ａ）において、既に確保されている入力データ描画領域６０４の中には、入力データオブジェクト領域６０２ａ、６０２ｂが含まれている。ステップＳ７０４では、図８（ｂ）に示すように、新たな入力データ描画領域６０５が配置される。具体的には、"レ"と"ス"で表される入力データオブジェクト領域６０２ａ、６０２ｂの重心８０１ａ、８０１ｂを結ぶ線８０２に重心８０３が存在し、且つ既に確保されている入力データ描画領域６０４と接するという条件を満たすように新たな入力データ描画領域６０５を配置する。
【００３６】
図９は、図４のステップＳ４０６における表示データ領域算出処理の詳細の一例を説明する図である。
図９（ａ）において、入力データ描画領域９０１は、図４のステップＳ４０４で算出された入力データ描画領域（例えば、入力データ描画領域６０４及び６０５により定められる領域）である。
図９（ａ）に示すように、表示データ描画領域９０４及び９０５は、入力データ描画領域９０１と重なっている。一方、表示データ描画領域９０３及び９０６は、入力データ描画領域９０１と重なっていない。このため、位置を変更することが必要な表示データ描画領域は、表示データ描画領域９０４及び９０５となる。ここで、表示データ描画領域９０３〜９０６の外接矩形を特定する座標を、図１１（ａ）に示す表示データオブジェクトリストに格納されている数値であるとする。そうすると、表示データ描画領域９０４の頂点のうち、入力データ描画領域９０１に含まれる頂点は、右上の頂点（５７６，８６０）である。入力データ描画領域９０１に含まれる表示データ描画領域９０４の頂点の数が複数の場合には、入力データ描画領域９０１の重心に１番近い頂点を用いる。
【００３７】
そして、入力データ描画領域９０１に含まれる表示データ描画領域９０４の右上の頂点から１番近い位置にある入力データ描画領域９０１の頂点を探す。例えば、表示データ描画領域９０４の右上の頂点に１番近い入力データ描画領域９０１の頂点は、入力データ描画領域９０１の左下の頂点（５００，９００）である。
【００３８】
そして、入力データ描画領域９０１に含まれる表示データ描画領域の頂点と、その頂点に１番近い入力データ描画領域９０１の頂点との間の差を求める。そして、求めた差の絶対値が小さい方軸方向に沿って、その値分だけ、入力データ描画領域９０１と重ならない方向に表示データ描画領域をずらす。
例えば、表示データ描画領域９０４の右上の頂点（５７６，８６０）と、入力データ描画領域９０１の左下の頂点（５００，９００）との差は、Ｘ座標では７６（＝５７６−５００）、Ｙ座標では−４０（８６０−９００）となる。したがって、表示データ描画領域９０４のＹ座標が４０増加するようにさせることとなる。そして、図１１（ａ）に示す表示データオブジェクトリストに格納されている表示データ描画領域（表示データＢ）９０４の座標が、図１１（ｂ）に示す表示データオブジェクトリストのように変更される。表示データ描画領域９０５についても同様の計算を行うと、図１１（ａ）に示す表示データオブジェクトリストに格納されている表示データ描画領域（表示データＣ）９０５の座標が、図１１（ｂ）に示す表示データオブジェクトリストのように変更される。よって、図９（ａ）に示した表示データ描画領域９０４及び９０６の位置が変更され、図９（ｂ）に示す表示データ描画領域９０７及び９０８が得られる。
【００３９】
図１０は、手書き入力された入力データオブジェクトのリストを示す入力データオブジェクトリストの一例を示す図である。この入力データオブジェクトリストは、描画された入力オブジェクトデータとその外接矩形枠の左上座標および右下座標に関する情報が格納される。また、不図示ではあるが、それぞれの入力データオブジェクトが手書き入力された描画時刻情報も格納される。この入力データオブジェクトリストは、１つの（１文字の）入力データオブジェクトが描画されるたびに項目が追加更新される。
図１０の入力データオブジェクトリストにおいて、入力データ１００１は、入力された表示データの文字を示す。Ｘ１座標１００２は、入力データオブジェクト領域６０２ａ、６０３ｂの左上の頂点６０３ａ、６０３ｃのＸ座標を示す。Ｙ１座標１００３は、入力データオブジェクト領域６０２ａ、６０３ｂの左上の頂点６０３ａ、６０３ｃのＹ座標を示す。Ｘ２座標１００４は、入力データオブジェクト領域６０２ａ、６０３ｂの右下の頂点６０３ｂ、６０３ｄのＸ座標を示す。Ｙ２座標１００５は、入力データオブジェクト領域６０２ａ、６０３ｂの右下の頂点６０３ｂ、６０３ｄのＹ座標を示す。
【００４０】
図８に示した例では、入力された表示データ"レ"の入力データオブジェクト領域６０２ａは、左上の頂点が座標（Ｘ１，Ｙ１）＝（５２０，６００）で示され、右下の頂点が座標（Ｘ２，Ｙ２）＝（６２０，７９０）で示される外接矩形となる。
【００４１】
図１１は、表示データオブジェクトリストの一例を示す図である。なお、前述したように、図１１（ａ）は、変更前の表示データオブジェクトリストの一例を示し、図１１（ｂ）は、変更後の表示データオブジェクトリストの一例を示す。
図１１の表示データオブジェクトリストにおいて、表示データ１１０１は、検索等がなされた表示データを示す。Ｘ１座標１１０２は、表示データ描画領域９０３〜９０６の左上の頂点のＸ座標を示す。Ｙ１座標１１０３は、表示データ描画領域９０３〜９０６の左上の頂点のＹ座標を示す。Ｘ２座標１１０４は、表示データ描画領域９０３〜９０６の右下の頂点のＸ座標を示す。Ｙ２座標１１０５は、表示データ描画領域９０３〜９０６の右下の頂点のＹ座標を示す。
図９に示した例では、表示データ描画領域９０３は、左上の頂点が座標（Ｘ１，Ｙ１）＝（３９４，７６８）で示され、右下の頂点が座標（Ｘ２，Ｙ２）＝（４９０，８４０）で示される外接矩形となる。
【００４２】
以上のように本実施形態では、例えば、ユーザが、文字や図形等の検索条件の入力を、ストローク（手書き）入力によって行う際に、手書き入力された検索条件に基づく表示データを描画するための入力データ描画領域９０１を確保するようにした。具体的には、手書き入力された入力データ描画領域９０１の位置の周辺に、表示済みの表示データの描画領域である表示データ描画領域９０４、９０５を移動させるようにした。これにより、既に表示されている表示データと重ならないようにしつつ、表示領域の任意の位置に検索条件を表示することが可能になる。また、ユーザによって入力された検索条件の描画領域の大きさが不明であっても、既に表示されている表示データと重ならないように、ユーザによって入力された検索条件の描画領域を動的に（好ましくは自由に）確保することができ、ユーザの操作性を向上させることができる。
【００４３】
なお、本実施形態では、入力データオブジェクト領域６０２や、入力データ描画領域９０１や、表示データ描画領域９０３〜９０６を矩形としたが、必ずしもこれらを矩形にする必要はない。例えば、円、楕円、又は多角形等であってもよい。円にした場合には、例えば、中心及び半径を用いて領域が特定されるようにすればよい。楕円にした場合には、例えば、焦点、長軸の長さ、及び短軸の長さを用いて領域が特定されるようにすればよい。
【００４４】
また、本実施形態では、入力データ描画領域９０１と重なっている表示データ描画領域９０４、９０５を移動させるようにしたが必ずしもこのようにする必要はない。すなわち、入力データ描画領域９０１のみ、又は入力データ描画領域９０１と表示データ描画領域９０４、９０５との双方を移動させて、入力データ描画領域９０１と、表示データ描画領域９０４、９０５とが重ならないようにしてもよい。
さらに、ユーザによって手書き入力される表示データは、検索条件に限定されるものではないということは言うまでもない。
【００４５】
（本発明の他の実施形態）
本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４６】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００４７】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
【００４８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４９】
なお、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施形態を示し、ネットワークシステムの構成の一例を示す図である。
【図２】本発明の実施形態を示し、情報処理装置のハードウェアの構成の一例を示す図である。
【図３】本発明の実施形態を示し、情報処理装置の構成の一例を示す機能ブロック図である。
【図４】本発明の実施形態を示し、情報処理装置における動作の一例を説明するフローチャートである。
【図５】本発明の実施形態を示し、図４のステップＳ４０２における入力データ解析処理の詳細な動作の一例を説明するフローチャートである。
【図６】本発明の実施形態を示し、入力データオブジェクト領域の算出結果の一例を示す図である。
【図７】本発明の実施形態を示し、図４のステップＳ４０４における入力領域算出処理の詳細な動作の一例を説明するフローチャートである。
【図８】本発明の実施形態を示し、既に確保されている入力データ描画領域に新たな入力データ描画領域を追加する方法の一例を説明する図である。
【図９】本発明の実施形態を示し、図４のステップＳ４０６における表示データ領域算出処理の詳細の一例を説明する図である。
【図１０】本発明の実施形態を示し、入力データオブジェクトリストの一例を示す図である。
【図１１】本発明の実施形態を示し、表示データオブジェクトリストの一例を示す図である。
【符号の説明】
【００５１】
１０１  情報処理装置
１０２  ネットワーク
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  入力装置
２０５  表示装置
２０６  表示コントローラ
２０７  外部記憶装置
２０８  通信装置
３０１  入力部
３０２  表示部
３０３  入力データ解析部
３０４  入力データ領域算出部
３０５  描画領域重なり判定部
３０６  表示データ領域算出部
３０７  検索部
６０１  表示領域
６０２  入力データオブジェクト領域
６０３  入力データオブジェクト座標
６０４、６０５、９０１  入力データ描画領域
８０１、８０３  重心
９０３〜９０６  表示データ描画領域
【図１】
2007079623.tif 000003
【図２】
2007079623.tif 000004
【図３】
2007079623.tif 000005
【図４】
2007079623.tif 000006
【図５】
2007079623.tif 000007
【図６】
2007079623.tif 000008
【図７】
2007079623.tif 000009
【図８】
2007079623.tif 000010
【図９】
2007079623.tif 000011
【図１０】
2007079623.tif 000012
【図１１】
2007079623.tif 000013