(57)【要約】  【課題】  オブジェクトの表示画面内において、オペレータが容易にオブジェクトの指定を行うことができる図形オブジェクト指定装置を提供する。  【解決手段】  図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定装置であって、オブジェクト情報とマウスカーソル位置を管理するオブジェクト管理部６と、マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するルール記憶部３と、キー入力とルールに従って、マウスカーソル移動トリガまたはオブジェクト指定トリガを発生するトリガ処理部４と、オブジェクト情報とトリガに基づいて、マウスカーソルの移動、または編集対象のオブジェクトの指定を行うオブジェクト指定部５とを備えた。  【選択図】  図１
2005275859.tif 000002
【特許請求の範囲】
【請求項１】
図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定装置であって、
前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するオブジェクト管理手段と、
マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するルール記憶手段と、
前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するトリガ処理手段と、
前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うオブジェクト指定手段と、
を備えてなる図形オブジェクト指定装置。
【請求項２】
請求項１に記載の図形オブジェクト指定装置であって、
前記ルールにはさらに、予め前記キー入力に対してマウスカーソルの移動先のオブジェクトの種類を割り当て、
前記トリガ処理手段は、前記マウスカーソル移動トリガにマウスカーソルが移動する方向とマウスカーソルの移動先のオブジェクトの種類を含め、
前記オブジェクト指定手段は、前記マウスカーソル移動トリガに従ってマウスカーソルの移動先の候補となるオブジェクトの種類を限定することを特徴とする図形オブジェクト指定装置。
【請求項３】
請求項１または請求項２に記載の図形オブジェクト指定装置であって、
さらに前記ルールを所定のフォーマットで記述したファイルを入力するルール入力手段を備えたことを特徴とする図形オブジェクト指定装置。
【請求項４】
図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定方法であって、
前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するステップと、
マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するステップと、
前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するステップと、
前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うステップと、
を備えてなる図形オブジェクト指定方法。
【請求項５】
図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定方法をコンピュータに実行させるために、コンピュータにより読取可能な媒体に記憶された図形オブジェクト指定プログラムであって、
前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するステップと、
マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するステップと、
前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するステップと、
前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うステップと、
をコンピュータに実行させることを特徴とする図形オブジェクト指定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＧＵＩ（Graphical Use Interface）を用いて図形オブジェクトを編集する図形編集装置の表示画面において、対象とする図形オブジェクトを指定する図形オブジェクト指定装置、図形オブジェクト指定方法、図形オブジェクト指定プログラムに関するものである。
【背景技術】
【０００２】
従来の図形編集装置と図形オブジェクト指定装置について説明する。図形編集装置は、様々な種類の図形のオブジェクトの組み合わせを編集する装置であり、図形編集装置の表示画面には編集の対象となるオブジェクトが表示される。例えば、矩形オブジェクト、円形オブジェクトなどである。図形編集装置のオペレータは何らかの処理をオブジェクトに対して行う際に、まず、図形編集装置に接続された図形オブジェクト指定装置を用いて処理の対象となるオブジェクトを指定し、指定したオブジェクトが図形編集装置に伝えられると処理が行われる。指定の方法として、例えばオペレータはマウスを移動することにより、マウスカーソルを任意のオブジェクト上に移動し、マウスに備えられたボタンを押すことにより、マウスカーソルが指し示すオブジェクトを指定する。
【０００３】
ここで、従来の図形編集装置の具体例として、論理回路設計ＣＡＤ（Computer Aided Design）装置を用いた場合について説明する。論理回路設計ＣＡＤ装置では、表示画面上に論理シンボルやその端子を表示している。論理回路の設計を行う際には、論理回路設計ＣＡＤ装置に接続された図形オブジェクト指定装置を用いて、ある論理シンボルの端子と他の論理シンボルの端子をマウスカーソルで指定することにより、端子同士の配線を指示する方法が用いられている。
【０００４】
図２３は、論理シンボルとマウスカーソルの一例を示す図である。ディスプレイ上には、例えば図２３に示すような論理シンボル８１が多数表示されるとともに、矢印等のマウスカーソル８０が表示される。オペレータは、マウス等を用いて、このマウスカーソル８０をディスプレイ上の所望の論理シンボルの端子、例えば端子８２の位置まで移動させ、その状態でマウス等に備えられたボタンを押して、トリガを図形オブジェクト指定装置に伝えることにより、そのマウスカーソルが指し示す端子が指定される。この指定を２つの端子について行うことにより、図形編集装置は指定された端子同士をディスプレイ上で配線し、信号線を示すネットで接続する。
【０００５】
なお、ＬＳＩ論理回路の設計において、端子を指定するための端子指定装置として、例えば、下記に示す特許文献１が知られている。この端子指定装置によれば、オペレータが指定したシンボルの端子を循環的に移動することにより、端子を指定することが容易となる。
【特許文献１】特開平６−１８７３９４号公報  （第２−３頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、このマウスカーソルを用いたオブジェクトの指定方法には以下の問題が存在する。まず、表示されるオブジェクトが小さい場合、オペレータがオブジェクトを指定することが困難であった。例えば上述したようなＬＳＩ論理回路の設計用のＣＡＤにおいては、ディスプレイ上には多数の論理シンボルからなる論理回路が表示されるため、各論理シンボルの表示サイズは非常に小さく、個々の端子の表示サイズはさらに小さい。オペレータは、所望する端子の位置にマウスカーソルを正しく位置合わせするのに時間がかかったり、隣接する端子を誤って指定してしまうことがある。この場合、画面を拡大表示することにより、表示される論理シンボルの表示サイズを大きくしてから、論理シンボルの端子を指定していた。さらに、オブジェクトの指定の後、表示サイズを元に戻すことが必要となる場合があった。
【０００７】
また、マウスカーソルを自由に移動させるのが困難な環境で作業を行う場合、オペレータがオブジェクトを指定することが困難であった。例えばノートＰＣにおいて、タッチパッドを用いてマウスカーソルを移動してオブジェクトを指定する場合がこれに相当する。
【０００８】
また、様々な種類のオブジェクトが表示されている場合、オペレータがオブジェクトを指定することが困難であった。例えば、矩形オブジェクト、円形オブジェクト、線形オブジェクトの３種類のオブジェクトが表示されている場合に、線形オブジェクトのみを指定する場合がこれに相当する。
【０００９】
また、上述した端子指定装置は、全ての端子を、一方向に循環的に移動するため、非常に多くの端子が存在する場合、所望の端子に移動するまでの手間と時間がかかっていた。
【００１０】
本発明は上述した問題点を解決するためになされたものであり、オブジェクトの表示画面内において、オペレータが容易にオブジェクトの指定を行うことができる図形オブジェクト指定装置、図形オブジェクト指定方法、図形オブジェクト指定プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決するため、本発明は、図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定装置であって、前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するオブジェクト管理手段と、マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するルール記憶手段と、前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するトリガ処理手段と、前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うオブジェクト指定手段とを備えてなるものである。なお、本実施の形態におけるオブジェクト管理手段とはオブジェクト管理部６のことであり、ルール記憶手段とはルール記憶部３のことであり、トリガ処理手段とはトリガ処理部４のことであり、オブジェクト指定手段とはオブジェクト指定部５のことである。
【００１２】
また、本発明に係る図形オブジェクト指定装置において、前記ルールにはさらに、予め前記キー入力に対してマウスカーソルの移動先のオブジェクトの種類を割り当て、前記トリガ処理手段は、前記マウスカーソル移動トリガにマウスカーソルが移動する方向とマウスカーソルの移動先のオブジェクトの種類を含め、前記オブジェクト指定手段は、前記マウスカーソル移動トリガに従ってマウスカーソルの移動先の候補となるオブジェクトの種類を限定することを特徴とするものである。
【００１３】
また、本発明に係る図形オブジェクト指定装置において、さらに前記ルールを所定のフォーマットで記述したファイルを入力するルール入力手段を備えたことを特徴とするものである。なお、本実施の形態におけるルール入力手段とはルール入力部２のことである。
【００１４】
また、本発明に係る図形オブジェクト指定装置において、前記オブジェクト指定手段は、前記マウスカーソル移動トリガが発生した場合に、マウスカーソルの位置とマウスカーソルの移動先の候補となるオブジェクトの位置に基づく評価関数を算出し、マウスカーソルの移動先の候補となるオブジェクトのうち前記評価関数の値が最小となるオブジェクトへマウスカーソルを移動させることを特徴とするものである。
【００１５】
また、本発明に係る図形オブジェクト指定装置において、マウスカーソルの位置を（Ｍｘ，Ｍｙ）、マウスカーソルの移動先の候補となるオブジェクトの位置を（Ｏｘ，Ｏｙ）、重み付け係数をＣｘ、Ｃｙとするとき、前記評価関数は｜Ｍｘ−Ｏｘ｜×Ｃｘ＋｜Ｍｙ−Ｏｙ｜×Ｃｙであり、前記重み付け係数として、前記マウスカーソル移動トリガが縦方向への移動を指示する場合はＣｘ＞Ｃｙとして予め定義された縦方向重み付け係数を用い、前記マウスカーソル移動トリガが横方向への移動を指示する場合はＣｘ＜Ｃｙとして予め定義された横方向重み付け係数を用いることを特徴とするものである。
【００１６】
また、本発明に係る図形オブジェクト指定装置において、前記ルールは、前記縦方向重み付け係数と前記横方向重み付け係数を含むことを特徴とするものである。
【００１７】
また、本発明に係る図形オブジェクト指定装置において、前記オブジェクト指定部は、前記マウスカーソル移動トリガが発生して、マウスカーソルの移動先の候補となるオブジェクトが表示画面外にある場合、表示する範囲を移動させることを特徴とするものである。
【００１８】
また、本発明に係る図形オブジェクト指定装置において、前記オブジェクト指定部は、前記マウスカーソル移動トリガが発生して、前記マウスカーソル移動トリガの指示する方向にマウスカーソルの移動先の候補となるオブジェクトがない場合、前記編集領域の反対側にマウスカーソルがあるものとして、再度、マウスカーソルの移動先の候補となるオブジェクトを検索することを特徴とするものである。
【００１９】
また、本発明は、図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定方法であって、前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するステップと、マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するステップと、前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するステップと、前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うステップとを備えてなるものである。
【００２０】
また、本発明は、図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定方法をコンピュータに実行させるために、コンピュータにより読取可能な媒体に記憶された図形オブジェクト指定プログラムであって、前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するステップと、マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するステップと、前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するステップと、前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うステップとをコンピュータに実行させることを特徴とするものである。なお、上記コンピュータにより読取り可能な記録媒体は、ＣＤ−ＲＯＭやフレキシブルディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
【発明の効果】
【００２１】
本発明によれば、表示画面内のオブジェクトが小さい場合や、オブジェクトが表示画面内に多数存在し、オブジェクトの密度が高い場合でも、オペレータはキー入力により任意のオブジェクトを的確に指定することができる。また、様々な種類のオブジェクトが表示画面内に存在する場合でも、オペレータはキー入力によりオブジェクトの種類を限定し、任意のオブジェクトを的確に指定することができる。また、ノートＰＣのタッチパッドのように、マウスカーソルの正確な移動が困難なデバイスで図形編集の作業を行っていた場合でも、キー入力により作業を行うことができるため、オペレータは任意のオブジェクトを的確に指定できる。また、トリガの種類とトリガの発生方法をルールファイルとして記述することにより、様々な種類のオブジェクトを指定することができる。
【００２２】
さらに、オペレータが任意のオブジェクトを的確に指定することができるため、オブジェクトの表示サイズを小さくすることができる。これにより、一画面から得ることができる情報量を、操作性を悪化させずに大幅に増やすができる。また、オペレータが任意のオブジェクトを的確に指定することができるため、図形編集の作業効率が上がり、作業時間を短縮することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【００２４】
まず、本実施の形態に係る図形オブジェクト指定装置の構成について説明する。図１は、本実施の形態に係る図形オブジェクト指定装置の構成の一例を示すブロック図である。図１に示すように、図形オブジェクト指定装置１は、ルール入力部２、ルール記憶部３、トリガ処理部４、オブジェクト指定部５、オブジェクト管理部６から構成される。また、外部には、ＧＵＩを用いて図形の編集を行う図形編集装置７が存在する。図形編集装置７においては、オブジェクトを含む編集領域の一部または全部が表示画面として表示されている。図形編集装置を、例えばＬＳＩ論理回路の設計用のＣＡＤとした場合、編集領域は基板であり、オブジェクトは論理シンボルや端子やネット等である。
【００２５】
次に、本実施の形態に係る図形オブジェクト指定装置の動作について説明する。図２は、本実施の形態に係る図形オブジェクト指定装置の処理フローの一例を示すフローチャートである。
【００２６】
まず、トリガ処理部４は、ルール記憶部３からルールファイルを読み込む（Ｓ１）。ルールファイルとは、トリガに関するルールが記述されたものであり、ルール入力部２からルール記憶部３に予め入力されている。トリガは、オペレータのキー操作により発生するものであり、マウスカーソル移動トリガとオブジェクト指定トリガに分類される。マウスカーソル移動トリガとは、編集領域上のどのオブジェクトに移動するかを指定するトリガのことであり、オブジェクトの種類毎に定義される。オブジェクト指定トリガとは、マウスカーソルの位置に従って、操作対象のオブジェクトを指定するトリガのことである。ルールファイルの記述例については後述する。
【００２７】
次に、トリガ処理部４は、ルールファイルでトリガとして割り当てられたキーの入力があったか否かの判断を行う（Ｓ２）。トリガが入力されない場合（Ｓ２，Ｎｏ）、処理Ｓ２へ戻る。一方、トリガが入力された場合（Ｓ２，Ｙｅｓ）、ルールファイルに従って、トリガがマウスカーソル移動トリガか否かを判断する（Ｓ３）。トリガがマウスカーソル移動トリガである場合（Ｓ３，Ｙｅｓ）、トリガ処理部４は、ルールファイルに従って、マウスカーソルの移動先となるオブジェクトの種類とマウスカーソルが移動すべき方向をマウスカーソル移動トリガとして、オブジェクト指定部５へ出力する（Ｓ４）。
【００２８】
次に、オブジェクト指定部５は、トリガ処理部４から得られるマウスカーソル移動トリガ、オブジェクト管理部６から得られるマウスカーソル位置と各オブジェクトの位置関係から、マウスカーソルの移動先となるオブジェクトである移動対象オブジェクトを決定し（Ｓ５）、処理Ｓ６へ移行する。オブジェクト管理部６は、編集領域上に存在するオブジェクトの種類と位置等を示すオブジェクト情報とマウスカーソル位置を管理している。移動対象オブジェクトを決定する方法については後述する。
【００２９】
次に、オブジェクト指定部５は、オブジェクト情報中に、該当する移動対象オブジェクトが存在するか否かの判断を行う。移動対象オブジェクトが存在しない場合（Ｓ６，ＮＯ）、処理Ｓ２へ戻る。一方、移動対象オブジェクトが存在する場合（Ｓ６，Ｙｅｓ）、処理Ｓ７へ移行する。
【００３０】
次に、オブジェクト指定部５は、移動対象オブジェクトが現在の表示画面内に存在するか否かの判断を行う（Ｓ７）。移動対象オブジェクトが、現在の表示画面内に存在する場合（Ｓ７，Ｙｅｓ）、オブジェクト指定部５は、移動対象オブジェクト上にマウスカーソルを移動させ（Ｓ９）、処理Ｓ２へ戻る。一方、移動対象オブジェクトが、現在の表示画面内に存在しない場合（Ｓ７，Ｎｏ）、オブジェクト指定部５は、画面スクロールを行い（Ｓ８）、処理Ｓ９へ移行する。
【００３１】
一方、トリガがオブジェクト指定トリガである場合（Ｓ３，Ｎｏ）、トリガ処理部４は、オブジェクト指定トリガをオブジェクト指定部５へ出力し、オブジェクト指定部５は、オブジェクト指定トリガとマウスカーソル位置とオブジェクトの位置関係から、マウスカーソル直下にオブジェクトが存在するか否かの判断を行う（Ｓ１０）。マウスカーソル直下にオブジェクトが存在しない場合（Ｓ１０，Ｎｏ）、処理Ｓ２へ戻る。一方、マウスカーソル直下にオブジェクトが存在する場合（Ｓ１０，Ｙｅｓ）、マウスカーソル直下のオブジェクトを指定して図形編集装置７へ出力し（Ｓ１１）、このフローを終了する。
【００３２】
次に、ルールファイルの記述例について説明する。図３は、ルールファイルの記述例を示す図である。図３では、円形オブジェクトと矩形オブジェクトの２種類のオブジェクトについて、マウスカーソル移動トリガを記述した例を示す。ここでは、説明のためにオブジェクトとして円形オブジェクトと矩形オブジェクトを用いたが、本発明の図形オブジェクト指定装置をＬＳＩ論理回路の設計に用いるのであれば、オブジェクトとして論理シンボルオブジェクトや端子オブジェクトやネットオブジェクト等を用いることができる。
【００３３】
図３において、記述１１０は、第１オブジェクトのマウスカーソル移動トリガの宣言を表す。記述１１１は、第１オブジェクトの種類が円形オブジェクトであることを表す。記述１１２は、第１オブジェクトのマウスカーソル移動トリガの発生方法を表し、ｋｅｙ＿ｕｐが上方向、ｋｅｙ＿ｄｏｗｎが下方向、ｋｅｙ＿ｌｅｆｔが左方向、ｋｅｙ＿ｒｉｇｈｔが右方向への移動の指示にそれぞれ割り当てられる。ここで、ｋｅｙ＿ｕｐは方向キーのうちの上キーを表し、ｋｅｙ＿ｄｏｗｎは方向キーのうちの下キーを表し、ｋｅｙ＿ｌｅｆｔは方向キーのうちの左キーを表し、ｋｅｙ＿ｒｉｇｈｔは方向キーのうちの右キーを表す。記述１２０は、第２オブジェクトのマウスカーソル移動トリガの宣言を表す。記述１２１は、第２オブジェクトの種類が矩形オブジェクトであることを表す。記述１２２は、第２オブジェクトのマウスカーソル移動トリガの発生方法を表し、ｓｈｉｆｔ＋ｋｅｙ＿ｕｐが上方向、ｓｈｉｆｔ＋ｋｅｙ＿ｄｏｗｎが下方向、ｓｈｉｆｔ＋ｋｅｙ＿ｌｅｆｔが左方向、ｓｈｉｆｔ＋ｋｅｙ＿ｒｉｇｈｔが右方向への移動の指示にそれぞれ割り当てられる。ここで、ｓｈｉｆｔはキーのうちのｓｈｉｆｔキーを表す。記述１３０は、オブジェクト指定トリガの発生方法がｅｎｔｅｒキーであることを表す。記述１４０は、縦方向重み係数を表す。記述１５０は、横方向重み係数を表す。縦方向重み係数と横方向重み係数については後述する。
【００３４】
図４は、マウスカーソル移動トリガ毎のマウスカーソルの動作の一例を示す表であり、図３のルールファイルの例において、マウスカーソル移動トリガとして定義された各キーを入力した場合のマウスカーソルの動作を示している。例えば、ｓｈｉｆｔキー＋上キーを押下した場合、現在のマウスカーソルより上方にある矩形オブジェクトの中で、最もマウスカーソルに近い上方の矩形オブジェクト上にマウスカーソルを移動する。
【００３５】
次に、Ｓ５において、移動対象オブジェクトを決定する方法について述べる。編集領域においてマウスカーソルを基準としてマウスカーソル移動トリガが示す方向に存在する、マウスカーソル移動トリガが示す種類のオブジェクトを、移動候補オブジェクトとする。ここで、全ての移動候補オブジェクトに対して、重み付き距離を計算する。マウスカーソル移動トリガの示す方向が上または下であれば、縦方向重み係数を用いて重み付き距離が計算され、マウスカーソル移動トリガの示す方向が左または右であれば、横方向重み係数を用いて重み付き距離が計算される。全ての移動候補オブジェクトのうち、最も重み付き距離の小さいオブジェクトが、移動対象オブジェクトとなる。
【００３６】
ここで、重み付き距離について説明する。図５は、オブジェクトとマウスカーソルの位置関係の一例を示す図である。マウスカーソル５０の座標を（Ｍｘ，Ｍｙ）、オブジェクト５１の中心座標を（Ｏｘ，Ｏｙ）とすると、マウスカーソルとオブジェクトの横方向の距離Ｌｘ、縦方向の距離Ｌｙは（１），（２）式で定義される。
【００３７】
Ｌｘ＝|Ｍｘ−Ｏｘ|・・・（１）
Ｌｙ＝|Ｍｙ−Ｏｙ|・・・（２）
【００３８】
また、マウスカーソル５０とオブジェクト５１の重み付き距離Ｌｗは（３）式で定義される。
【００３９】
Ｌｗ＝Ｌｘ×Ｃｘ＋Ｌｙ×Ｃｙ・・・（３）
【００４０】
ここで、横方向重み係数Ｃｘ、縦方向重み係数Ｃｙはオペレータが選択したマウスカーソル移動トリガの方向に従って選択される係数であり、ルールファイルから読み込む。特にＣｘ＝１、Ｃｙ＝１が選択された場合、Ｌｗはマンハッタン距離に等しい。
【００４１】
図６は、複数のオブジェクトとマウスカーソルの位置関係の一例を示す図である。マウスカーソル５０に対して、オブジェクト６１，６２，６３のＬｘ，Ｌｙが表されている。ここで、Ｌｘ１＝１０，Ｌｙ１＝５，Ｌｘ２＝５，Ｌｙ２＝１０，Ｌｘ３＝８，Ｌｙ３＝６とする。
【００４２】
ここで、マウスカーソル移動トリガとして上キーが入力されたとする。マウスカーソルより上方に存在するオブジェクト６１，６２が移動候補オブジェクトとなり、それぞれの重み付き距離Ｌｗ１，Ｌｗ２を計算する。ここで、マウスカーソルに対するオブジェクト６１，６２のマンハッタン距離はいずれも１０＋５＝１５となり、等しい。一般にオペレータは、オブジェクト６２上にマウスカーソルが移動することを望むと考えられる。そこで、縦方向重み係数としてＣｘ＝２，Ｃｙ＝１を与え、Ｌｗ１，Ｌｗ２を計算する。
【００４３】
Ｌｗ１＝Ｌｘ１×Ｃｘ＋Ｌｙ１×Ｃｙ
＝１０×２＋５×１
＝２５
Ｌｗ２＝Ｌｘ２×Ｃｘ＋Ｌｙ２×Ｃｙ
＝５×２＋１０×１
＝２０
【００４４】
よって、Ｌｗ１＞Ｌｗ２となり、移動候補オブジェクト中で最もＬｗの小さいオブジェクト６２が移動対象オブジェクトとなる。
【００４５】
オペレータが望むオブジェクト上にマウスカーソルを移動させるために、上下キーが押された時は、Ｃｘを大きく、Ｃｙを小さくした縦方向重み係数を与え、左右キーが押された時は、Ｃｘを小さく、Ｃｙを大きくした横方向重み係数を与えれば良い。縦方向重み係数と横方向重み係数の値は、ルールファイルに記述する。本実施の形態では、移動対象オブジェクトの決定にＬｗを用いるアルゴリズムを適用したが、マウスカーソル近傍のオブジェクトの選択に、他のアルゴリズムも適用しても良い。
【００４６】
次に、マウスカーソル移動トリガに対するマウスカーソルの移動について具体例を示す。ここでは、ルールファイルとして、図３に示したルールファイルを用いる。
【００４７】
まず、通常のマウスカーソルの移動について具体例を示す。図７は、通常のマウスカーソルの移動の初期状態の一例を示す図である。図７に示すように、表示画面７２には、編集領域７１の全部と、編集領域７１上に配置された矩形オブジェクト３１〜３５と、円形オブジェクト４１〜４５と、マウスカーソル５０が表示されている。
【００４８】
図７の状態において、マウスカーソル移動トリガとして上キーが入力された場合、図８に示すように、マウスカーソル５０は円形オブジェクト４１上に移動する。図８以降において、点線の矢印の開始位置はマウスカーソルの移動前の位置、点線の矢印の終了位置はマウスカーソルの移動後の位置を表す。
【００４９】
図７の状態において、マウスカーソル移動トリガとして下キーが入力された場合、図９に示すように、マウスカーソル５０は円形オブジェクト４３上に移動する。
【００５０】
図７の状態において、マウスカーソル移動トリガとして左キーが入力された場合、図１０に示すように、マウスカーソル５０は円形オブジェクト４４上に移動する。
【００５１】
図７の状態において、マウスカーソル移動トリガとして右キーが入力された場合、図１１に示すように、マウスカーソルは円形オブジェクト４２上に移動する。
【００５２】
図７の状態において、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋上キーが入力された場合、図１２に示すように、マウスカーソル５０は矩形オブジェクト３３上に移動する。
【００５３】
図７の状態において、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋下キーが入力された場合、図１３に示すように、マウスカーソル５０は矩形オブジェクト３５上に移動する。
【００５４】
図７の状態において、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋左キーが入力された場合、図１４に示すように、マウスカーソル５０は矩形オブジェクト３２上に移動する。
【００５５】
図７の状態において、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋右キーが入力された場合、図１５に示すように、マウスカーソル５０は矩形オブジェクト３４上に移動する。
【００５６】
次に、オブジェクトの種類を限定したマウスカーソルの移動の具体例を示す。図１６は、オブジェクトの種類を限定したマウスカーソルの移動の初期状態の一例を示す図である。マウスカーソル５０の位置以外は図７と同様である。
【００５７】
オペレータが、図１６の状態において、マウスカーソル５０を矩形オブジェクト３４上へ移動させたい場合、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋右キーを４回入力する。その結果、図１７に示すように、矩形オブジェクト３１，３２，３３，３４の順にマウスカーソル５０は移動する。このように矩形オブジェクトだけを移動することでマウスカーソルの移動を効率化できる。
【００５８】
さらにオペレータが、図１７の状態においてマウスカーソル５０を、矩形オブジェクト３４から円形オブジェクト４５上へ移動させたい場合、マウスカーソル移動トリガとして左キーを３回入力すると、図１８に示すように、円形オブジェクト４３，４４，４５の順にマウスカーソル５０は移動する。このように円形オブジェクトだけを移動することでマウスカーソルの移動を効率化できる。
【００５９】
次に、画面スクロールを伴うマウスカーソルの移動の具体例を示す。図１９は、画面スクロールを伴うマウスカーソルの移動の初期状態の一例を示す図である。ここでは図１９に示すように、実際に表示される表示画面７２の範囲が、編集領域７１の一部である場合について説明する。表示画面７２の範囲とマウスカーソル５０の位置以外は、図７と同様である。
【００６０】
現在、マウスカーソル５０は矩形オブジェクト３２上にある。図１９の状態において、オペレータが、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋左キーを入力する。ここで、オブジェクト指定部５は、表示画面７２内に矩形オブジェクト３１が表示されていないことを認識する。その結果、図２０に示すように、マウスカーソル５０を矩形オブジェクト３１上に移動させるとともに、矩形オブジェクト３１が表示されるように表示画面７２の範囲を移動させる。
【００６１】
次に、編集領域端におけるマウスカーソルの移動の具体例を示す。図２１は、編集領域端におけるマウスカーソルの移動の初期状態の一例を示す図である。ここでは図２１に示すように、実際に表示される表示画面７２の範囲が、編集領域７１の一部である場合について説明する。表示画面７２の範囲とマウスカーソル５０の位置以外は、図７と同様である。
【００６２】
現在、マウスカーソル５０は編集領域７１の右端にある円形オブジェクト４２上にある。図２１の状態において、オペレータが、マウスカーソル移動トリガとしてｓｈｉｆｔキー＋右キーを入力する。ここで、オブジェクト指定部５は、円形オブジェクト４２の右側に円形オブジェクトが存在しないことを認識すると、編集領域７１の右端から左端へ移って、そこから右方向の円形オブジェクト検索する。その結果、図２２に示すように、マウスカーソル５０を円形オブジェクト４５上に移動させるとともに、円形オブジェクト４５が表示されるように表示画面７２の範囲を移動させる。
【００６３】
ここでは横方向の画面スクロールのみについて説明したが、縦方向においても同様に画面スクロールが行われる。これにより、ディスプレイの上下と左右がつながっている感覚での操作が可能となる。
【００６４】
以上、本実施の形態では、マウスカーソル移動トリガを上下左右キーに割り当てた例について説明したが、ルールファイルにより他のキーにマウスカーソル移動トリガを割り当てることが可能であり、例えばマウスカーソル移動トリガをテンキーに割り当てることにより、斜め方向も移動するようにしても良い。また、表示画面を構成するツールバーの各ボタンやチェックボタン、テキストフィールド等のウィジェットもオブジェクトとして扱うことが可能であり、それぞれに対してマウスカーソル移動トリガを割り当てるようにしても良い。
【００６５】
（付記１）  図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定装置であって、
前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するオブジェクト管理手段と、
マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するルール記憶手段と、
前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するトリガ処理手段と、
前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うオブジェクト指定手段と、
を備えてなる図形オブジェクト指定装置。
（付記２）  付記１に記載の図形オブジェクト指定装置であって、
前記ルールにはさらに、予め前記キー入力に対してマウスカーソルの移動先のオブジェクトの種類を割り当て、
前記トリガ処理手段は、前記マウスカーソル移動トリガにマウスカーソルが移動する方向とマウスカーソルの移動先のオブジェクトの種類を含め、
前記オブジェクト指定手段は、前記マウスカーソル移動トリガに従ってマウスカーソルの移動先の候補となるオブジェクトの種類を限定することを特徴とする図形オブジェクト指定装置。
（付記３）  付記１または付記２に記載の図形オブジェクト指定装置であって、
さらに前記ルールを所定のフォーマットで記述したファイルを入力するルール入力手段を備えたことを特徴とする図形オブジェクト指定装置。
（付記４）  付記１乃至付記３のいずれかに記載の図形オブジェクト指定装置であって、
前記オブジェクト指定手段は、前記マウスカーソル移動トリガが発生した場合に、マウスカーソルの位置とマウスカーソルの移動先の候補となるオブジェクトの位置に基づく評価関数を算出し、マウスカーソルの移動先の候補となるオブジェクトのうち前記評価関数の値が最小となるオブジェクトへマウスカーソルを移動させることを特徴とする図形オブジェクト指定装置。
（付記５）  付記４に記載の図形オブジェクト指定装置であって、
マウスカーソルの位置を（Ｍｘ，Ｍｙ）、マウスカーソルの移動先の候補となるオブジェクトの位置を（Ｏｘ，Ｏｙ）、重み付け係数をＣｘ、Ｃｙとするとき、前記評価関数は｜Ｍｘ−Ｏｘ｜×Ｃｘ＋｜Ｍｙ−Ｏｙ｜×Ｃｙであり、
前記重み付け係数として、前記マウスカーソル移動トリガが縦方向への移動を指示する場合はＣｘ＞Ｃｙとして予め定義された縦方向重み付け係数を用い、前記マウスカーソル移動トリガが横方向への移動を指示する場合はＣｘ＜Ｃｙとして予め定義された横方向重み付け係数を用いることを特徴とする図形オブジェクト指定装置。
（付記６）  付記５に記載の図形オブジェクト指定装置であって、
前記ルールは、前記縦方向重み付け係数と前記横方向重み付け係数を含むことを特徴とする図形オブジェクト指定装置。
（付記７）  付記１乃至付記６に記載の図形オブジェクト指定装置であって、
前記オブジェクト指定部は、前記マウスカーソル移動トリガが発生して、マウスカーソルの移動先の候補となるオブジェクトが表示画面外にある場合、表示する範囲を移動させることを特徴とする図形オブジェクト指定装置。
（付記８）  付記１乃至付記７に記載の図形オブジェクト指定装置であって、
前記オブジェクト指定部は、前記マウスカーソル移動トリガが発生して、前記マウスカーソル移動トリガの指示する方向にマウスカーソルの移動先の候補となるオブジェクトがない場合、前記編集領域の反対側にマウスカーソルがあるものとして、再度、マウスカーソルの移動先の候補となるオブジェクトを検索することを特徴とする図形オブジェクト指定装置。
（付記９）  図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定方法であって、
前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するステップと、
マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するステップと、
前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するステップと、
前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うステップと、
を備えてなる図形オブジェクト指定方法。
（付記１０）  図形編集装置の編集領域上に存在する図形のオブジェクトのうち編集対象のオブジェクトを、マウスカーソルの位置に応じて指定する図形オブジェクト指定方法をコンピュータに実行させるために、コンピュータにより読取可能な媒体に記憶された図形オブジェクト指定プログラムであって、
前記編集領域上に存在するオブジェクトの種類と位置を含むオブジェクト情報とマウスカーソル位置を管理するステップと、
マウスカーソルが移動する方向を示すキー入力と、マウスカーソル直下のオブジェクトを指定するキー入力の割り当てをルールとして、予め記憶するステップと、
前記キー入力と前記ルールに従って、マウスカーソルの移動を指示するマウスカーソル移動トリガ、またはマウスカーソル直下のオブジェクトの指定を指示するオブジェクト指定トリガを発生するステップと、
前記オブジェクト情報と前記マウスカーソル移動トリガに基づいてマウスカーソルの移動を行う、または前記オブジェクト情報と前記オブジェクト指定トリガに基づいて前記編集対象のオブジェクトの指定を行うステップと、
をコンピュータに実行させることを特徴とする図形オブジェクト指定プログラム。
【図面の簡単な説明】
【００６６】
【図１】本実施の形態に係る図形オブジェクト指定装置の構成の一例を示すブロック図である。
【図２】本実施の形態に係る図形オブジェクト指定装置の処理フローの一例を示すフローチャートである。
【図３】ルールファイルの記述例を示す図である。
【図４】マウスカーソル移動トリガ毎のマウスカーソルの動作の一例を示す表である。
【図５】オブジェクトとマウスカーソルの位置関係の一例を示す図である。
【図６】複数のオブジェクトとマウスカーソルの位置関係の一例を示す図である。
【図７】通常のマウスカーソルの移動の初期状態の一例を示す図である。
【図８】図７の状態からのマウスカーソルの移動の第１の例を示す図である。
【図９】図７の状態からのマウスカーソルの移動の第２の例を示す図である。
【図１０】図７の状態からのマウスカーソルの移動の第３の例を示す図である。
【図１１】図７の状態からのマウスカーソルの移動の第４の例を示す図である。
【図１２】図７の状態からのマウスカーソルの移動の第５の例を示す図である。
【図１３】図７の状態からのマウスカーソルの移動の第６の例を示す図である。
【図１４】図７の状態からのマウスカーソルの移動の第７の例を示す図である。
【図１５】図７の状態からのマウスカーソルの移動の第８の例を示す図である。
【図１６】オブジェクトの種類を限定したマウスカーソルの移動の初期状態の一例を示す図である。
【図１７】図１６の状態からのマウスカーソルの移動の第１の例を示す図である。
【図１８】図１６の状態からのマウスカーソルの移動の第２の例を示す図である。
【図１９】画面スクロールを伴うマウスカーソルの移動の初期状態の一例を示す図である。
【図２０】図１９の状態からのマウスカーソルの移動の一例を示す図である。
【図２１】編集領域端におけるマウスカーソルの移動の初期状態の一例を示す図である。
【図２２】図２１の状態からのマウスカーソルの移動の一例を示す図である。
【図２３】論理シンボルとマウスカーソルの一例を示す図である。
【符号の説明】
【００６７】
１  図形オブジェクト指定装置、２  ルール入力部、３  ルール記憶部、４  トリガ処理部、５  オブジェクト指定部、６  オブジェクト管理部、７  図形編集装置、５０  マウスカーソル、５１，６１，６２，６３  オブジェクト、３１，３２，３３，３４，３５  矩形オブジェクト、４１，４２，４３，４４，４５  円形オブジェクト、７１  編集領域、７２  表示画面。
【図１】
2005275859.tif 000003
【図２】
2005275859.tif 000004
【図３】
2005275859.tif 000005
【図４】
2005275859.tif 000006
【図５】
2005275859.tif 000007
【図６】
2005275859.tif 000008
【図７】
2005275859.tif 000009
【図８】
2005275859.tif 000010
【図９】
2005275859.tif 000011
【図１０】
2005275859.tif 000012
【図１１】
2005275859.tif 000013
【図１２】
2005275859.tif 000014
【図１３】
2005275859.tif 000015
【図１４】
2005275859.tif 000016
【図１５】
2005275859.tif 000017
【図１６】
2005275859.tif 000018
【図１７】
2005275859.tif 000019
【図１８】
2005275859.tif 000020
【図１９】
2005275859.tif 000021
【図２０】
2005275859.tif 000022
【図２１】
2005275859.tif 000023
【図２２】
2005275859.tif 000024
【図２３】
2005275859.tif 000025