(57)【要約】  タッチスクリーンに基づくコンピュータ装置のＧＵＩにおける、装置上に格納されたカラーマップで表現された、操作領域（例えば、キーやボタン）。カラーマップは、操作キー又はボタンのそれぞれと、形状及びサイズが完全に対応する領域を有する。各領域は固有色で完全に満たされている。使用において、ある特定の選択／接触された点のＸＹ座標の組が生成された場合、カラーマップにおける同じＸＹ座標に存在するピクセルの色を取得することは、容易であり、非常に高速に行うことができる。このため、そのピクセルの色を、カラーマップ上でそれに関連づけられた色とともに各操作領域を格納するテーブルにおいてマッチングをとることにより、その色に関連づけられた操作領域を決定することも非常に高速で容易に行うことができる。
2007527046.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定する方法であって、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマスク内の固有色の集合のうちの１つの固有色に関連づけられており、該カラーマスクは、該操作領域の１つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、
（ａ）前記ディスプレイ上の接触位置に係る一組の座標を生成する工程と、
（ｂ）前記一組の座標における前記カラーマスクの色を取得する工程と、
（ｃ）取得された前記色と同一色に関連づけられた前記操作領域を決定する工程と、
を備えることを特徴とする方法。
【請求項２】
前記カラーマスクは、前記操作領域のビットマップを用いて取得される
ことを特徴とする請求項１に記載の方法。
【請求項３】
固有色の前記集合に係るテーブルが、該固有色がそれぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納されている
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記テーブル内の前記固有色のそれぞれは符号無し整数として表される
ことを特徴とする請求項３に記載の方法。
【請求項５】
前記カラーマスク内の前記固有色のそれぞれは符号無し整数として表され、前記一組の座標における前記色を表す該符号無し整数は、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較される
ことを特徴とする請求項４に記載の方法。
【請求項６】
適合するものが発見された場合、対応する選択可能な操作領域が前記テーブルを用いて決定される
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記カラーマスク内の任意形状に対応する領域を単一色で満たすことが可能である限り、選択可能な操作領域は該任意形状を有することができる
ことを特徴とする請求項１に記載の方法。
【請求項８】
前記異なる選択可能な操作領域の配置及びデザインは、該操作領域及び前記カラーマスクの前記ビットマップを変更することにより、異なった配置及びデザインに更新可能であることを特徴とする
請求項２に記載の方法。
【請求項９】
前記操作領域及び前記カラーマスクの前記ビットマップの変更は、描画アプリケーションを用いて行われる
ことを特徴とする請求項８に記載の方法。
【請求項１０】
自装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定するように適合されたコンピュータ装置であって、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマスク内の固有色の集合のうちの１つの固有色に関連づけられており、該カラーマスクは、該操作領域の１つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、前記装置は、
（ａ）前記ディスプレイ上の接触位置に係る一組の座標を生成し、
（ｂ）前記一組の座標における前記カラーマスクの色を取得し、
（ｃ）取得された前記色と同一色に関連づけられた前記操作領域を決定する
ように適合されていることを特徴とするコンピュータ装置。
【請求項１１】
前記カラーマスクは、前記操作領域のビットマップを用いて取得される
ことを特徴とする請求項１０に記載の装置。
【請求項１２】
固有色の前記集合に係るテーブルが、該固有色がそれぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納されている
ことを特徴とする請求項１１に記載の装置。
【請求項１３】
前記テーブル内の前記固有色のそれぞれは符号無し整数として表される
ことを特徴とする請求項１２に記載の装置。
【請求項１４】
前記カラーマスク内の前記固有色のそれぞれは符号無し整数として表され、前記一組の座標における前記色を表す該符号無し整数は、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較される
ことを特徴とする請求項１３に記載の装置。
【請求項１５】
適合するものが発見された場合、対応する選択可能な操作領域が前記テーブルを用いて決定される
ことを特徴とする請求項１４に記載の装置。
【請求項１６】
前記カラーマスク内の任意形状に対応する領域を単一色で満たすことが可能である限り、選択可能な操作領域は該任意形状を有することができる
ことを特徴とする請求項１０に記載の装置。
【請求項１７】
コンピュータ装置上で動作するようにプログラムされたアプリケーション・ソフトウェアであって、
複数の異なる選択可能な操作領域のそれぞれを前記装置上に表示させ、
カラーマスクを備え、
前記カラーマスクは、前記操作領域の１つにそれぞれ対応し、かつ、それぞれ固有色に色づけられた領域からなり、
前記カラーマスクは、装置のメモリに格納され、前記ディスプレイ上に表示されない
ことを特徴とするアプリケーション・ソフトウェア。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グラフィカルユーザインタフェースを備えたコンピュータ装置、特に、タッチスクリーンを備えた装置における、操作領域選択の方法に関する。
【背景技術】
【０００２】
コンピュータ装置用の、Ｓｙｍｂｉａｎ  ＯＳや他のＧＵＩ（グラフィカル・ユーザ・インタフェース）に基づくオペレーティング・システムにおける共通の問題の一つは、ＧＵＩ内のどの操作領域がユーザにより実際に選択されたのか、例えば、ユーザがタッチスクリーンを軽くたたいたときに、どの特定の操作キー又はボタンが選択されたことになるのかを決定することである。スタイラスが表示スクリーンを軽くたたいた場合、接触位置がＸＹ座標に変換される。タッチスクリーンは、一般的に、ディスプレイ（ＬＣＤ等）の上にＩＴＯ層を備え、圧力を検出する。ＩＴＯのオーバーレイに圧力が加えられると、最上部の柔らかい表面が局所的に変形し、変形箇所が堅い固体の基板に接触する。そして、内部の表面層上のＩＴＯ被覆を横切るアナログ電圧のレベルが装置により解釈され、圧力位置のＸＹ座標が与えられる。
【０００３】
次に、ＸＹ座標は、ＯＳによって、その座標に該当するカレントウィンドウに与えられる。そのウィンドウは複数の操作領域を有しており、また、各領域は、一般的には、どれが座標に該当するかを調べるために問い合わせられるだろう。
【０００４】
図１は、ユーザ入力を可能にするために実装された操作ＵＩのデザインを例示した図である。図１において、操作ＵＩは、ユーザが選択可能な７つの操作領域を定義している。これらは、上／下／左／右／確定／Ｙｅｓ／Ｎｏである。
【０００５】
これらの操作領域をＯＳ上で表現するために、各領域はおおよそ矩形で定義される。例えば、図２のように、「上」操作ＵＩは、左上の座標の組がＸ６８，Ｙ４、右下の座標の組がＸ１１１，Ｙ２９の矩形として記録されるであろう。図２は、７つの異なる操作領域について、全ての７つの矩形を示している。
【０００６】
７つの選択可能な操作領域のそれぞれは、矩形として大まかに定義されているため、どの領域がペン／スタイラスで選択されたかを決定することができる。与えられた操作領域上の表示スクリーンにユーザが触れた場合、ペンが接触した位置におけるＸＹ座標が生成される。次に、装置は、ＸＹ座標が矩形の境界の内部に該当するかどうかを確かめるために、各矩形を評価する。ＸＹ座標の組が矩形の境界の内部に該当するかどうかを決定するための一般的なアルゴリズムの一つは次の通りである。
１．ユーザにより選択されたＸ座標は操作領域の左上のＸ座標よりも大きいか。
２．ユーザにより選択されたＸ座標は操作領域の右下のＸ座標よりも小さいか。
３．ユーザにより選択されたＹ座標は操作領域の左上のＹ座標よりも大きいか。
４．ユーザにより選択されたＹ座標は操作領域の右下のＹ座標よりも小さいか。
上記の全ての条件が真ならば、ユーザはその操作領域を選択したということを我々は知ることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ユーザが選択した操作領域を見つけるためには、このアルゴリズムを全ての矩形について実行する必要がある。操作ＵＩのデザインの多くが複雑で、矩形が多数の場合、これは比較的時間を要する処理となりうる。
【０００８】
他の欠点は、捕捉できる操作領域の部分が矩形のみであることである。これは、複雑な形状を有する操作ボタン等の、図形が集中した操作ＵＩのデザインは、指示のイベントを正確に捕捉することが困難になりうることを意味する。図３は、ユーザが「下」の操作を選択した領域を示している。それは「下」の矩形の境界の外にあるため、このイベントは検出されないであろう。
【０００９】
矩形を用いることでユーザ入力を捕捉することが可能であるが、それにより３つの主要な欠点が存在する。
・ヒット領域は矩形でなければならない。任意形状の操作ＵＩを正確に選択することができない。
・座標の２つの組を評価するアルゴリズムは、全てのヒット領域について実行しなければならない。
・ヒット矩形を記述する座標の組の全てを再計算しなければならないため、操作ＵＩのデザインを変更するには時間を要する。
【課題を解決するための手段】
【００１０】
第１の側面においては、コンピュータ装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定する方法は、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマスク内の固有色の集合のうちの１つの固有色に関連づけられており、該カラーマスクは、該操作領域の１つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、
（ａ）前記ディスプレイ上の接触位置に係る一組の座標を生成する工程と、
（ｂ）前記一組の座標における前記カラーマスクの色を取得する工程と、
（ｃ）取得された前記色と同一色に関連づけられた前記操作領域を決定する工程と、
を備える。
【００１１】
このため、操作キーやボタンについて大まかな矩形近似を行う代わりに、本発明は、その操作キーやボタンに形状及びサイズが好適には正確に対応した領域を有するカラーマスクを、生成し、メモリに格納することを要する。その領域は固有色（unique color）で完全に満たされている。同時に表示される他の全ての操作キー又はボタンには、カラーマスクにおいて対応する固有色領域が与えられる。従って、装置は、各カラーマスクが異なる操作キー／ボタンの配置に対応している、異なるカラーマスクの集合を格納するだろう。（例えば、常に利用されることが意図されている操作ＧＵＩデザインのために、）あるカラーマスクは装置のＲＯＭに焼かれるかもしれない。或いは、他のカラーマスクは、エンドユーザにより装置に読み込まれるアプリケーションソフトウェアの一部となるかもしれない。ただし、そのカラーマスクはそのアプリケーションソフトウェアに特有の操作ＧＵＩのデザインに関するものである。カラーマスクはスクリーン上には全く表示されず、従って、それは完全に「仮想的」である。
【００１２】
使用において、特定の選択／接触された点のＸＹ座標の組が生成された場合、適切なカラーマスクにおける同じＸＹ座標に存在するピクセルの色を取得することは、容易であり、非常に高速に行うことができる。このため、その色に対応する操作領域を定めることも非常に高速に行うことができ、容易である。例えば、スクリーンの中央にアイコンが表示される操作ＵＩのデザインを考える。そのアイコンは、例えば、花のように、複雑な形状を有しているとする。その花が選択されると、画像アプリケーションを開く。同じスクリーンには他の操作領域はないものとする。この場合、装置又は画像アプリケーションを指定したとき、その花と正確に同じ形状を有するカラーマスクが生成される。そのマスクにおいて、その花の内部には１つの色、例えば、青が与えられる。カラーマスクの残りの部分は黒である。カラーマスクは装置のメモリに格納される。それはスクリーンには全く表示されない。
【００１３】
装置が使用状態にある場合、花のアイコンが表示される。ユーザは花の所望とする箇所に接触する。接触座標が生成され、カラーマスクの同じ座標における色を取得するために用いられる。カラーマスクの色が青の場合、装置は、（例えば、青は花、黒は機能なし、というように）各色と操作領域を結びつけるテーブルを用いて、取得された色ととりうる色ｓ（青と黒）とを比較する。そして、花が選択されたことを高速に決定することができる。カラーマスクの色が黒の場合は、装置は、ユーザが花のアイコンの外のスクリーンに接触したことを知る。操作ＵＩのデザインが複雑な場合、従来技術の手法を用いて全ての異なる矩形を評価することは、複雑で時間を要するであろう。本発明のカラーマスクの手法によれば、我々は、ただ異なる色領域を比較するだけである。これは高速であり、計算量的にも効率的である。特に、例えば、高機能電話機や他の種類の携帯電話機等のような、リソースが制約されたコンピュータ装置においては、重要な長所となる。
【００１４】
「コンピュータ装置」という用語には、ディスプレイに表示された操作領域を選択して人間が操作する、あらゆる種類のコンピュータ装置が含まれる。例えば、その用語には、ＰＤＡ、携帯電話機、デジタル音声再生機等の専用装置、リモコンユニット等が含まれる。「操作領域」という用語は、ユーザが何らかの方法で「選択」するであろうあらゆるオブジェクトを含むように拡張的に解釈されるべきである（ただし、「選択」は、例えば、（ａ）テキストデータ／数字データ等のデータ入力、（ｂ）あるアクションの開始、（ｃ）ある機能の制御又は操作、或いは、（ｄ）操作対象のデータの特定等を行うための選択を意味する）。従って、「操作領域」という用語には、キーボードのキー又はタイル（例えば、文字又は数字のキー）、操作ボタン又はスライダ、ジョグダイアル、ジョイスティック、或いは、ローラーボタン等が含まれる。「操作領域」という用語には、それ自体はオブジェクトに該当しないアイテムも含まれる。特に、ユーザが選択するであろうあらゆるアイコンや画像が含まれる。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。
【００１６】
本発明は、イギリス国ロンドンのシンビアン社から提供されているＳｙｍｂｉａｎ  ＯＳ上で実行可能な実装の参照により説明される。Ｓｙｍｂｉａｎ  ＯＳは高機能電話機や他の携帯電話機用に設計されている。この種の装置に存在する限られた処理能力は、本発明を特に価値のあるものにする。
【００１７】
（カラーマスクによる解決法）
カラーマスクによる解決法によれば、複数の矩形ヒット領域の手法がメモリに格納されたカラーマスクで置き換えられる。カラーマスクは、我々が入力を取得しようとする操作領域の直接的な表現であり、異なる操作領域のそれぞれについて異なる領域を有する。マスクの作成は、単に、操作領域に係る元ビットマップを取得し、我々がユーザ入力を取得する必要がある対応するカラーマスク領域を同一色で塗りつぶすだけである。
【００１８】
図４には、図１の操作ＵＩを示しているカラーマスクが示されている。ユーザ入力と見なしたくないカラーマスク領域には、黒で彩色している。そして、例えば、図４では、赤が確定、黄が左、青が右、紫が下というように、関心のあるカラーマスク領域を異なる色でマークすることができる。
【００１９】
ＳｙｍｂｉａｎＯＳにおいては、各色は、ＢＢ、ＧＧ、ＲＲ（青、緑、赤）のフォーマットの３２ビット符号無し整数として格納され、従って、基本の赤は0x0000ff、緑は0x00ff00、青は0xff0000となる。
【００２０】
下の表１に示すように、対応する操作領域への参照に関連づけられたメンバ変数としての、領域に係る既知の色の表（テーブル）を、装置のメモリに格納する。
[表１]
Const TUint KYesAreaColour      = 0xf0ff05; //シアン
Const TUint KNoAreaColour       = 0x80c5f6; //ベージュ
Const TUint KUpAreaColour       = 0x00ff00; //緑
Const TUint KDownAreaColour     = 0xf773d0; //紫
Const TUint KLeftAreaColour     = 0x03faf7; //黄
Const TUint KRightAreaColour    = 0xff0000; //青
Const TUint KConfirmAreaColour  = 0x0000ff; //赤
Const TUInt KblackIgnoreArea    = 0x000000; //黒
カラーマスクもメンバ変数として装置のメモリに格納される。
【００２１】
カラーマスクの使用法は以下の通りである。ユーザがスタイラスでタップして「左」の操作領域を選択した場合、アプリケーションは、スタイラスの接触位置を示す座標Ｘ５８、Ｙ４１に係るイベントを受けとるであろう。
【００２２】
次に、選択された操作領域に係るプログラムはカラーマスクの位置Ｘ５８、Ｙ４１におけるピクセルを問い合わせる。上述のように、カラーマスクは、実際にはディスプレイに表示されず、メモリ上にのみ存在する。カラーマスクに配置された色は、ディスプレイに表示される色とは関係がない。
【００２３】
ＳｙｍｂｉａｎＯＳにおいては、全てのビットマップはピクセルの集合としてメモリで表現される（ピクセルは、既知の色を格納したのと同じフォーマットによる、色を示す符号無し整数である）。ＳｙｍｂｉａｎＯＳ及び他のＧＵＩに基づくオペレーティングシステムは、メモリ内のビットマップからピクセルを取得する高速な手法を提供しており、Ｘ５８、Ｙ４１のピクセルを取得するために用いるのもこの機能である。
【００２４】
この場合、Ｘ５８、Ｙ４１のピクセルは、（黄に対応する）TUint 0x03faf7として、カラーマスクから取得されるだろう。次に、プログラムは次のような命令文を用いるだろう。
2007527046.tif 000003
2007527046.tif 000004
2007527046.tif 000005
2007527046.tif 000006
2007527046.tif 000007
2007527046.tif 000008
2007527046.tif 000009
2007527046.tif 000010
2007527046.tif 000011
この場合、表１に示すように、ピクセル値0x03faf7はKLeftAreaColour値（0x03faf7）に対応するだろう（即ち、プログラムは、ピクセルの色の黄を、その色に対応する操作領域、つまり「左」の操作領域に対応させる）。従って、プログラムはユーザが「左」を選択したと決定するであろう。プログラム命令文の対応する部分は太字で示している。ポイントとなる工程を図６に要約する。
【００２５】
カラーマスクの各領域が固有の値を有しているならば、あらゆる色（グレースケールを含む）の組合せを用いることができる。
【００２６】
我々は、一つの符号無し整数と、（それぞれ操作領域と１対１に対応する）異なる領域のそれぞれに係る整数とを比較するため、この手法は処理時間の観点から非常に効率的である。操作ＵＩのデザインが複雑な場合、従来技術のアプローチを用いて全ての異なる矩形について評価することは、複雑で時間を要するであろう。カラーマスクの手法によれば、異なる色領域について単に比較するだけでよい。
【００２７】
（カスタマイズ）
カラーマスクの手法の他の利点は、マスクと元操作ＵＩのビットマップを単に更新するだけで、操作ＵＩのデザインに係る外観を全く違うものにすることができることである。
【００２８】
図７は、（図１の）元の操作ＵＩの完全に新しいデザインを示している。しかし、この新しいデザインは、例えば、上／下／左／右等の元の操作デザインと完全に同じ７つの操作領域をまだ有している。この新しいデザインは、多くの矩形でないヒット領域を含んでいるため、矩形の手法で表現することは極めて困難であろう。
【００２９】
カラーマスクの手法でこの操作デザインを更新するには、単に、新しい操作デザインを表す新しいカラーマスクビットマップを生成することが必要となるだけである。新しいカラーマスクが図８に示されているが、これは描画アプリケーションについてわずかな技術的な知識を持つ者であれば誰にでも生成することができる。唯一の基準は、例えば、「左」矢印の操作領域には0x03faf7（黄）というように、完全に同じ色の値が再度用いられることである。アプリケーションに新しいカラービットマップとカラーマスクが追加されれば、プログラムコードの修正は不要である。これは、カラーマスクの手法において知ることを要するのは、（例えば、表１に示すように、）どの色がどの操作アクションを示しているかのみであるからである。
【図面の簡単な説明】
【００３０】
【図１】コンピュータ装置のスクリーンの一部に表示される、７つの異なる操作領域を有する操作ＧＵＩのデザインを示す図である。
【図２】７つの操作領域のうち、ユーザにより選択された操作領域を決定するための、矩形に基づく従来手法を模式的に示す図である。
【図３】従来技術によっては複雑な操作領域をうまく処理できないことを示す図である。
【図４】本発明において用いられるカラーマスクを示す図である。７つの異なる操作領域が存在し、それらはそれぞれ、ディスプレイ上に表示される操作ＧＵＩのデザインの対応する操作領域と、形状及びサイズが正確に等しい。
【図５】装置が、独自の操作ＵＩデザインのビットマップ、カラーマスク、及び、操作領域に関連づけられた色のテーブルを格納している様子を示す図である。
【図６】本発明における基本処理のフローチャートを示す図である。
【図７】図１の操作ＧＵＩのデザインと同種の操作領域を有する、異なる操作ＧＵＩのデザインを示す図である。
【図８】この異なる操作ＧＵＩのデザインは、異なるカラーマスクを用いていかに単純に実現できるかを示す図である。
【図１】
2007527046.tif 000012
【図２】
2007527046.tif 000013
【図３】
2007527046.tif 000014
【図４】
2007527046.tif 000015
【図５】
2007527046.tif 000016
【図６】
2007527046.tif 000017
【図７】
2007527046.tif 000018
【図８】
2007527046.tif 000019
【手続補正書】
【提出日】平成18年3月9日(2006.3.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定する方法であって、複数の異なる選択可能な操作領域のそれぞれはカラーマップ内の固有色の集合のうちの１つの固有色に関連づけられており、該カラーマップは装置のメモリに格納され該ディスプレイには表示されず、該カラーマップは、該操作領域の１つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、
（ａ）前記ディスプレイ上の接触位置に係る一組の座標を生成する工程と、
（ｂ）前記接触位置に関連づけられた前記操作領域を決定する工程と、
を備え、
（１）各色が符号無し整数として一度だけ記載された、前記固有色のそれぞれに係るテーブルが、該固有色それぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納され、
（２）前記接触位置に係る前記一組の座標について、前記カラーマップにおける前記色を示す符号無し整数が取得され、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較される
ことを特徴とする方法。
【請求項２】
前記カラーマップは、前記操作領域のビットマップを用いて取得される
ことを特徴とする請求項１に記載の方法。
【請求項３】
適合するものが発見された場合、その対応する選択可能な操作領域が、前記テーブルと、関連づけて実行される関数と、を用いて決定される
ことを特徴とする請求項１に記載の方法。
【請求項４】
前記カラーマップ内の任意形状に対応する領域を単一色で満たすことが可能である限り、選択可能な操作領域は該任意形状を有することができる
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記異なる選択可能な操作領域の配置及びデザインは、該操作領域及び前記カラーマップの前記ビットマップを変更することにより、異なった配置及びデザインに更新可能であることを特徴とする
請求項１に記載の方法。
【請求項６】
前記操作領域及び前記カラーマップの前記ビットマップの変更は、描画アプリケーションを用いて行われる
ことを特徴とする請求項５に記載の方法。
【請求項７】
自装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定するように適合されたコンピュータ装置であって、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマップ内の固有色の集合のうちの１つの固有色に関連づけられており、該カラーマップは、該操作領域の１つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、前記装置は、
（ａ）前記ディスプレイ上の接触位置に係る一組の座標を生成し、
（ｂ）前記接触位置に関連づけられた前記操作領域を決定する
ように適合され、
（１）各色が符号無し整数として一度だけ記載された、前記固有色のそれぞれに係るテーブルが、該固有色がそれぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納され、
（２）前記接触位置に係る前記一組の座標について、前記カラーマップにおける前記色を示す符号無し整数が取得され、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較される
ことを特徴とするコンピュータ装置。
【請求項８】
前記カラーマップは、前記操作領域のビットマップを用いて取得される
ことを特徴とする請求項７に記載の装置。
【請求項９】
適合するものが発見された場合、前記テーブルと、関連づけて実行される関数と、を用いてその対応する選択可能な操作領域を決定する
ことを特徴とする請求項７に記載の装置。
【請求項１０】
前記カラーマップ内の任意形状に対応する領域を単一色で満たすことが可能である限り、選択可能な操作領域は該任意形状を有することができる
ことを特徴とする請求項７に記載の装置。
【請求項１１】
コンピュータ装置上で動作するようにプログラムされたアプリケーション・ソフトウェアであって、
複数の異なる選択可能な操作領域のそれぞれを前記装置上に表示させ、
カラーマップを備え、
前記カラーマップは、前記操作領域の１つにそれぞれ対応し、かつ、それぞれ固有色に色づけられた領域からなり、
前記カラーマップは、装置のメモリに格納され、前記ディスプレイ上に表示されず、
該ソフトウェアは、請求項１に記載の装置と組み合わせて実行した場合に、請求項１に記載の方法を実行可能である
ことを特徴とするアプリケーション・ソフトウェア。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【書類名】      明細書
【発明の名称】    グラフィカルユーザインタフェースを備えたコンピュータ装置における操作領域選択
【技術分野】
【０００１】
本発明は、グラフィカルユーザインタフェースを備えたコンピュータ装置、特に、タッチスクリーンを備えた装置における、操作領域選択の方法に関する。
【背景技術】
【０００２】
コンピュータ装置用の、Ｓｙｍｂｉａｎ  ＯＳや他のＧＵＩ（グラフィカル・ユーザ・インタフェース）に基づくオペレーティング・システムにおける共通の問題の一つは、ＧＵＩ内のどの操作領域がユーザにより実際に選択されたのか、例えば、ユーザがタッチスクリーンを軽くたたいたときに、どの特定の操作キー又はボタンが選択されたことになるのかを決定することである。スタイラスが表示スクリーンを軽くたたいた場合、接触位置がＸＹ座標に変換される。タッチスクリーンは、一般的に、ディスプレイ（ＬＣＤ等）の上にＩＴＯ層を備え、圧力を検出する。ＩＴＯのオーバーレイに圧力が加えられると、最上部の柔らかい表面が局所的に変形し、変形箇所が堅い固体の基板に接触する。そして、内部の表面層上のＩＴＯ被覆を横切るアナログ電圧のレベルが装置により解釈され、圧力位置のＸＹ座標が与えられる。
【０００３】
次に、ＸＹ座標は、ＯＳによって、その座標に該当するカレントウィンドウに与えられる。そのウィンドウは複数の操作領域を有しており、また、各領域は、一般的には、どれが座標に該当するかを調べるために問い合わせられるだろう。
【０００４】
図１は、ユーザ入力を可能にするために実装された操作ＵＩのデザインを例示した図である。図１において、操作ＵＩは、ユーザが選択可能な７つの操作領域を定義している。これらは、上／下／左／右／確定／Ｙｅｓ／Ｎｏである。
【０００５】
これらの操作領域をＯＳ上で表現するために、各領域はおおよそ矩形で定義される。例えば、図２のように、「上」操作ＵＩは、左上の座標の組がＸ６８，Ｙ４、右下の座標の組がＸ１１１，Ｙ２９の矩形として記録されるであろう。図２は、７つの異なる操作領域について、全ての７つの矩形を示している。
【０００６】
７つの選択可能な操作領域のそれぞれは、矩形として大まかに定義されているため、どの領域がペン／スタイラスで選択されたかを決定することができる。与えられた操作領域上の表示スクリーンにユーザが触れた場合、ペンが接触した位置におけるＸＹ座標が生成される。次に、装置は、ＸＹ座標が矩形の境界の内部に該当するかどうかを確かめるために、各矩形を評価する。ＸＹ座標の組が矩形の境界の内部に該当するかどうかを決定するための一般的なアルゴリズムの一つは次の通りである。
１．ユーザにより選択されたＸ座標は操作領域の左上のＸ座標よりも大きいか。
２．ユーザにより選択されたＸ座標は操作領域の右下のＸ座標よりも小さいか。
３．ユーザにより選択されたＹ座標は操作領域の左上のＹ座標よりも大きいか。
４．ユーザにより選択されたＹ座標は操作領域の右下のＹ座標よりも小さいか。
上記の全ての条件が真ならば、ユーザはその操作領域を選択したということを我々は知ることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ユーザが選択した操作領域を見つけるためには、このアルゴリズムを全ての矩形について実行する必要がある。操作ＵＩのデザインの多くが複雑で、矩形が多数の場合、これは比較的時間を要する処理となりうる。
【０００８】
他の欠点は、捕捉できる操作領域の部分が矩形のみであることである。これは、複雑な形状を有する操作ボタン等の、図形が集中した操作ＵＩのデザインは、指示のイベントを正確に捕捉することが困難になりうることを意味する。図３は、ユーザが「下」の操作を選択した領域を示している。それは「下」の矩形の境界の外にあるため、このイベントは検出されないであろう。
【０００９】
矩形を用いることでユーザ入力を捕捉することが可能であるが、それにより３つの主要な欠点が存在する。
・ヒット領域は矩形でなければならない。任意形状の操作ＵＩを正確に選択することができない。
・座標の２つの組を評価するアルゴリズムは、全てのヒット領域について実行しなければならない。
・ヒット矩形を記述する座標の組の全てを再計算しなければならないため、操作ＵＩのデザインを変更するには時間を要する。
【００１０】
米国特許５７３７５５３号公報を参照することもできる。この特許はヒット領域を矩形にしなければならない問題に取り組んでいるが、その手法はメモリを集中的に使用してしまう。
【課題を解決するための手段】
【００１１】
第１の側面においては、コンピュータ装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定する方法は、複数の異なる選択可能な操作領域のそれぞれはカラーマップ内の固有色の集合のうちの１つの固有色に関連づけられており、該カラーマップは装置のメモリに格納され該ディスプレイには表示されず、該カラーマップは、該操作領域の１つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、
（ａ）前記ディスプレイ上の接触位置に係る一組の座標を生成する工程と、
（ｂ）前記接触位置に関連づけられた前記操作領域を決定する工程と、
を備え、
（１）各色が符号無し整数として一度だけ記載された、前記固有色のそれぞれに係るテーブルが、該固有色それぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納され、
（２）前記接触位置に係る前記一組の座標について、前記カラーマップにおける前記色を示す符号無し整数が取得され、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較されることを特徴とする。
【００１２】
このため、操作キーやボタンについて大まかな矩形近似を行う代わりに、本発明は、その操作キーやボタンに形状及びサイズが好適には正確に対応した領域を有するカラーマップを、生成し、メモリに格納することを要する。その領域は固有色（unique color）で完全に満たされている。同時に表示される他の全ての操作キー又はボタンには、カラーマップにおいて対応する固有色領域が与えられる。従って、装置は、各カラーマップが異なる操作キー／ボタンの配置に対応している、異なるカラーマップの集合を格納するだろう。（例えば、常に利用されることが意図されている操作ＧＵＩデザインのために、）あるカラーマップは装置のＲＯＭに焼かれるかもしれない。或いは、他のカラーマップは、エンドユーザにより装置に読み込まれるアプリケーションソフトウェアの一部となるかもしれない。ただし、そのカラーマップはそのアプリケーションソフトウェアに特有の操作ＧＵＩのデザインに関するものである。カラーマップはスクリーン上には全く表示されず、従って、それは完全に「仮想的」である。使用において、特定の選択／接触された点のＸＹ座標の組が生成された場合、適切なカラーマップにおける同じＸＹ座標に存在するピクセルの色を取得することは、容易であり、非常に高速に行うことができる。このため、その色に対応する操作領域を定めることも非常に高速に行うことができ、容易である。例えば、スクリーンの中央にアイコンが表示される操作ＵＩのデザインを考える。そのアイコンは、例えば、花のように、複雑な形状を有しているとする。その花が選択されると、画像アプリケーションを開く。同じスクリーンには他の操作領域はないものとする。この場合、装置又は画像アプリケーションを指定したとき、その花と正確に同じ形状を有するカラーマップが生成される。そのマップにおいて、その花の内部には１つの色、例えば、青が与えられる。カラーマップの残りの部分は黒である。カラーマップは装置のメモリに格納される。それはスクリーンには全く表示されない。
【００１３】
装置が使用状態にある場合、花のアイコンが表示される。ユーザは花の所望とする箇所に接触する。接触座標が生成され、カラーマップの同じ座標における色を取得するために用いられる。カラーマップの色が青の場合、装置は、（例えば、青は花、黒は機能なし、というように）各色と操作領域を結びつけるテーブルを用いて、取得された色ととりうる色ｓ（青と黒）とを比較する。そして、花が選択されたことを高速に決定することができる。カラーマップの色が黒の場合は、装置は、ユーザが花のアイコンの外のスクリーンに接触したことを知る。操作ＵＩのデザインが複雑な場合、従来技術の手法を用いて全ての異なる矩形を評価することは、複雑で時間を要するであろう。本発明のカラーマップの手法によれば、我々は、ただ異なる色領域を比較するだけである。これは高速であり、計算量的にも効率的である。特に、例えば、高機能電話機や他の種類の携帯電話機等のような、リソースが制約されたコンピュータ装置においては、重要な長所となる。
【００１４】
「コンピュータ装置」という用語には、ディスプレイに表示された操作領域を選択して人間が操作する、あらゆる種類のコンピュータ装置が含まれる。例えば、その用語には、ＰＤＡ、携帯電話機、デジタル音声再生機等の専用装置、リモコンユニット等が含まれる。「操作領域」という用語は、ユーザが何らかの方法で「選択」するであろうあらゆるオブジェクトを含むように拡張的に解釈されるべきである（ただし、「選択」は、例えば、（ａ）テキストデータ／数字データ等のデータ入力、（ｂ）あるアクションの開始、（ｃ）ある機能の制御又は操作、或いは、（ｄ）操作対象のデータの特定等を行うための選択を意味する）。従って、「操作領域」という用語には、キーボードのキー又はタイル（例えば、文字又は数字のキー）、操作ボタン又はスライダ、ジョグダイアル、ジョイスティック、或いは、ローラーボタン等が含まれる。「操作領域」という用語には、それ自体はオブジェクトに該当しないアイテムも含まれる。特に、ユーザが選択するであろうあらゆるアイコンや画像が含まれる。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。
【００１６】
本発明は、イギリス国ロンドンのシンビアン社から提供されているＳｙｍｂｉａｎ  ＯＳ上で実行可能な実装の参照により説明される。Ｓｙｍｂｉａｎ  ＯＳは高機能電話機や他の携帯電話機用に設計されている。この種の装置に存在する限られた処理能力は、本発明を特に価値のあるものにする。
【００１７】
（カラーマップによる解決法）
カラーマップによる解決法によれば、複数の矩形ヒット領域の手法がメモリに格納されたカラーマップで置き換えられる。カラーマップは、我々が入力を取得しようとする操作領域の直接的な表現であり、異なる操作領域のそれぞれについて異なる領域を有する。マップの作成は、単に、操作領域に係る元ビットマップを取得し、我々がユーザ入力を取得する必要がある対応するカラーマップ領域を同一色で塗りつぶすだけである。
【００１８】
図４には、図１の操作ＵＩを示しているカラーマップが示されている。ユーザ入力と見なしたくないカラーマップ領域には、黒で彩色している。そして、例えば、図４では、赤が確定、黄が左、青が右、紫が下というように、関心のあるカラーマップ領域を異なる色でマークすることができる。
【００１９】
ＳｙｍｂｉａｎＯＳにおいては、各色は、ＢＢ、ＧＧ、ＲＲ（青、緑、赤）のフォーマットの３２ビット符号無し整数として格納され、従って、基本の赤は0x0000ff、緑は0x00ff00、青は0xff0000となる。
【００２０】
下の表１に示すように、対応する操作領域への参照に関連づけられたメンバ変数としての、領域に係る既知の色の表（テーブル）を、装置のメモリに格納する。
【表１】
Const TUint KYesAreaColour      = 0xf0ff05; //シアン
Const TUint KNoAreaColour       = 0x80c5f6; //ベージュ
Const TUint KUpAreaColour       = 0x00ff00; //緑
Const TUint KDownAreaColour     = 0xf773d0; //紫
Const TUint KLeftAreaColour     = 0x03faf7; //黄
Const TUint KRightAreaColour    = 0xff0000; //青
Const TUint KConfirmAreaColour  = 0x0000ff; //赤
Const TUInt KblackIgnoreArea    = 0x000000; //黒
カラーマップもメンバ変数として装置のメモリに格納される。
【００２１】
カラーマップの使用法は以下の通りである。ユーザがスタイラスでタップして「左」の操作領域を選択した場合、アプリケーションは、スタイラスの接触位置を示す座標Ｘ５８、Ｙ４１に係るイベントを受けとるであろう。
【００２２】
次に、選択された操作領域に係るプログラムはカラーマップの位置Ｘ５８、Ｙ４１におけるピクセルを問い合わせる。上述のように、カラーマップは、実際にはディスプレイに表示されず、メモリ上にのみ存在する。カラーマップに配置された色は、ディスプレイに表示される色とは関係がない。
【００２３】
ＳｙｍｂｉａｎＯＳにおいては、全てのビットマップはピクセルの集合としてメモリで表現される（ピクセルは、既知の色を格納したのと同じフォーマットによる、色を示す符号無し整数である）。ＳｙｍｂｉａｎＯＳ及び他のＧＵＩに基づくオペレーティングシステムは、メモリ内のビットマップからピクセルを取得する高速な手法を提供しており、Ｘ５８、Ｙ４１のピクセルを取得するために用いるのもこの機能である。
【００２４】
この場合、Ｘ５８、Ｙ４１のピクセルは、（黄に対応する）TUint 0x03faf7として、カラーマップから取得されるだろう。次に、プログラムは次のような命令文を用いるだろう。
2007527046.tif 000020
2007527046.tif 000021
2007527046.tif 000022
2007527046.tif 000023
2007527046.tif 000024
2007527046.tif 000025
2007527046.tif 000026
2007527046.tif 000027
2007527046.tif 000028
この場合、表１に示すように、ピクセル値0x03faf7はKLeftAreaColour値（0x03faf7）に対応するだろう（即ち、プログラムは、ピクセルの色の黄を、その色に対応する操作領域、つまり「左」の操作領域に対応させる）。従って、プログラムはユーザが「左」を選択したと決定するであろう。プログラム命令文の対応する部分は太字で示している。ポイントとなる工程を図６に要約する。
【００２５】
カラーマップの各領域が固有の値を有しているならば、あらゆる色（グレースケールを含む）の組合せを用いることができる。
【００２６】
我々は、一つの符号無し整数と、（それぞれ操作領域と１対１に対応する）異なる領域のそれぞれに係る整数とを比較するため、この手法は処理時間の観点から非常に効率的である。操作ＵＩのデザインが複雑な場合、従来技術のアプローチを用いて全ての異なる矩形について評価することは、複雑で時間を要するであろう。カラーマップの手法によれば、異なる色領域について単に比較するだけでよい。
【００２７】
（カスタマイズ）
カラーマップの手法の他の利点は、マップと元操作ＵＩのビットマップを単に更新するだけで、操作ＵＩのデザインに係る外観を全く違うものにすることができることである。
【００２８】
図７は、（図１の）元の操作ＵＩの完全に新しいデザインを示している。しかし、この新しいデザインは、例えば、上／下／左／右等の元の操作デザインと完全に同じ７つの操作領域をまだ有している。この新しいデザインは、多くの矩形でないヒット領域を含んでいるため、矩形の手法で表現することは極めて困難であろう。
【００２９】
カラーマップの手法でこの操作デザインを更新するには、単に、新しい操作デザインを表す新しいカラーマップビットマップを生成することが必要となるだけである。新しいカラーマップが図８に示されているが、これは描画アプリケーションについてわずかな技術的な知識を持つ者であれば誰にでも生成することができる。唯一の基準は、例えば、「左」矢印の操作領域には0x03faf7（黄）というように、完全に同じ色の値が再度用いられることである。アプリケーションに新しいカラービットマップとカラーマップが追加されれば、プログラムコードの修正は不要である。これは、カラーマップの手法において知ることを要するのは、（例えば、表１に示すように、）どの色がどの操作アクションを示しているかのみであるからである。
【図面の簡単な説明】
【００３０】
【図１】  コンピュータ装置のスクリーンの一部に表示される、７つの異なる操作領域を有する操作ＧＵＩのデザインを示す図である。
【図２】  ７つの操作領域のうち、ユーザにより選択された操作領域を決定するための、矩形に基づく従来手法を模式的に示す図である。
【図３】  従来技術によっては複雑な操作領域をうまく処理できないことを示す図である。
【図４】  本発明において用いられるカラーマップを示す図である。７つの異なる操作領域が存在し、それらはそれぞれ、ディスプレイ上に表示される操作ＧＵＩのデザインの対応する操作領域と、形状及びサイズが正確に等しい。
【図５】  装置が、独自の操作ＵＩデザインのビットマップ、カラーマップ、及び、操作領域に関連づけられた色のテーブルを格納している様子を示す図である。
【図６】  本発明における基本処理のフローチャートを示す図である。
【図７】  図１の操作ＧＵＩのデザインと同種の操作領域を有する、異なる操作ＧＵＩのデザインを示す図である。
【図８】  この異なる操作ＧＵＩのデザインは、異なるカラーマップを用いていかに単純に実現できるかを示す図である。
【手続補正書】
【提出日】平成18年6月20日(2006.6.20)
【手続補正１】
【補正対象書類名】手続補正書
【補正対象項目名】手続補正３
【補正方法】削除
【補正の内容】
【国際調査報告】
2007527046.tif 000029
2007527046.tif 000030
2007527046.tif 000031