(57)【要約】【課題】  次の画像の表示の指令に対する応答性を改善する。【解決手段】  ステップＳ２１で操作バッファが参照されて、ステップＳ２２で画像表示を指令する操作入力が検出されたか否かが判断される。検出された場合、ステップＳ２３で指定された画像データが読み出されて、ステップＳ２４で画像データが生成され、ステップＳ２５で描画処理が開始される。ステップＳ２６で操作バッファに画像表示の終了を指令する操作入力が記憶されているか否かが判断され、記憶されていない場合、ステップＳ２７で操作メモリに次の画像の描画を指令する操作入力が記憶されているか否かが判断される。記憶されていない場合、ステップＳ２８でユーザの操作入力に基づいた処理が実行され、記憶されていた場合、ステップＳ２９で、現在描画処理中の画像の描画処理があれば、描画処理が終了されて、次の画像の描画が開始される。本発明はパーソナルコンピュータに適用できる。【選択図】図９
2005038345.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの操作入力に基づいて、画像を表示する処理を実行する情報処理装置において、
前記ユーザの操作入力に関する情報を取得する取得手段と、
前記画像を描画する描画手段と、
前記取得手段により取得された前記ユーザの操作入力に関する情報を基に、前記描画手段による前記画像の描画を制御する制御手段と
を備え、
前記制御手段は、前記取得手段により新たな画像の描画を指令する前記操作入力に関する情報が取得された場合、前記描画手段により画像の描画が行われていたとき、前記画像の描画が終了されるように前記描画手段を制御する
ことを特徴とする情報処理装置。
【請求項２】
新たな画像の描画を指令する前記操作入力には、前記画像の表示の拡大を指令する前記操作入力、前記画像の表示の縮小を指令する前記操作入力、または、前記画像のうちの表示される画像部分の変更を指令する前記操作入力のうちの少なくとも１つが含まれる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得手段により取得された前記ユーザの操作入力に関する情報を記憶する第１の記憶手段と、
前記第１の記憶手段により記憶された前記ユーザの操作入力に関する情報から、新たな画像の描画を指令する前記操作入力に関する情報を選択する選択手段と、
前記選択手段により選択された新たな画像の描画を指令する前記操作入力に関する情報を記憶する第２の記憶手段と
を更に備え、
前記制御手段は、前記第１の記憶手段および前記第２の記憶手段により記憶された前記ユーザの操作入力に関する情報を基に、前記描画手段による前記画像の描画を制御するとともに、前記第２の記憶手段に新たな画像の描画を指令する前記操作入力に関する情報が記憶されているか否かを判断し、前記第２の記憶手段に新たな画像の描画を指令する前記操作入力に関する情報が記憶され、かつ、前記描画手段により画像の描画が行われていたとき、前記画像の描画が終了されるように前記描画手段を制御する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記第２の記憶手段には、前記選択手段により新たな画像の描画を指令する操作入力に関する情報が選択されたあと、所定の時間経過後に、新たな画像の描画を指令する前記操作入力に関する情報が記録される
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記描画手段は、前記画像の構成要素を所定の優先順位に基づいて順次描画する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項６】
ユーザの操作入力に基づいて、画像を表示する処理を実行する情報処理装置の情報処理方法において、
前記画像の描画を開始する描画開始ステップと、
前記ユーザにより、新たな画像の描画を指令する操作入力を受けたか否かを判断する判断ステップと、
前記判断ステップの処理により、新たな画像の描画を指令する前記操作入力を受けたと判断された場合、前記描画開始ステップの処理により開始された前記画像の描画を終了させる描画終了ステップと
を含むことを特徴とする情報処理方法。
【請求項７】
前記ユーザの前記操作入力に関する情報を取得する取得ステップと、
前記取得ステップの処理により取得された前記操作入力に関する情報のうちの、新たな画像の描画を指令する前記操作入力に関する情報の、所定の記憶手段への記憶を制御する記憶制御ステップと
を更に含み、
前記判断ステップの処理では、前記記憶制御ステップの処理により新たな画像の描画を指令する前記操作入力に関する情報の前記記憶手段への記憶が制御された場合、新たな画像の描画を指令する前記操作入力を受けたと判断する
ことを特徴とする請求項６に記載の情報処理方法。
【請求項８】
ユーザの操作入力に基づいて、画像を表示する処理をコンピュータに実行させるためのプログラムであって、
前記画像の描画を開始する描画開始ステップと、
前記ユーザにより、新たな画像の描画を指令する前記操作入力を受けたか否かを判断する判断ステップと、
前記判断ステップの処理により、新たな画像の描画を指令する前記操作入力を受けたと判断された場合、前記描画開始ステップの処理により開始された前記画像の描画を終了させる描画終了ステップと
を含むことを特徴とするプログラム。
【請求項９】
前記ユーザの前記操作入力に関する情報を取得する取得ステップと、
前記取得ステップの処理により取得された前記操作入力に関する情報のうちの、新たな画像の描画を指令する前記操作入力に関する情報の、所定の記憶手段への記憶を制御する記憶制御ステップと
を更に含む処理をコンピュータに実行させることにより、
前記判断ステップの処理では、前記記憶制御ステップの処理により新たな画像の描画を指令する前記操作入力に関する情報の前記記憶手段への記憶が制御された場合、新たな画像の描画を指令する前記操作入力を受けたと判断する
ことを特徴とする請求項８に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および情報処理方法、並びにプログラムに関し、特に、描画に時間がかかるような複雑な画像を表示する場合に用いて好適な、情報処理装置および情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
例えば、地図や設計図面などの画像を表示させる場合、地図や設計画面を十分拡大させた状態で全体を表示させるためには、広い２次元表示領域を必要としてしまうので、面積の限られたディスプレイ上にその表示情報を表示するために、これらの画像を縮小させて、表示画面上に全体を表示させることができるようにしたり、表示画面上にその一部のみを拡大表示させることができるようになされている。また、画像の全体が表示されていない場合、画像の表示位置を変更させて、現在表示されている領域外の画像を表示させるために、いわゆるスクロール機能が設けられている場合がある。
【０００３】
拡大縮小表示や、スクロール表示などの機能は、現在表示されている表示倍率と異なる表示倍率の画像データや、表示されていない部分を含む大きな範囲の画像データを全て記憶可能な、大容量のグラフィックメモリが備えられていない限り、一般的には、拡大縮小、またはスクロールの指令を受けた場合、新たに表示される画像データを再描画し、再描画された画像データを表示することにより実現されている。このような従来の画像表示技術においては、１つの画像データの描画の終了後、次の画像データを描画するか否かが判断されていた。
【０００４】
近年、入力デバイスとして、従来のマウスに、新たにスクロールボタンが設けられるようになり、例えば、拡大縮小、またはスクロールなどを指令する操作を連続して入力することが容易になった。
【０００５】
特に、描画に時間がかかってしまうような複雑な画像データに対して、拡大縮小、またはスクロールが連続して指令された場合、１つの画像データの描画の終了後、次の画像データを描画するようになされていては、ユーザが所望する拡大率における画像や、ユーザが所望する位置の画像を最終的に表示するまでに、非常に時間がかかってしまう。
【０００６】
このような処理では、ユーザの操作入力に対する応答性が非常に悪いため、正しく操作入力がなされているか否かをユーザが即時に判断することができないので、ユーザは、必要以上に連続して同じ操作を行ってしまいがちであり、結果的に、ユーザが所望する拡大率における画像や、ユーザが所望する位置の画像を表示させることが困難となってしまっていた。
【０００７】
例えば、ユーザが、所望の倍率などを別途入力することにより、ユーザが所望する拡大率における画像を表示するような技術もある。しかしながら、ユーザが、自分自身が所望する画像データの拡大率を具体的な数値として認識していない場合には、小刻みに拡大率を変化させて、表示画面を参照しながら、最終的に、所望の大きさの表示画像データを得るほうが、ユーザにとっては便利であるといえる。スクロール処理においても同様にして、ユーザが、自分自身の操作入力により、小刻みに表示個所を変更して、最終的に、所望の位置の表示画像データを得ることは、ユーザにとって非常に便利である。
【０００８】
このような課題に対して、スクロールスピードを低下させず、かつ専用のハードウェアでアドレス制御をすることなく、スクロール処理を実行することができるグラフィック表示装置を提供するための技術がある（例えば、特許文献１）。
【特許文献１】特開平７−２７１３４４
【０００９】
この技術によれば、描画プロセッサを管理するタスクを複数個設け、おのおのに描画プロセッサをアクセスする場合の優先順位を付与し、コマンド実行中に、優先順位の高いコマンドが生成された場合、実行中もコマンドを中断して、優先順位の高いコマンドを実行し、その後、中断していたコマンドの処理を再開することで、オペレーティングシステムの改造無しに描画処理の応答性を早くすることが可能となり、リアルタイム性を向上させることができる。また、バッファを設け、スクロール時に、次に表示すべき表示データを予測して、すでにバッファに描画しておくことにより、ユーザの操作入力に即時に応答したスクロールを実現することが可能となる。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
このように、従来の技術において、ユーザの操作入力に即時に応答したスクロールを実現させるには、描画プロセッサを管理するタスクを複数個設け、実行中のコマンドの処理を一旦中止し、優先されるコマンドの実行終了後に、中止されたコマンドを再開するなどの複雑な制御が必要とされていた。
【００１１】
本発明はこのような状況に鑑みてなされたものであり、描画に時間がかかるような複雑な画像を表示する場合であっても、複雑な処理を行うことなく、ユーザの操作入力に対する即時応答性と、小刻みに拡大率を変化させて、表示画面を参照しながら、最終的に、所望の大きさの表示画像データを得たり、小刻みに表示個所を変更して、最終的に、所望の位置の表示画像データを得るなどのユーザの求める操作性とが両立されるようにすることができるものである。
【課題を解決するための手段】
【００１２】
本発明の情報処理装置は、ユーザの操作入力に関する情報を取得する取得手段と、画像を描画する描画手段と、取得手段により取得されたユーザの操作入力に関する情報を基に、描画手段による画像の描画を制御する制御手段とを備え、制御手段は、取得手段により新たな画像の描画を指令する操作入力に関する情報が取得された場合、描画手段により画像の描画が行われていたとき、画像の描画が終了されるように描画手段を制御することを特徴とする。
【００１３】
新たな画像の描画を指令する操作入力には、画像の表示の拡大を指令する操作入力、画像の表示の縮小を指令する操作入力、または、画像のうちの表示される画像部分の変更を指令する操作入力のうちの少なくとも１つが含まれるものとすることができる。
【００１４】
取得手段により取得されたユーザの操作入力に関する情報を記憶する第１の記憶手段と、第１の記憶手段により記憶されたユーザの操作入力に関する情報から、新たな画像の描画を指令する操作入力に関する情報を選択する選択手段と、選択手段により選択された新たな画像の描画を指令する操作入力に関する情報を記憶する第２の記憶手段とを更に備えさせるようにすることができ、制御手段には、第１の記憶手段および第２の記憶手段により記憶されたユーザの操作入力に関する情報を基に、描画手段による画像の描画を制御させるようにすることができるとともに、第２の記憶手段に新たな画像の描画を指令する操作入力に関する情報が記憶されているか否かを判断し、第２の記憶手段に新たな画像の描画を指令する操作入力に関する情報が記憶され、かつ、描画手段により画像の描画が行われていたとき、画像の描画が終了されるように描画手段を制御させるようにすることができる。
【００１５】
第２の記憶手段には、選択手段により新たな画像の描画を指令する操作入力に関する情報が選択されたあと、所定の時間経過後に、新たな画像の描画を指令する操作入力に関する情報が記録されるようにすることができる。
【００１６】
描画手段には、画像の構成要素を所定の優先順位に基づいて順次描画させるようにすることができる。
【００１７】
本発明の情報処理装置においては、ユーザの操作入力に関する情報が取得され、画像が描画され、ユーザの操作入力に関する情報を基に、画像の描画が制御され、画像の描画を指令する操作入力に関する情報が取得された場合、画像の描画が行われていたとき、画像の描画が終了される。
【００１８】
本発明の情報処理方法は、画像の描画を開始する描画開始ステップと、ユーザにより、新たな画像の描画を指令する操作入力を受けたか否かを判断する判断ステップと、判断ステップの処理により、新たな画像の描画を指令する操作入力を受けたと判断された場合、描画開始ステップの処理により開始された画像の描画を終了させる描画終了ステップとを含むことを特徴とする。
【００１９】
ユーザの操作入力に関する情報を取得する取得ステップと、取得ステップの処理により取得された操作入力に関する情報のうちの、新たな画像の描画を指令する操作入力に関する情報の、所定の記憶手段への記憶を制御する記憶制御ステップとを更に含ませるようにすることができ、判断ステップの処理では、記憶制御ステップの処理により新たな画像の描画を指令する操作入力に関する情報の記憶手段への記憶が制御された場合、新たな画像の描画を指令する操作入力を受けたと判断させるようにすることができる。
【００２０】
本発明のプログラムは、画像の描画を開始する描画開始ステップと、ユーザにより、新たな画像の描画を指令する操作入力を受けたか否かを判断する判断ステップと、判断ステップの処理により、新たな画像の描画を指令する操作入力を受けたと判断された場合、描画開始ステップの処理により開始された画像の描画を終了させる描画終了ステップとを含む処理をコンピュータに実行させることを特徴とする。
【００２１】
ユーザの操作入力に関する情報を取得する取得ステップと、取得ステップの処理により取得された操作入力に関する情報のうちの、新たな画像の描画を指令する操作入力に関する情報の、所定の記憶手段への記憶を制御する記憶制御ステップとを更に含む処理をコンピュータに実行させるようにすることができ、このことにより、判断ステップの処理では、記憶制御ステップの処理により新たな画像の描画を指令する操作入力に関する情報の記憶手段への記憶が制御された場合、新たな画像の描画を指令する操作入力を受けたと判断するようにすることができる。
【００２２】
本発明の情報処理方法およびプログラムにおいては、画像の描画が開始され、ユーザにより、新たな画像の描画を指令する操作入力を受けたか否かが判断され、新たな画像の描画を指令する操作入力を受けたと判断された場合、開始された画像の描画が終了される。
【発明の効果】
【００２３】
本発明によれば、ユーザの操作入力に基づいて表示される画像データを描画することができ、特に、拡大または縮小、もしくはスクロールなどの、新たな画像の描画を指令する操作入力を連続して受けた場合においても、ユーザの操作入力に対する即時応答性と、ユーザが所望する拡大率で画像を表示させたり、画像のうち、ユーザの所望する部分を表示させることができるような操作性とが両立した表示処理を提供することができる。
【発明を実施するための最良の形態】
【００２４】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００２５】
更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
【００２６】
請求項１に記載の情報処理装置は、ユーザの操作入力に関する情報を取得する取得手段（例えば、図３の操作入力部６２）と、画像を描画する描画手段（例えば、図３の表示データ生成部６７）と、取得手段により取得されたユーザの操作入力に関する情報を基に、描画手段による画像の描画を制御する制御手段（例えば、図３の表示制御部６６）とを備え、制御手段は、取得手段により新たな画像の描画を指令する操作入力（例えば、画像の表示の拡大を指令する操作入力、画像の表示の縮小を指令する操作入力、または、画像のうちの表示される画像部分の変更を指令する操作入力）に関する情報が取得された場合、描画手段により画像の描画が行われていたとき、画像の描画が終了されるように描画手段を制御することを特徴とする。
【００２７】
請求項３に記載の情報処理装置は、取得手段により取得されたユーザの操作入力に関する情報を記憶する第１の記憶手段（例えば、図３の操作バッファ６３）と、第１の記憶手段により記憶されたユーザの操作入力に関する情報から、新たな画像の描画を指令する操作入力に関する情報を選択する選択手段（例えば、図３の操作取得部６４）と、選択手段により選択された新たな画像の描画を指令する操作入力に関する情報を記憶する第２の記憶手段（例えば、図３の操作メモリ６５）とを更に備え、制御手段は、第１の記憶手段および第２の記憶手段により記憶されたユーザの操作入力に関する情報を基に、描画手段による画像の描画を制御するとともに、第２の記憶手段に新たな画像の描画を指令する操作入力に関する情報が記憶されているか否かを判断し、第２の記憶手段に新たな画像の描画を指令する操作入力に関する情報が記憶され、かつ、描画手段により画像の描画が行われていたとき、画像の描画が終了されるように描画手段を制御することを特徴とする。
【００２８】
請求項６に記載の情報処理方法は、画像の描画を開始する描画開始ステップ（例えば、図９のステップＳ２５の処理）と、ユーザにより、新たな画像の描画を指令する操作入力を受けたか否かを判断する判断ステップ（例えば、図９のステップＳ２７の処理）と、判断ステップの処理により、新たな画像の描画を指令する操作入力を受けたと判断された場合、描画開始ステップの処理により開始された画像の描画を終了させる描画終了ステップ（例えば、図９のステップＳ２９の処理）とを含むことを特徴とする。
【００２９】
請求項７に記載の情報処理方法は、ユーザの操作入力に関する情報を取得する取得ステップ（例えば、図８のステップＳ１の処理）と、取得ステップの処理により取得された操作入力に関する情報のうちの、新たな画像の描画を指令する操作入力に関する情報の、所定の記憶手段への記憶を制御する記憶制御ステップ（例えば、図８のステップＳ４の処理）とを更に含み、判断ステップの処理では、記憶制御ステップの処理により新たな画像の描画を指令する操作入力に関する情報の記憶手段への記憶が制御された場合、新たな画像の描画を指令する操作入力を受けたと判断することを特徴とする。
【００３０】
また、請求項８に記載のプログラムにおいては、各ステップが対応する実施の形態（但し一例）は、請求項６に記載の情報処理方法と同様であり、請求項９に記載のプログラムにおいては、各ステップが対応する実施の形態（但し一例）は、請求項７に記載の情報処理方法と同様である。
【００３１】
以下、図を参照して、本発明の実施の形態について説明する。
【００３２】
図１は、本発明を適応した画像表示処理を実行可能なパーソナルコンピュータ１の構成を示すブロック図である。
【００３３】
CPU（Central Processing Unit）１１は、入出力インターフェース１２および内部バス１３を介して、パーソナルコンピュータ１のユーザが、入力部１４を用いて入力した各種指令に対応する信号を受け、入力された信号に基づいた各種処理を実行する。
【００３４】
ROM（Read Only Memory）１５は、CPU１１が使用するプログラムや演算用のパラメータのうちの基本的に固定のデータを格納する。RAM（Random Access Memory）１６は、CPU１１の実行において使用するプログラムやデータ、その実行において適宜変化するパラメータなどを格納する。CPU１１、ROM１５、およびRAM１６は、内部バス１３により相互に接続されている。
【００３５】
内部バス１３は、入出力インターフェース１２とも接続されている。入力部１４は、例えば、キーボード、タッチパッド、ジョグダイヤル、あるいはマウスなどからなり、パーソナルコンピュータ１のユーザがCPU１１に各種の指令を入力するとき操作される。表示部１７は、例えば、CRT（Cathode Ray Tube）や液晶表示部などのディスプレイで構成され、各種情報をテキスト、あるいはイメージなどで表示する。
【００３６】
HDD（hard disk drive）１８は、ハードディスクを駆動し、それらにCPU１１によって実行されるプログラムや情報を記録または再生させる。ドライブ１９には、必要に応じて磁気ディスク２１、光ディスク２２、光磁気ディスク２３、および半導体メモリ２４が装着され、データの授受を行う。
【００３７】
ネットワークインターフェース２０は、有線、あるいは、無線を介して、他の装置などと接続され、情報の授受を行う。
【００３８】
これらの入力部１４乃至ネットワークインターフェース２０は、入出力インターフェース１２および内部バス１３を介してCPU１１に接続されている。
【００３９】
次に、本実施の形態の動作環境について説明する。図２を用いて、図１を用いて説明したパーソナルコンピュータ１のCPU１１により実行されるソフトウェアプログラムにおけるソフトウェアスタックについて説明する。
【００４０】
OS（Operation System）４１とは、例えば、マウス４２、キーボード４３、またはディスプレイ４４などの周辺機器を動作させるためのソフトウェアであるドライバ４５の管理や、各種の情報を記録するメモリ４６（具体的には、ROM１５、RAM１６、または、HDD１８など）の管理など、多くのアプリケーションプログラム４９から共通して利用される基本的な機能を提供し、コンピュータシステム全体を管理するソフトウェアである。OSは、ハードウェアに組み込まれているコンピュータ（すなわち、CPU１１）の基本的な動作基盤となるものである。ここでは、いわゆるPC/AT互換機であるパーソナルコンピュータ１について説明しているが、ハードウェアとして、例えば、サン・ソラリス（Sun Solaris）、マッキントッシュ（Macintosh）などが用いられる場合にも、プラットフォームに対応したOSがそれぞれ選択される。ドライバ４５とは、入力部１４を構成するマウス４２またはキーボード４３などによる操作入力や、表示部１７を構成するディスプレイ４４などへの画像出力など、周辺機器を動作させるためのソフトウェアであり、OS４１に組み込まれて動作される。
【００４１】
インタプリタ４７とは、プログラミング言語で記述されたソフトウェアの設計図(ソースコード)を、CPU１１が実行できる形式（オブジェクトコード）に変換しながら、そのプログラムを実行するソフトウェアである。クラスライブラリ４８とは、ある特定の機能を持ったプログラムを、オブジェクト指向プログラミング言語を用いて一つの「クラス」として部品化し、関連する複数のクラスを一つのファイルにまとめたものである。オブジェクト指向言語では、共通する属性やメソッド(手続き)を持ったオブジェクト群をまとめたものを「クラス」と称する。こうした「クラス」は、プログラムの部品として利用できるため、よく使われる汎用的なものをクラスライブラリに集めておくことで、プログラミングの労力を軽減することができる。例えば、所定のOS向けのソフトウェアを開発する際に使用できる命令や関数の集合、または、それらを利用するためのプログラム上の手続きを定めた規約の集合であるAPI（Application Program Interface）は、個々のソフトウェアの開発者が、ソフトウェアが備える全ての機能をプログラミングする困難や無駄を省くために提供されているクラスライブラリ群であり、個々の開発者は、規約に従ってその機能を「呼び出す」だけで、自分でプログラミングすることなくその機能を利用したソフトウェアを作成することができる。
【００４２】
アプリケーションプログラム４９は、必要に応じて、メモリ４６を用いたり、クラスライブラリ４８の機能を呼び出して実行しながら、例えば、後述する操作取得処理や画像表示処理を、CPU１１に実行させるためのプログラムである。
【００４３】
ユーザの操作入力に基づいて、本発明を適用した画像表示処理が行われる場合、アプリケーションプログラム４９として、ユーザの操作入力から、次の画像の描画を指令する操作入力を取得して記憶する操作取得処理を制御するための第１のプログラムと、操作取得処理により取得された指令に基づいて、画像表示処理を制御するための第２のプログラムとが、並行して実行される。
【００４４】
第１のプログラムまたは第２のプログラムは、アプリケーションプログラム４９として実現されるものであっても良いし、また、第１のプログラムまたは第２のプログラムの一部または全部は、アプリケーションプログラム４９としてではなく、クラスライブラリ４８として実現されるものであっても良い。
【００４５】
図３は、本発明を適用した画像表示処理を行うためのプログラムが、ＲＡＭ１６にロードされ、ＣＰＵ１１によって実行される場合の、機能ブロック図である。
【００４６】
入力デバイスドライバ６１は、入力部１４を構成するマウス４１またはキーボード４２の動作を制御し、ユーザにより、マウス４１またはキーボード４２が操作された場合、ユーザの操作入力を示す信号を操作入力部６２に供給する。
【００４７】
操作入力部６２は、入力デバイスドライバ６１からユーザの操作入力を示す信号の供給を受け、例えば、「マウスの右ボタンがクリックされた」「マウスのスクロールボタンが下方向にスクロールされた」または「右移動を指令するカーソルボタンが押下された」などのユーザの操作入力を示す情報を、操作バッファ６３に供給する。操作バッファ６３は、ユーザの操作入力を示す情報を一時保存する。
【００４８】
操作取得部６４は、操作バッファ６３を参照し、ユーザの操作入力を画像表示処理に対する指令に対応付けて検出することができ、ユーザの操作入力のうち、例えば、拡大表示の指令、縮小表示の指令、画像の表示位置の移動（スクロール）の指令などの、次の画像の描画を指令する操作入力を検出した場合、検出された操作入力を、表示制御部６６が参照可能な操作メモリ６５に保存する。
【００４９】
具体的には、操作取得部６４は、例えば、操作バッファ６３に、「マウスの左ボタンが押下された状態で、表示画面中の××の領域が選択された」後、「マウスのスクロールボタンが上方向にスクロールされた」という操作を示す情報が保存されていた場合、表示制御部６６の処理により表示されている画像のうち、選択された部分に対応する画像を拡大表示させるという操作入力を検出したり、「マウスカーソルの位置が表示画面上の位置Ａである状態で、マウスの左ボタンがクリックされた」という操作を示す情報が保存されていた場合、表示制御部６６の制御により表示されている画像の位置Ａに対応する個所がウィンドウのスクロールバーであれば、そのスクロールバーに対する操作、すなわち、表示画像の表示個所の移動（スクロール）の指令を検出して、それらのユーザの指令を操作メモリ６５に供給する。
【００５０】
表示制御部６６は、操作バッファ６３を参照し、ユーザの操作入力を画像表示処理に対する指令に対応付けて検出することができ、ユーザの操作入力に基づいて、表示データ生成部６７を制御して、表示データの生成を制御するとともに、次の画像の描画を指令する操作入力が操作メモリ６５に記憶されているか否かを判断し、次の画像の描画を指令する操作入力が操作メモリ６５に記憶されている場合、現在描画処理中の画像データがあるときには、その描画処理を終了させ、新たな描画処理を開始させる。
【００５１】
表示データ生成部６７は、表示制御部６６の制御に基づいて、表示データメモリ６８に保存されている画像データを読み出して、表示処理部６９に供給したり、ユーザの操作入力を基に、新たな直線または曲線が追加された表示画像データを生成し、表示処理部６９に供給するとともに、表示データメモリ６８に供給する。表示データメモリ６８は、表示データ生成部６７から供給された画像データを記憶する。
【００５２】
表示処理部６９が実行する処理は、一般的に、グラフィックアクセラレータまたはグラフィックプロセッサと称されるハードウェアの処理に対応するものであり、表示データ生成部６７から供給された画像データを描画するための処理を実行する。すなわち、表示処理部６９は、供給された画像データを構成する、例えば、直線や曲線、あるいは、円や四角形などに対応する図形データ（多くの場合は、ベクトルデータにより記述されているデータ）を基に、指定の位置に指定の図形を順次発生させ、内部に有するフレームメモリに書き込む処理を行う。
【００５３】
表示デバイスドライバ７０は、表示部１７を構成するディスプレイ４４の動作を制御するものであり、表示処理部６９のフレームメモリに書き込まれた情報を読み込んで、ディスプレイ４４に表示させる。
【００５４】
図３に示される各ブロックと、図２を用いて説明したソフトウェアスタックとの関係を例示すると、例えば、入力デバイスドライバ６１および表示デバイスドライバ７０は、図２におけるドライバ４５に含まれるものであり、操作バッファ６３、操作メモリ６５、および、表示データメモリ６８は、メモリ４６に含まれるものであり、操作入力部６２および表示処理部６９の処理は、クラスライブラリ４８として実現されるものであり、操作取得部６４の処理は、アプリケーションプログラム４９のうちの第１のアプリケーションプログラムとして実現されるものであり、表示制御部６６および表示データ生成部６７の処理は、アプリケーションプログラム４９のうちの第１のアプリケーションプログラムと並行して実行可能な第２のアプリケーションプログラムとして実現されるものであるとすることができる。
【００５５】
なお、図３に示される各ブロックと、図２を用いて説明したソフトウェアスタックとの関係は、上述した例示のとおりでなくても良く、例えば、操作入力部６２および表示処理部６９の処理がクラスライブラリ４８として用意されていなくても、アプリケーションプログラム４９として実現されていても良いし、操作取得部６４の処理や、表示制御部６６および表示データ生成部６７の処理のうちの一部が、クラスライブラリ４８として用意されていてもよい。
【００５６】
例えば、図４に示されるような表示ウィンドウ８１に表示されている図面データに対して、キーボード４３の所定のキー（例えば、アップキーまたはダウンキー）が押下される操作、マウス４２に設けられているスクロールボタンが上方向、または下方向に回転される操作、または、表示画面上に操作入力アイコンが表示され、操作入力アイコンとして、拡大ボタンおよび縮小ボタンが用意されている状態において、拡大ボタンと対応する位置または縮小ボタンと対応する位置にマウスカーソルが移動されて、マウス４２の左ボタンが押下される操作が、拡大表示の指令または縮小表示の指令に対応付けられ、これらの操作が検出された場合、例えば、110%や120%などの所定の拡大率、または、1/1.1倍や1/1.2倍などの所定の縮小率で、表示画像の拡大縮小処理が行われる。
【００５７】
図５は、図４の表示ウィンドウ８１に対して、約1.46倍（1.1の４乗倍）された画像が表示されている表示ウィンドウ１０１であり、図６は、図４に対して、約1.95倍（1.1の７乗倍）された画像が表示されている表示ウィンドウ１１１であり、更に、図７は、図４に対して、約10.8倍（1.1の25乗倍）された画像が表示されている表示ウィンドウ１２１である。
【００５８】
図４に示される表示ウィンドウ８１では、図面の全体が表示されているが、例えば、文字などの細かい部分が判別しにくい。また、図７の表示ウィンドウ１２２では、例えば、図面を構成する線分の交点の位置や文字のフォントなどの詳細な部分を確認することができるが、この部分が、全体のどの位置であるかは分からない。したがって、ユーザにとっては、ある程度小刻みの倍率で、表示ウィンドウ内の画像の拡大縮小を指令することができるようになされていると好適である。
【００５９】
拡大を指令する１回の操作入力に基づいて、表示画像が、1.1倍拡大されて表示され、縮小を指令する１回の操作入力に基づいて、表示画像が、1/1.1倍縮小されて表示されるものとした場合、図４の表示ウィンドウ８１が表示されている状態で、拡大表示の指令が４回入力された場合、最終的に、図５の表示ウィンドウ１０１が表示され、図５の表示ウィンドウ１０１が表示されている状態で、拡大表示の指令が３回入力された場合、最終的に、図６の表示ウィンドウ１１１が表示され、更に、図６の表示ウィンドウ１１１が表示されている状態で、拡大表示の指令が１８回入力された場合、最終的に、図７の表示ウィンドウ１２１が表示される。なお、縮小表示される場合においても、縮小表示の指令の回数に基づいて、ユーザの所望の倍率の縮小表示が行われる。
【００６０】
もし、拡大または縮小を指令する操作入力が連続してなされた場合において、１回の操作入力に対して、それぞれの倍率における描画処理が終了するまで、次の描画処理が開始できないようになされているのであれば、図４に示される表示ウィンドウ８１から、図５に示される表示ウィンドウ１０１の表示まで拡大表示が行われるとき、４回の描画処理が必要となり、図５に示される表示ウィンドウ１０１から、図６に示される表示ウィンドウ１１１の表示まで拡大表示が行われるとき、３回の描画処理が必要となり、図６に示される表示ウィンドウ１１１から、図７に示される表示ウィンドウ１２１まで拡大表示が行われるとき、１８回の描画処理が必要となってしまう。なお、縮小表示される場合においても、それぞれの倍率における描画処理が終了するまで、次の描画処理が開始できないようになされているのであれば、同様に、ユーザの所望の倍率まで縮小表示を行うためには、複数回の描画処理が必要となってしまう。
【００６１】
また、拡大縮小の指令がなされたときのみならず、表示位置の移動（スクロール）が指令された場合においても、拡大縮小処理と同様の現象が発生する。すなわち、ユーザの１回の操作入力に基づく移動距離が予め定められ、移動を指令する操作入力が連続して入力された場合においても、それぞれの位置における描画処理が終了するまで、次の描画処理が開始できないようになされているのであれば、ユーザの所望する位置の画像が表示されるまでには、（ユーザの所望する移動距離／１回の操作入力に基づく移動距離）に対応する回数の描画処理が必要となってしまう。
【００６２】
図７の表示ウィンドウ１２２では、１つのウィンドウに表示されるデータが少ないため、描画するのに時間がかからない。一方、図５に示される表示ウィンドウ８１では、１つのウィンドウに表示されるデータが多いため、描画するのに時間がかかってしまう。
【００６３】
すなわち、従来のように、一度指令された描画処理が終了するまで、次の描画処理が開始されないようになされている場合、特に、低い拡大率において画像を拡大または縮小させたり、画像の表示位置を移動させるとき、操作に対する表示の応答性が悪くなる。
【００６４】
そこで、次の画像の描画を指令する操作入力があった場合、操作取得部６４は、操作メモリ６５に次の画像の描画を指令する操作入力を示す情報を記録し、表示制御部６６は、操作メモリ６５を参照して、次の画像の描画を指令する操作入力が操作メモリ６５に記憶されているか否かを判断し、次の画像の描画を指令する操作入力が操作メモリ６５に記憶されている場合、現在描画処理中の画像データがあるときには、その描画処理を終了させ、新たな描画処理を開始させる。
【００６５】
ところで、高速かつ連続で、次の描画を指令する操作が入力された場合、その操作入力に即時応答させて、現在の描画処理を終了させ、次の描画の開始を行わせるようにしてしまっては、実際に表示される画像の描画の開始後すぐにその描画が終了されてしまうため、ユーザが、現在の拡大率または表示位置を確認することができない。このような場合、ユーザが所望する拡大率または表示位置となるように操作入力を行うことが困難になってしまうため、操作性が悪くなってしまう。
【００６６】
したがって、次の描画を指令する操作が入力された場合、操作取得部６４は、ユーザが現在の拡大率または表示位置を確認することができる程度までの描画処理が実行可能な所定の時間が経過したのち、操作メモリ６５に次の画像の描画を指令する操作入力を示す情報を記憶させる。このことにより、操作に対する表示の応答性と、ユーザが所望する拡大率または表示位置となるように操作入力を行うための操作性を両立させるようにすることが可能となる。
【００６７】
なお、１回の操作入力に対する拡大率もしくは縮小率、または、移動距離は、表示画面中の設定ボタン９１を選択し、図示しない設定ウィンドウを表示させて、ユーザにより設定可能としても良い。また、マウス４２のスクロールボタンの操作が表示画像の拡大表示もしくは縮小表示、または、表示位置の移動に対応されている場合、１回の操作に対応する拡大率もしくは縮小率、または、移動距離と、スクロールボタンの回転角とを対応させるようにしても良い。
【００６８】
また、操作取得部６４が、操作バッファから検出した次の画像の描画を指令する操作入力を示す情報を操作メモリ６５に記録するまでの待ち時間は、予め定められているものとしても、ユーザにより設定可能としても良いし、１回の操作入力に対する拡大率もしくは縮小率、または、移動距離の設定値に基づいて算出されるようにしても良い。
【００６９】
次に、図８のフローチャートを参照して、操作取得処理について説明する。ここでは、上述したように、操作入力部６２の処理は、クラスライブラリ４８を呼び出すことにより提供される処理であり、アプリケーションプログラム４９の処理にかかわらず、操作入力部６２の処理により、入力デバイスドライバ６１がマウス４２やキーボード４３から取得した操作入力に対応する情報が操作バッファ６３に逐次保存されるものとして説明する。
【００７０】
ステップＳ１において、操作取得部６４は、操作バッファ６３を参照する。
【００７１】
操作取得部６４は、例えば、操作バッファ６３に、「マウスの左ボタンが押下された状態で、表示画面中の××の領域が選択された」後、「マウスのスクロールボタンが上方向にスクロールされた」という操作を示す情報が保存されていた場合、表示制御部６６の処理により表示されている画像のうち、選択された部分に対応する画像を拡大表示させるという操作入力を検出したり、「マウスカーソルの位置が表示画面上の位置Ａである状態で、マウスの左ボタンがクリックされた」という操作を示す情報が保存されていた場合、表示制御部６６の処理により表示されている画像の位置Ａに対応する個所がウィンドウのスクロールバーであれば、そのスクロールバーに対する操作、すなわち、表示画像の表示個所の移動（スクロール）の指令を検出するようになされているので、ステップＳ２において、操作取得部６４は、操作バッファ６３から、次の画像の描画を指令する操作入力が検出されたか否かを判断する。
【００７２】
ステップＳ２において、次の画像の描画を指令する操作入力が検出されなかったと判断された場合、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。
【００７３】
ステップＳ２において、次の画像の描画を指令する操作入力が検出されたと判断された場合、ステップＳ３において、操作取得部６４は、内部に有する図示しないカウンタ（またはタイマ）を用いて、所定の時間だけカウントする。
【００７４】
後述する処理により、次の画像データの描画を指令する操作入力に対応する情報が、操作メモリ６５から検出された場合、現在の描画処理が終了されて、次の画像データの描画処理が開始される。もし、ステップＳ３において、所定の時間だけカウントすることなく、ユーザの操作入力が操作メモリ６５に記憶されて、検出された操作入力に対して即時に現在の描画を中止するように制御されてしまった場合、表示画像の拡大縮小、または、移動などを指令する操作入力が連続して行われてしまっては、ユーザが現在の表示データの大きさや位置を認識するよりも早く次の描画が行われてしまうので、連続した操作入力後、ユーザの意図と異なる倍率の画像が表示されたり、ユーザの意図と異なる位置の画像が表示されてしまう恐れがある。このようなことがないように、ステップＳ３においては、ユーザが現在の拡大率または表示位置を確認することができる程度までの描画処理が実行可能な所定の時間がカウントされるようになされている。
【００７５】
また、ステップＳ３においてカウントされる時間は、１回の操作入力に対する拡大率または縮小率、もしくは、画像の移動距離によって変動する値としてもよい。例えば、少ない操作回数で最大倍率から最小倍率まで倍率が変更されるように、１回の操作入力に対する拡大率もしくは縮小率が大きく設定されているとき、または、少ない操作回数で画像の一端から他端まで移動可能なように、１回の操作入力に対する画像の移動距離の設定が大きく設定されているとき、ステップＳ３においてカウントされる所定の時間が短く設定されていると、即時応答性には優れているが、少ない回数の操作により、短時間に拡大率または表示位置が大きく変更されてしまい、ユーザが、現在の表示倍率または表示位置を確認しながら操作を行うことが困難になってしまう恐れがあるので、カウントされる所定の時間を長く設定するようにすれば好適である。また、最大倍率から最小倍率まで倍率が変更されるための操作回数が多くなるように、１回の操作入力に対する拡大率もしくは縮小率に小さな値が設定されているとき、または、画像の一端から他端まで移動するために必要な操作回数が多くなるように、１回の操作入力に対する画像の移動距離に小さな値が設定されているとき、ステップＳ３においてカウントされる所定の時間が長ければ、ユーザの所望する表示倍率または表示位置で画像が表示がされるまでに時間がかかってしまい、操作に対する即時応答性が悪くなるので、カウントされる所定の時間が短く設定されるようにすれば好適である。
【００７６】
例えば、ステップＳ３においてカウントされる時間は、次の式（１）で示されるように、１回の操作入力に対する拡大率もしくは縮小率、または、画像の移動距離の設定値に比例するように設定されるものとしても良い。
【００７７】
Ｔ＝ａ×Ｐ＋ｂ・・・（１）
【００７８】
ここで、Ｔは、ステップＳ３においてカウントされる時間であり、Ｐは、１回の操作入力に対する拡大率もしくは縮小率、または、画像の移動距離であり、ａおよびｂは、実験的または経験的に定められる定数である。
【００７９】
ステップＳ４において、操作取得部６４は、検出された操作バッファの状態、すなわち、次の画像の描画の指令を、操作メモリ６５に供給して書き込み、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。
【００８０】
このような処理により、ユーザの操作入力のうち、次の画像の描画の指令が抽出されて、操作メモリ６５に書き込まれるので、後述する処理において、表示制御部６６により、操作メモリ６５が参照されて、次の画像の描画の指令があったか否かに基づいて、画像の描画処理が制御される。
【００８１】
なお、ここでは、上述したように、操作入力部６２の処理はクラスライブラリ４８により提供される処理であり、アプリケーションプログラム４９の処理にかかわらず、操作入力部６２の処理により、入力デバイスドライバ６１がマウス４２やキーボード４３から取得した操作入力に対応する情報が操作バッファ６３に逐次保存されるものとして説明したが、操作入力部６２の処理がアプリケーションプログラム４９の処理として提供されている場合、ステップＳ１の処理の前に、操作入力部６２が、入力デバイスドライバ６１がマウス４２やキーボード４３から取得した操作入力に対応する情報を操作バッファ６３に逐次保存する処理を実行するステップが加えられるのは言うまでもない。
【００８２】
次に、図９のフローチャートを参照して、画像表示処理について説明する。
【００８３】
ステップＳ２１において、表示制御部６６は、操作バッファ６３を参照する。
【００８４】
ステップＳ２２において、表示制御部６６は、操作バッファ６３に保存されているユーザの操作入力を示す情報を基に、例えば、画像データに対応するファイルを選択して表示させるためのクリック操作など、画像表示を指令する操作入力が検出されたか否かを判断する。ステップＳ２２において、画像表示を指令する操作入力が検出されなかったと判断された場合、処理は、ステップＳ２１に戻り、それ以降の処理が繰り返される。
【００８５】
ステップＳ２２において、画像表示を指令する操作入力が検出されたと判断された場合、ステップＳ２３において、表示制御部６６は、表示データ生成部６７を制御して、ユーザに指定された画像データを、画像データメモリ６８から読み出させる。
【００８６】
ステップＳ２４において、表示制御部６６は、表示データ生成部６７を制御し、ユーザの操作入力に基づいて画像データを生成させる。
【００８７】
ステップＳ２５において、表示データ生成部６７は、画像を表示させるための描画処理を開始する。すなわち、表示データ生成部６７は、ステップＳ２４において、例えば、図１０に示される表示ウィンドウ１５１に表示されている、四角形１６１、円１６２、曲線１６３、および、複数の直線により構成された線１６４により構成される画像データを生成した場合、四角形１６１、円１６２、曲線１６３、および、線１６４を、順次、内部のフレームメモリに書き込む処理を開始する。表示処理部６９は、フレームメモリに書き込まれた図形をディスプレイ４４に表示させるために表示デバイスドライバ７０を制御する。
【００８８】
ステップＳ２６において、表示制御部６６は、操作バッファ６３を参照し、操作バッファ６３に画像表示の終了を指令する操作入力が記憶されているか否かを判断する。
【００８９】
ステップＳ２６において、操作バッファ６３に画像表示の終了を指令する操作入力が記憶されていないと判断された場合、ステップＳ２７において、表示制御部６６は、操作メモリ６５を参照し、操作メモリ６５に次の画像の描画を指令する操作入力が記憶されているか否かを判断する。
【００９０】
ステップＳ２７において、操作メモリ６５に次の画像の描画を指令する操作入力が記憶されていないと判断された場合、ステップＳ２８において、表示制御部６６は、操作メモリ６５を参照し、例えば、新たな線分や図形の描画など、操作メモリ６５に記憶されているユーザの操作入力に基づいた処理を実行させるために表示データ生成部６７を制御し、処理は、ステップＳ２６に戻り、それ以降の処理が繰り返される。
【００９１】
ステップＳ２７において、操作メモリ６５に次の画像の描画を指令する操作入力が記憶されていると判断された場合、ステップＳ２９において、表示制御部６６は、現在描画処理中の画像の描画処理があれば、表示データ生成部６７を制御して、その描画処理を終了させ、処理は、ステップＳ２４に戻り、それ以降の処理が繰り返される。
【００９２】
例えば、図１０に示される表示ウィンドウ１５１内の画像の描画が終了されたあと、ユーザにより拡大表示が指令された場合、操作メモリ６５に次の画像の描画を指令する操作入力が記憶されるので、次のステップＳ２４において、所定の拡大率で拡大された画像に対応する画像データが生成されて、ステップＳ２５において、生成された画像の描画が開始される。そして、図１１に示されるように、図１０の四角形１６１を拡大した四角形１８１と、図１０の線１６４を拡大した線１８２が描画された状態で、ユーザが、現在の画像の拡大率を認識して、画像の拡大表示を指令する操作を更に入力したときに、図８を用いて説明した操作取得処理のステップＳ４の処理により、画像の拡大表示の指令が操作メモリ６５に更に書き込まれる。そして、ステップＳ２７の処理により、操作メモリ６５に記憶されている画像の拡大表示の指令が検出された場合、ステップＳ２９の処理において、表示制御部６６は、表示データ生成部６７を制御して、図１０の円１６２および曲線１６３に対応する拡大図形を描画させることなく、描画処理を終了させ、処理は、ステップＳ２４に戻る。
【００９３】
そして、次のステップＳ２４において、所定の拡大率で拡大された画像に対応する画像データが生成されて、ステップＳ２５において、生成された画像の描画が開始され、図１２に示されるような拡大画像を表示した表示ウィンドウ１９１が表示される。なお、図１２の表示ウィンドウ１９１に表示されている四角形２０１、円２０２、曲線２０３、および、複数の直線により構成された線２０４により構成される画像データの描画処理中に、例えば、拡大、縮小、またはスクロールなど、次の画像の描画を指令する操作入力がなされ、図８を用いて説明した操作取得処理のステップＳ４の処理により、画像の拡大表示の指令が操作メモリ６５に更に書き込まれ、ステップＳ２７の処理により、操作メモリ６５に記憶されている画像の拡大表示の指令が検出された場合、四角形２０１、円２０２、曲線２０３、および、複線２０４により構成される画像データが最後まで描画されていなくても、描画処理が終了されて、次の画像データが描画される。
【００９４】
そして、ステップＳ２６において、操作バッファ６３に画像表示の終了を指令する操作入力が記憶されていると判断された場合、処理が終了される。
【００９５】
このような処理により、ユーザの操作に対する即時応答性と、ユーザが所望の拡大率で画像を表示させたり、所望の位置の画像を表示させるための操作性とを両立させることが可能となる。
【００９６】
なお、少なくとも図８のステップＳ３の処理により所定の時間だけカウントされている間に描画される内容を基に、ユーザが、現在の表示の拡大率や、現在の表示位置をよりよく理解することができるように、換言すれば、ステップＳ３の処理によりカウントされる時間が短くても、ユーザが、現在の表示の拡大率や、現在の表示位置を認識することができるように、画像データの構成要素に所定の優先順位を付け、その優先順位を基に、画像の描画の順番を制御するようにしても良い。
【００９７】
例えば、図４乃至図６を用いて説明したように、拡大率がそれほど大きくないために、描画内容が多く、全て描画するために時間がかかってしまうような図面データなどにおいて、文字が優先的に早く描画されても、ユーザが、現在の表示の拡大率や、現在の表示位置を認識する助けにはなり難い。それに対して、壁面を構成する直線などが優先的に描画されることにより、ユーザは、現在の表示の拡大率や、現在の表示位置をよりよく認識することができる。
【００９８】
描画される画像データが、図４乃至図７を用いて説明したような設計図面データである場合、図面データを構成する線分や図形に属性情報が付加されていることが多いので、このような属性情報を利用して、描画の順番を制御することができるようにしても良い。これに対して、図面データを構成する線分や図形に属性情報が付加されていない場合、例えば、長い直線や大きな範囲にわたって描かれている図形などを優先的に描画するようにしたり、ユーザの指令による拡大、縮小、または、移動による変形率の低い図形を優先的に描画するようにしても良い。
【００９９】
また、図９のステップＳ２７の処理では、表示制御部６６は、操作メモリ６５を参照し、次の画像の描画を指令する操作入力が記憶されているか否かを判断するようになされているが、例えば、表示制御部６６が、操作バッファ６３に記憶されている情報を基に、次の画像の描画を指令する操作入力が記憶されているか否かを判断することができるようになされている場合や、操作入力部６２および操作バッファ６２が、操作取得部６４および操作メモリ６５の機能を含む場合などは、ステップＳ２７の処理において、表示制御部６６は、操作メモリ６５に代わって、操作バッファ６３を参照して、次の画像の描画を指令する操作入力が記憶されているか否かを判断し、操作取得部６４および操作メモリ６５を省略するようにしても良い。
【０１００】
以上説明した処理は、あらゆるプラットフォームに適用可能であり、更に言えば、あらゆるプラットフォーム上で起動するソフトウェアにおいて実行可能であり、例えば、建築図面や設計図面を作成するためのCAD（computer aided design）専用機や、CADAM（computer graphics augmented design and manufacturing system）専用機などにおいても適用可能であることは言うまでもない。
【０１０１】
すなわち、プラットフォームやOSの種類にかかわらず、図３を用いて説明した機能ブロック（ただし、上述したように、操作取得部６４および操作メモリ６５を省略することが可能な場合もある）を有する情報処理装置において、本発明は適用可能であるし、図３を用いて説明した機能ブロックを、ハードウェアにて実現する情報処理装置においても、本発明は適用可能である。
【０１０２】
上述した一連の処理を実行するソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１０３】
この記録媒体は、図１に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク２１（フレキシブルディスクを含む）、光ディスク２２（CD-ROM（Compact Disk-Read Only Memory），DVD（Digital Versatile Disk）を含む）、光磁気ディスク２３（ＭＤ（Mini-Disk)（商標）を含む）、もしくは半導体メモリ２４などよりなるパッケージメディアなどにより構成される。
【０１０４】
また、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１０５】
また、本明細書において、複数のプログラムを実行することによって装置が実現することができると説明されている処理と同様の処理が、１つのプログラムによって実行可能である場合、本発明は、１つのプログラムによって同様の処理を実行する装置や、対応する１つのプログラムをも含むものである。
【図面の簡単な説明】
【０１０６】
【図１】本発明を適用したパーソナルコンピュータの構成を示すブロック図である。
【図２】ソフトウェアスタックについて説明するための図である。
【図３】図１のパーソナルコンピュータにおいて本発明を適用した処理が実行される場合の機能ブロック図である。
【図４】表示されるウィンドウの例を示す図である。
【図５】図４のウィンドウにおいて表示されている画像を拡大表示した場合について説明するための図である。
【図６】図５のウィンドウにおいて表示されている画像を更に拡大表示した場合について説明するための図である。
【図７】図６のウィンドウにおいて表示されている画像を更に拡大表示した場合について説明するための図である。
【図８】操作取得処理について説明するためのフローチャートである。
【図９】画像表示処理について説明するためのフローチャートである。
【図１０】図９の画像表示処理において表示される画像を説明するための図である。
【図１１】図９の画像表示処理において表示される画像を説明するための図である。
【図１２】図９の画像表示処理において表示される画像を説明するための図である。
【符号の説明】
【０１０７】
１    パーソナルコンピュータ
１１    CPU
１４    入力部
１５    ROM
１６    RAM
１７    表示部
１８    HDD
４１    OS
４５    ドライバ
４６    メモリ
４７    インタプリタ
４８    クラスライブラリ
４９    アプリケーションプログラム
６１    入力デバイスドライバ
６２    操作入力部
６３    操作バッファ
６４    操作取得部
６５    操作メモリ
６６    表示制御部
６７    表示データ生成部
６８    表示データメモリ
６９    表示処理部
７０    表示デバイスドライバ
【図１】
2005038345.tif 000003
【図２】
2005038345.tif 000004
【図３】
2005038345.tif 000005
【図４】
2005038345.tif 000006
【図５】
2005038345.tif 000007
【図６】
2005038345.tif 000008
【図７】
2005038345.tif 000009
【図８】
2005038345.tif 000010
【図９】
2005038345.tif 000011
【図１０】
2005038345.tif 000012
【図１１】
2005038345.tif 000013
【図１２】
2005038345.tif 000014