(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
ここで、上述したようなソフトウェアの中には、描画対象のオブジェクトをその種類に応じてレイヤに振り分け、それらのレイヤを重畳して1つの表示領域に表示するものがある。このようなソフトウェアは、画面上の位置を指定する情報の入力に応じて、その位置に対応するオブジェクトを複数のレイヤから検索して選択する。そして、このようなソフトウェアは、選択したオブジェクトに関する処理を実行する。
【0007】
ところが、このようなソフトウェアにおいて、オブジェクトの検索処理を実行する際に、各レイヤの描画情報を更新中の場合がある。これは、描画対象のオブジェクトに関する情報が更新されると、各レイヤの描画情報が更新されるためである。この場合、このようなソフトウェアは、各レイヤの描画情報の更新処理を終了した後でないと各レイヤの描画情報を参照できず、指定された位置に対応するオブジェクトの検索処理を開始できない。このため、このようなソフトウェアでは、画面上の位置を指定する情報が入力されてから、オブジェクトを選択して関連する処理を実行するまでに時間がかかる。つまり、このようなソフトウェアでは、オブジェクト選択に要する処理時間が長くなるという課題がある。特に、描画対象のオブジェクトの更新頻度が高い場合や、レイヤ数が多い場合に、この課題は顕著になる。
【0008】
しかしながら、上述した関連技術は、この課題を解決することができない。
【0009】
特許文献1に記載された関連技術は、航空機に関する各種類の情報を、互いに重畳されていない異なる表示領域に表示する。そのため、この関連技術では、1つの航空機選択イベントは、1つの表示領域で発生する。したがって、この関連技術は、航空機選択イベントが発生した表示領域の更新さえ終了していれば、航空機選択イベントに応じた航空機の検索処理を開始することができる。したがって、この関連技術は、描画対象のオブジェクトをその種類に応じてレイヤに振り分け、それらのレイヤを重畳表示するソフトウェアにおける上述の課題を解決するのに適していない。
【0010】
また、特許文献2に記載された関連技術は、各航空機を表すシンボルをその高度帯に応じて、互いに重畳されていない異なる描画領域に表示する。また、特許文献2には、描画した航空機を入力情報に応じて選択する処理については記載されていない。したがって、この関連技術は、描画対象のオブジェクトをその種類に応じてレイヤに振り分け、それらのレイヤを重畳表示するソフトウェアにおける上述の課題を解決するのに適していない。
【0011】
本発明は、上述の課題を解決するためになされたものである。すなわち、本発明は、描画対象のオブジェクトをその種類に応じてレイヤに振り分け、それらのレイヤを重畳表示するソフトウェアにおいて、オブジェクト選択に要する処理時間を短縮する技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明のグラフィカルユーザインタフェース装置は、描画対象のオブジェクトに関する情報を取得するオブジェクト情報取得部と、前記オブジェクトに関する情報を格納するオブジェクト情報格納部と、前記オブジェクトを、前記オブジェクトに関する情報が示す種類に応じて1つ以上のレイヤに振り分け、前記オブジェクトに関する情報が示す表示位置に基づき前記オブジェクトを配置した前記各レイヤの描画情報を生成するレイヤ描画情報生成部と、前記各レイヤの描画情報を重畳して表示装置の画面に表示する重畳表示部と、前記画面上の位置を指定する画面位置指定情報を入力装置から取得する画面位置指定情報入力部と、前記画面位置指定情報に対応する表示位置のオブジェクトを前記オブジェクト情報格納部から検索し、検索したオブジェクトを選択するオブジェクト選択部と、前記オブジェクト選択部によって選択されたオブジェクトに関する処理を実行する処理実行部と、を備える。
【0013】
また、本発明の方法は、描画対象のオブジェクトに関する情報を取得してオブジェクト情報格納部に格納し、前記オブジェクトを、前記オブジェクトに関する情報が示す種類に応じて1つ以上のレイヤに振り分け、前記オブジェクトに関する情報が示す表示位置に基づき前記オブジェクトを配置した前記各レイヤの描画情報を生成し、前記各レイヤの描画情報を重畳して表示装置の画面に表示し、前記画面上の位置を指定する画面位置指定情報を入力装置から取得すると、前記画面位置指定情報に対応する表示位置のオブジェクトを前記オブジェクト情報格納部から検索し、検索したオブジェクトを選択し、選択したオブジェクトに関する処理を実行する。
【0014】
また、本発明のプログラムは、描画対象のオブジェクトに関する情報を取得してオブジェクト情報格納部に格納するオブジェクト情報取得ステップと、前記オブジェクトを、前記オブジェクトに関する情報が示す種類に応じて1つ以上のレイヤに振り分け、前記オブジェクトに関する情報が示す表示位置に基づき前記オブジェクトを配置した前記各レイヤの描画情報を生成するレイヤ描画情報生成ステップと、前記各レイヤの描画情報を重畳して表示装置の画面に表示する重畳表示ステップと、前記画面上の位置を指定する画面位置指定情報を入力装置から取得する画面位置指定情報入力ステップと、前記画面位置指定情報に対応する表示位置のオブジェクトを前記オブジェクト情報格納部から検索し、検索したオブジェクトを選択するオブジェクト選択ステップと、前記オブジェクト選択ステップで選択されたオブジェクトに関する処理を実行する処理実行ステップと、をコンピュータ装置に実行させる。
【発明の効果】
【0015】
本発明は、描画対象のオブジェクトをその種類に応じてレイヤに振り分け、それらのレイヤを重畳表示するソフトウェアにおいて、オブジェクト選択に要する処理時間を短縮する技術を提供することができる。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【0018】
本発明の実施の形態としてのグラフィカルユーザインタフェース装置1の機能ブロック構成を
図1に示す。
図1において、グラフィカルユーザインタフェース装置1は、オブジェクト情報取得部11と、オブジェクト情報格納部12と、レイヤ描画情報生成部13と、重畳表示部14とを備える。さらに、グラフィカルユーザインタフェース装置1は、画面位置指定情報入力部15と、オブジェクト選択部16と、処理実行部17とを備える。
【0019】
ここで、グラフィカルユーザインタフェース装置1は、
図2に示すようなハードウェア要素によって構成可能である。
図2において、グラフィカルユーザインタフェース装置1は、CPU(Central Processing Unit)1001、メモリ1002、表示装置1003、および、入力装置1004を含むコンピュータ装置によって構成される。メモリ1002は、RAM(Random Access Memory)、ROM(Read Only Memory)、補助記憶装置(ハードディスク等)によって構成される。表示装置1003は、情報を表示する画面を有する装置によって構成される。入力装置1004は、画面上の位置を指定する情報を入力可能なマウスやキーボード等の装置によって構成される。この場合、オブジェクト情報格納部12は、メモリ1002によって構成される。また、その他の各機能ブロックは、メモリ1002に格納されるコンピュータ・プログラムおよび各種データを読み込んで実行するとともに、表示装置1003および入力装置1004を制御するCPU1001によって構成される。なお、グラフィカルユーザインタフェース装置1およびその各機能ブロックのハードウェア構成は、上述の構成に限定されない。
【0020】
次に、グラフィカルユーザインタフェース装置1の各機能ブロックの詳細について説明する。
【0021】
オブジェクト情報取得部11は、描画対象のオブジェクトに関する情報を取得する。ここで、描画対象のオブジェクトに関する情報には、その種類を導出可能な情報および画面上での表示位置を導出可能な情報が含まれる。あるいは、描画対象のオブジェクトに関する情報には、その種類そのものを表す情報および画面上での表示位置そのものを表す情報が含まれていてもよい。なお、画面上での表示位置とは、画面上での位置を表す座標系(以降、画面座標系とも記載する)で表されていてもよい。また、描画対象のオブジェクトに関する情報には、オブジェクトの識別IDや、オブジェクトに関連するその他の情報が含まれていてもよい。
【0022】
また、例えば、オブジェクト情報取得部11は、メモリ1002からこれらの情報を取得してもよい。また、オブジェクト情報取得部11は、ネットワークを介して接続される他の装置からこれらの情報を取得してもよい。また、例えば、オブジェクト情報取得部11は、これらの情報を所定のタイミング毎に取得してもよい。あるいは、オブジェクト情報取得部11は、これらの情報について更新があることを外部から通知されたタイミングで、これらの情報を取得してもよい。
【0023】
オブジェクト情報格納部12は、オブジェクト情報取得部11によって取得された描画対象のオブジェクトに関する情報を格納する。
【0024】
レイヤ描画情報生成部13は、オブジェクト情報格納部12に格納される情報が示す各オブジェクトを、その種類に応じて1つ以上のレイヤに振り分ける。
【0025】
また、レイヤ描画情報生成部13は、振り分けた各オブジェクトを、その画面上での表示位置に基づき該当するレイヤに配置することにより、各レイヤの描画情報を生成する。ここで、各レイヤの描画情報は、略同一のサイズおよび形状を表していてもよい。
【0026】
重畳表示部14は、各レイヤの描画情報を重畳して表示装置1003の画面に表示する。
【0027】
画面位置指定情報入力部15は、画面上の位置を指定する画面位置指定情報を、入力装置1004から取得する。取得される画面位置指定情報は、前述の画面座標系で表されていてもよい。
【0028】
オブジェクト選択部16は、画面位置指定情報に対応する表示位置のオブジェクトを、オブジェクト情報格納部12から検索する。そして、オブジェクト選択部16は、検索したオブジェクトを選択する。例えば、オブジェクト選択部16、画面位置指定情報が示す位置から所定範囲に含まれる表示位置に関連付けられたオブジェクトを、オブジェクト情報格納部12から検索して選択してもよい。
【0029】
ここで、オブジェクト情報格納部12には、画面位置指定情報に対応する表示位置のオブジェクトとして、複数のオブジェクトに関する情報が格納されている場合が考えられる。例えば、画面位置指定情報が示す位置から所定範囲に含まれる表示位置に関連付けられたオブジェクトが、2つ以上存在する場合等である。この場合、オブジェクト選択部16は、それらの複数のオブジェクトを選択可能に表示装置1003に表示してもよい。そして、この場合、オブジェクト選択部16は、選択可能な表示に対して入力装置1004を介して入力される情報が示すオブジェクトを選択してもよい。
【0030】
処理実行部17は、オブジェクト選択部16によって選択されたオブジェクトに関する処理を実行する。例えば、オブジェクト情報格納部12に、各オブジェクトに関する詳細情報が格納されているとする。この場合、処理実行部17は、選択されたオブジェクトに関する詳細情報をオブジェクト情報格納部12から取得して表示する処理を実行してもよい。この場合、処理実行部17は、画面の一部に詳細情報を表示する領域を形成し、その領域に詳細情報を表示してもよい。
【0031】
以上のように構成されたグラフィカルユーザインタフェース装置1の動作について、図面を参照して説明する。
【0032】
まず、グラフィカルユーザインタフェース装置1のオブジェクト表示動作を
図3に示す。この動作は、所定のタイミング毎、または、描画対象のオブジェクトに関する情報が更新される度に実行される。
【0033】
図3では、まず、オブジェクト情報取得部11は、描画対象のオブジェクトに関する情報を取得し、オブジェクト情報格納部12に格納する(ステップS11)。
【0034】
次に、レイヤ描画情報生成部13は、オブジェクト情報格納部12に格納される情報が示す各オブジェクトを、その種類に応じて1つ以上のレイヤに振り分ける(ステップS12)。
【0035】
次に、レイヤ描画情報生成部13は、振り分けた各オブジェクトを、その画面上での表示位置に基づき配置した各レイヤの描画情報を生成する(ステップS13)。
【0036】
次に、重畳表示部14は、各レイヤの描画情報を重畳し、表示装置1003の画面に表示する(ステップS14)。
【0037】
以上で、グラフィカルユーザインタフェース装置1は、オブジェクト表示動作を終了する。
【0038】
次に、グラフィカルユーザインタフェース装置1のオブジェクト選択動作を
図4に示す。この動作は、画面位置指定情報が入力装置1004から入力されると実行される。
【0039】
まず、画面位置指定情報入力部15は、入力装置1004から画面位置指定情報を取得する(ステップS21)。
【0040】
次に、オブジェクト選択部16は、画面位置指定情報に対応する表示位置のオブジェクトを、オブジェクト情報格納部12から検索し、選択する(ステップS22)。
【0041】
次に、処理実行部17は、オブジェクト選択部16によって選択されたオブジェクトに関する処理を実行する(ステップS23)。
【0042】
以上で、グラフィカルユーザインタフェース装置1は、オブジェクト選択動作を終了する。
【0043】
このようなグラフィカルユーザインタフェース装置1の動作を模式的に
図5に示す。
図5に示すように、描画対象のオブジェクトに関する情報は、ステップS11で取得され、オブジェクト情報格納部12に格納される。たとえば、
図5において、オブジェクト情報格納部12は、描画対象のオブジェクトに関する情報を格納する表として模式的に示されている。この表では、左列は、オブジェクトの種類を表す情報を格納している。ここでは、「★」、「■」、「●」の図形が、オブジェクトの種類を表している。また、その他の各列は、オブジェクトの表示位置および各種の詳細情報をそれぞれ格納している。
【0044】
そして、オブジェクト情報格納部12に格納された描画対象のオブジェクトに関する情報は、ステップS12で、種類に応じてレイヤに振り分けられる。そして、レイヤに振り分けられた各オブジェクトは、ステップS13で、表示位置に基づきレイヤに配置され、各レイヤの描画情報が生成される。そして、各レイヤの描画情報は、ステップS14で重畳されて表示装置1003の画面に表示される。
【0045】
また、
図5において、各レイヤの描画情報が重畳表示された画面に対して、ステップS21で、入力装置1004を介して画面位置指定情報が入力される。そして、ステップS22で、入力された画面位置指定情報に対応する表示位置のオブジェクトが、オブジェクト情報格納部12から検索され選択される。そして、ステップS23で、選択されたオブジェクトに関する処理が実行される。
【0046】
図5のステップS22に示したように、本実施の形態では、オブジェクト選択部16は、画面位置指定情報に対応する表示位置を示すオブジェクトを、オブジェクト情報格納部12から検索する。このため、オブジェクト選択部16は、
図5のステップS11でオブジェクト情報格納部12が更新されても、ステップS12〜S13での各レイヤの描画情報の生成処理が完了するのを待つことなく、ステップS22のオブジェクトの選択処理を開始できる。また、オブジェクト選択部16は、
図5のステップS13で生成される1つ以上のレイヤのそれぞれに対して検索処理を行う必要がなく、オブジェクト情報格納部12に対する1回の検索処理により、オブジェクトを選択できる。
【0047】
次に、グラフィカルユーザインタフェース装置1の動作を具体例で示す。この具体例では、グラフィカルユーザインタフェース装置1を、航空管制の用途のソフトウェアに適用した場合について説明する。
【0048】
まず、オブジェクト情報取得部11は、描画対象のオブジェクトとして、航空機、海岸線、航空路、または、空域等を表すオブジェクトに関する情報を取得し、オブジェクト情報格納部12に格納する(ステップS11)。
【0049】
この具体例では、取得される描画対象のオブジェクトに関する情報には、各オブジェクトの種類を表す情報と、各オブジェクトの表示位置を表す情報とが含まれる。なお、ここでは、オブジェクトの種類としては、航空機、海岸線、航空路、または、空域等の区別を表す情報が取得されるものとする。また、オブジェクトの表示位置を表す情報としては、オブジェクトの地図上での位置および画面に表示される地図範囲等に基づき、本装置の外部で事前に、画面座標系に換算された表示位置を表す情報が取得されるものとする。
【0050】
さらに、この具体例では、描画対象のオブジェクトに関する情報には、各オブジェクトを画面上に表示する際の形状やサイズを表す情報が含まれているものとする。例えば、航空機を表すオブジェクトに関する情報には、航空機を表すアイコンの形状や表示サイズを表す情報が含まれる。また、海岸線を表すオブジェクトに関する情報には、海岸線の形状や表示サイズを表す情報が含まれる。
【0051】
さらに、この具体例では、描画対象のオブジェクトに関する情報には、各オブジェクトの詳細情報が含まれているものとする。例えば、航空機を表すオブジェクトに関する詳細情報としては、地図上での座標やコールサインが含まれているものとする。
【0052】
次に、レイヤ描画情報生成部13は、描画対象のオブジェクトを、航空機、海岸線、航空路および空域等をそれぞれ描画するレイヤに振り分ける(ステップS12)。
【0053】
なお、レイヤ描画情報生成部13は、各オブジェクトを振り分けるレイヤとして、必ずしも1つの種類につき1つのレイヤを割り当てなくてもよい。例えば、レイヤ描画情報生成部13は、航空機を表すオブジェクトを、航空機を描画するレイヤに振り分け、その他の種類のオブジェクトを、背景を描画するレイヤに振り分けてもよい。
【0054】
次に、レイヤ描画情報生成部13は、航空機、海岸線、航空路および空域等をそれぞれ描画するレイヤにおいて、振り分けた各オブジェクトを表示位置に基づいて配置し、各レイヤの描画情報を生成する(ステップS13)。
【0055】
次に、重畳表示部14は、各レイヤの描画情報を重畳し、表示装置1003の画面に表示する(ステップS14)。
【0056】
次に、画面位置指定情報入力部15は、入力装置1004から画面位置指定情報を取得する(ステップS21)。
【0057】
次に、オブジェクト選択部16は、画面位置指定情報に対応する表示位置のオブジェクトを、オブジェクト情報格納部12から検索し、選択する(ステップS22)。
【0058】
ここでは、オブジェクト情報格納部12には、画面位置指定情報が示す位置から所定範囲に含まれる表示位置に関連付けられたオブジェクトとして、航空機を表す複数のオブジェクトが格納されていたとする。
【0059】
そこで、オブジェクト選択部16は、複数のオブジェクトが表す航空機の一覧を、選択可能に表示装置1003の画面に表示する。例えば、オブジェクト選択部16は、画面位置指定情報が示す位置の近傍に、該当する複数の航空機の選択リストを表示してもよい。
【0060】
そして、オブジェクト選択部16は、選択リストに対して入力装置1004を介して入力された情報に基づき、1つの航空機を表すオブジェクトを選択する。
【0061】
次に、処理実行部17は、オブジェクト選択部16によって選択された航空機を表すオブジェクトについて、その詳細情報(コールサインや地図上での座標など)を表す情報を表示する(ステップS23)。
【0063】
次に、本実施の形態の効果について述べる。
【0064】
本実施の形態としてのグラフィカルユーザインタフェース装置は、描画対象のオブジェクトをその種類に応じてレイヤに振り分け、それらのレイヤを重畳表示するソフトウェアにおいて、オブジェクト選択に要する処理時間を短縮することができる。
【0065】
その理由について説明する。本実施の形態では、オブジェクト情報取得部が、描画対象のオブジェクトに関する情報を取得して、オブジェクト情報格納部に格納する。そして、レイヤ描画情報生成部が、オブジェクトを、オブジェクトに関する情報が示す種類に応じて1つ以上のレイヤに振り分ける。そして、レイヤ描画情報生成部が、オブジェクトに関する情報が示す表示位置に基づきオブジェクトを配置した各レイヤの描画情報を生成する。そして、重畳表示部が、各レイヤの描画情報を重畳して表示装置の画面に表示する。そして、画面位置指定情報入力部が、画面位置指定情報を入力装置から取得すると、オブジェクト選択部が、画面位置指定情報に対応する表示位置を示すオブジェクトを、オブジェクト情報格納部から検索し、検索したオブジェクトを選択する。そして、処理実行部が、選択されたオブジェクトに関する処理を実行するからである。
【0066】
このように、本実施の形態は、各レイヤから、画面位置指定情報に対応する表示位置のオブジェクトを検索するのではなく、レイヤに振り分けられる前のオブジェクトに関する情報が格納されたオブジェクト情報格納部から、該当するオブジェクトの検索を行う。これにより、本実施の形態は、オブジェクトに関する情報の更新頻度が高くても、オブジェクト情報格納部の更新に伴う各レイヤの描画情報の更新処理完了を待ち合わせる必要がなく、オブジェクト選択に要する処理時間を大幅に短縮する。同様に、本実施の形態は、重畳表示されるレイヤの数が多くても、複数のレイヤそれぞれに対して検索処理を行う必要がなく、オブジェクト選択に要する処理時間を大幅に短縮する。
【0067】
なお、本発明の実施の形態において、本実施の形態のグラフィカルユーザインタフェース装置を、航空管制の用途のソフトウェアに適用する具体例について説明した。これに限らず、本実施の形態は、描画対象のオブジェクトをその種類に応じてレイヤに振り分け各レイヤを重畳表示するソフトウェアであれば、その他の用途のソフトウェアにも適用可能である。例えば、本実施の形態は、コンピュータ装置で実行されるゲームソフトウェアにも適用可能である。その場合、例えば、描画対象オブジェクトとしては、キャラクターや、背景を構成する事物が適用される。また、オブジェクトは、その種類に応じて、キャラクターを描画するレイヤと、背景を描画するレイヤとに振り分けられてもよい。このような場合、本実施の形態は、画面位置指定情報の入力に応じて選択されたキャラクターや背景の事物に関する情報を表示する際に、上述と同様の効果を奏する。
【0068】
また、上述した本発明の実施の形態において、オブジェクト情報取得部によって取得される描画対象のオブジェクトに関する情報には、オブジェクトの種類そのものを表す情報が含まれる例を中心に説明した。ただし、オブジェクト情報取得部によって取得される描画対象のオブジェクトに関する情報には、オブジェクトの種類そのものを表す情報が含まれていなくてもよい。その場合、オブジェクト情報取得部が、取得した情報に基づき導出した種類を表す情報を、オブジェクト情報格納部に格納してもよい。あるいは、レイヤ描画情報生成部が、オブジェクト情報格納部に格納された情報に基づき導出した種類に基づき、オブジェクトをレイヤに振り分けてもよい。
【0069】
また、上述した本発明の実施の形態において、オブジェクト情報取得部によって取得される描画対象のオブジェクトに関する情報には、画面座標系に変換されたオブジェクトの表示位置を表す情報が含まれる例を中心に説明した。ただし、オブジェクト情報取得部によって取得される描画対象のオブジェクトに関する情報には、画面座標系に変換されたオブジェクトの表示位置を表す情報が含まれていなくてもよい。その場合、オブジェクト情報取得部が、取得した情報に基づき画面座標系に変換した表示位置を表す情報を、オブジェクト情報格納部に格納してもよい。あるいは、オブジェクト選択部が、オブジェクト情報格納部に格納された情報に基づき画面座標系の表示位置を表す情報を算出した上で、検索処理を行ってもよい。あるいは、オブジェクト選択部が、入力装置から取得された画面位置指定情報を、オブジェクト情報格納部に格納された情報が表されている座標系に変換した上で、検索処理を行ってもよい。
【0070】
また、上述した本発明の実施の形態において、オブジェクト選択部が、該当する複数のオブジェクトを検索した場合に、それらを選択可能に表示し、入力情報に基づきそのうち1つを選択する例について説明した。これに限らず、オブジェクト選択部は、該当する複数のオブジェクトのうち、画面位置指定情報が示す位置に最も近い表示位置のオブジェクトを選択してもよい。あるいは、オブジェクト選択部は、該当する複数のオブジェクトのうち、重要度のより高いオブジェクトを選択してもよい。あるいは、オブジェクト選択部は、該当する複数のオブジェクトを全て選択して処理実行部に通知し、処理実行部は、選択された各オブジェクトに関連する処理を全て実行するようにしてもよい。
【0071】
また、上述した本発明の実施の形態において、グラフィカルユーザインタフェース装置の各機能ブロックが、記憶装置またはメモリに記憶されたコンピュータ・プログラムを実行するCPUによって実現される例を中心に説明した。これに限らず、各機能ブロックの一部、全部、または、それらの組み合わせが専用のハードウェアにより実現されていてもよい。
【0072】
また、上述した本発明の実施の形態において、グラフィカルユーザインタフェース装置の機能ブロックは、複数の装置に分散されて実現されてもよい。
【0073】
また、上述した本発明の各実施の形態において、各フローチャートを参照して説明したグラフィカルユーザインタフェース装置の動作を、本発明のコンピュータ・プログラムとしてコンピュータ装置の記憶装置(記憶媒体)に格納しておいてもよい。そして、係るコンピュータ・プログラムを当該CPUが読み出して実行するようにしてもよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコードあるいは記憶媒体によって構成される。
【0074】
また、本発明は、上述した実施の形態に限定されず、様々な態様で実施されることが可能である。