説明

グラフィカルユーザインタフェースを備えたコンピュータ装置における操作領域選択

タッチスクリーンに基づくコンピュータ装置のGUIにおける、装置上に格納されたカラーマップで表現された、操作領域(例えば、キーやボタン)。カラーマップは、操作キー又はボタンのそれぞれと、形状及びサイズが完全に対応する領域を有する。各領域は固有色で完全に満たされている。使用において、ある特定の選択/接触された点のXY座標の組が生成された場合、カラーマップにおける同じXY座標に存在するピクセルの色を取得することは、容易であり、非常に高速に行うことができる。このため、そのピクセルの色を、カラーマップ上でそれに関連づけられた色とともに各操作領域を格納するテーブルにおいてマッチングをとることにより、その色に関連づけられた操作領域を決定することも非常に高速で容易に行うことができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、グラフィカルユーザインタフェースを備えたコンピュータ装置、特に、タッチスクリーンを備えた装置における、操作領域選択の方法に関する。
【背景技術】
【0002】
コンピュータ装置用の、Symbian OSや他のGUI(グラフィカル・ユーザ・インタフェース)に基づくオペレーティング・システムにおける共通の問題の一つは、GUI内のどの操作領域がユーザにより実際に選択されたのか、例えば、ユーザがタッチスクリーンを軽くたたいたときに、どの特定の操作キー又はボタンが選択されたことになるのかを決定することである。スタイラスが表示スクリーンを軽くたたいた場合、接触位置がXY座標に変換される。タッチスクリーンは、一般的に、ディスプレイ(LCD等)の上にITO層を備え、圧力を検出する。ITOのオーバーレイに圧力が加えられると、最上部の柔らかい表面が局所的に変形し、変形箇所が堅い固体の基板に接触する。そして、内部の表面層上のITO被覆を横切るアナログ電圧のレベルが装置により解釈され、圧力位置のXY座標が与えられる。
【0003】
次に、XY座標は、OSによって、その座標に該当するカレントウィンドウに与えられる。そのウィンドウは複数の操作領域を有しており、また、各領域は、一般的には、どれが座標に該当するかを調べるために問い合わせられるだろう。
【0004】
図1は、ユーザ入力を可能にするために実装された操作UIのデザインを例示した図である。図1において、操作UIは、ユーザが選択可能な7つの操作領域を定義している。これらは、上/下/左/右/確定/Yes/Noである。
【0005】
これらの操作領域をOS上で表現するために、各領域はおおよそ矩形で定義される。例えば、図2のように、「上」操作UIは、左上の座標の組がX68,Y4、右下の座標の組がX111,Y29の矩形として記録されるであろう。図2は、7つの異なる操作領域について、全ての7つの矩形を示している。
【0006】
7つの選択可能な操作領域のそれぞれは、矩形として大まかに定義されているため、どの領域がペン/スタイラスで選択されたかを決定することができる。与えられた操作領域上の表示スクリーンにユーザが触れた場合、ペンが接触した位置におけるXY座標が生成される。次に、装置は、XY座標が矩形の境界の内部に該当するかどうかを確かめるために、各矩形を評価する。XY座標の組が矩形の境界の内部に該当するかどうかを決定するための一般的なアルゴリズムの一つは次の通りである。
1.ユーザにより選択されたX座標は操作領域の左上のX座標よりも大きいか。
2.ユーザにより選択されたX座標は操作領域の右下のX座標よりも小さいか。
3.ユーザにより選択されたY座標は操作領域の左上のY座標よりも大きいか。
4.ユーザにより選択されたY座標は操作領域の右下のY座標よりも小さいか。
上記の全ての条件が真ならば、ユーザはその操作領域を選択したということを我々は知ることができる。
【発明の開示】
【発明が解決しようとする課題】
【0007】
ユーザが選択した操作領域を見つけるためには、このアルゴリズムを全ての矩形について実行する必要がある。操作UIのデザインの多くが複雑で、矩形が多数の場合、これは比較的時間を要する処理となりうる。
【0008】
他の欠点は、捕捉できる操作領域の部分が矩形のみであることである。これは、複雑な形状を有する操作ボタン等の、図形が集中した操作UIのデザインは、指示のイベントを正確に捕捉することが困難になりうることを意味する。図3は、ユーザが「下」の操作を選択した領域を示している。それは「下」の矩形の境界の外にあるため、このイベントは検出されないであろう。
【0009】
矩形を用いることでユーザ入力を捕捉することが可能であるが、それにより3つの主要な欠点が存在する。
・ヒット領域は矩形でなければならない。任意形状の操作UIを正確に選択することができない。
・座標の2つの組を評価するアルゴリズムは、全てのヒット領域について実行しなければならない。
・ヒット矩形を記述する座標の組の全てを再計算しなければならないため、操作UIのデザインを変更するには時間を要する。
【課題を解決するための手段】
【0010】
第1の側面においては、コンピュータ装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定する方法は、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマスク内の固有色の集合のうちの1つの固有色に関連づけられており、該カラーマスクは、該操作領域の1つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、
(a)前記ディスプレイ上の接触位置に係る一組の座標を生成する工程と、
(b)前記一組の座標における前記カラーマスクの色を取得する工程と、
(c)取得された前記色と同一色に関連づけられた前記操作領域を決定する工程と、
を備える。
【0011】
このため、操作キーやボタンについて大まかな矩形近似を行う代わりに、本発明は、その操作キーやボタンに形状及びサイズが好適には正確に対応した領域を有するカラーマスクを、生成し、メモリに格納することを要する。その領域は固有色(unique color)で完全に満たされている。同時に表示される他の全ての操作キー又はボタンには、カラーマスクにおいて対応する固有色領域が与えられる。従って、装置は、各カラーマスクが異なる操作キー/ボタンの配置に対応している、異なるカラーマスクの集合を格納するだろう。(例えば、常に利用されることが意図されている操作GUIデザインのために、)あるカラーマスクは装置のROMに焼かれるかもしれない。或いは、他のカラーマスクは、エンドユーザにより装置に読み込まれるアプリケーションソフトウェアの一部となるかもしれない。ただし、そのカラーマスクはそのアプリケーションソフトウェアに特有の操作GUIのデザインに関するものである。カラーマスクはスクリーン上には全く表示されず、従って、それは完全に「仮想的」である。
【0012】
使用において、特定の選択/接触された点のXY座標の組が生成された場合、適切なカラーマスクにおける同じXY座標に存在するピクセルの色を取得することは、容易であり、非常に高速に行うことができる。このため、その色に対応する操作領域を定めることも非常に高速に行うことができ、容易である。例えば、スクリーンの中央にアイコンが表示される操作UIのデザインを考える。そのアイコンは、例えば、花のように、複雑な形状を有しているとする。その花が選択されると、画像アプリケーションを開く。同じスクリーンには他の操作領域はないものとする。この場合、装置又は画像アプリケーションを指定したとき、その花と正確に同じ形状を有するカラーマスクが生成される。そのマスクにおいて、その花の内部には1つの色、例えば、青が与えられる。カラーマスクの残りの部分は黒である。カラーマスクは装置のメモリに格納される。それはスクリーンには全く表示されない。
【0013】
装置が使用状態にある場合、花のアイコンが表示される。ユーザは花の所望とする箇所に接触する。接触座標が生成され、カラーマスクの同じ座標における色を取得するために用いられる。カラーマスクの色が青の場合、装置は、(例えば、青は花、黒は機能なし、というように)各色と操作領域を結びつけるテーブルを用いて、取得された色ととりうる色s(青と黒)とを比較する。そして、花が選択されたことを高速に決定することができる。カラーマスクの色が黒の場合は、装置は、ユーザが花のアイコンの外のスクリーンに接触したことを知る。操作UIのデザインが複雑な場合、従来技術の手法を用いて全ての異なる矩形を評価することは、複雑で時間を要するであろう。本発明のカラーマスクの手法によれば、我々は、ただ異なる色領域を比較するだけである。これは高速であり、計算量的にも効率的である。特に、例えば、高機能電話機や他の種類の携帯電話機等のような、リソースが制約されたコンピュータ装置においては、重要な長所となる。
【0014】
「コンピュータ装置」という用語には、ディスプレイに表示された操作領域を選択して人間が操作する、あらゆる種類のコンピュータ装置が含まれる。例えば、その用語には、PDA、携帯電話機、デジタル音声再生機等の専用装置、リモコンユニット等が含まれる。「操作領域」という用語は、ユーザが何らかの方法で「選択」するであろうあらゆるオブジェクトを含むように拡張的に解釈されるべきである(ただし、「選択」は、例えば、(a)テキストデータ/数字データ等のデータ入力、(b)あるアクションの開始、(c)ある機能の制御又は操作、或いは、(d)操作対象のデータの特定等を行うための選択を意味する)。従って、「操作領域」という用語には、キーボードのキー又はタイル(例えば、文字又は数字のキー)、操作ボタン又はスライダ、ジョグダイアル、ジョイスティック、或いは、ローラーボタン等が含まれる。「操作領域」という用語には、それ自体はオブジェクトに該当しないアイテムも含まれる。特に、ユーザが選択するであろうあらゆるアイコンや画像が含まれる。
【発明を実施するための最良の形態】
【0015】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。
【0016】
本発明は、イギリス国ロンドンのシンビアン社から提供されているSymbian OS上で実行可能な実装の参照により説明される。Symbian OSは高機能電話機や他の携帯電話機用に設計されている。この種の装置に存在する限られた処理能力は、本発明を特に価値のあるものにする。
【0017】
(カラーマスクによる解決法)
カラーマスクによる解決法によれば、複数の矩形ヒット領域の手法がメモリに格納されたカラーマスクで置き換えられる。カラーマスクは、我々が入力を取得しようとする操作領域の直接的な表現であり、異なる操作領域のそれぞれについて異なる領域を有する。マスクの作成は、単に、操作領域に係る元ビットマップを取得し、我々がユーザ入力を取得する必要がある対応するカラーマスク領域を同一色で塗りつぶすだけである。
【0018】
図4には、図1の操作UIを示しているカラーマスクが示されている。ユーザ入力と見なしたくないカラーマスク領域には、黒で彩色している。そして、例えば、図4では、赤が確定、黄が左、青が右、紫が下というように、関心のあるカラーマスク領域を異なる色でマークすることができる。
【0019】
SymbianOSにおいては、各色は、BB、GG、RR(青、緑、赤)のフォーマットの32ビット符号無し整数として格納され、従って、基本の赤は0x0000ff、緑は0x00ff00、青は0xff0000となる。
【0020】
下の表1に示すように、対応する操作領域への参照に関連づけられたメンバ変数としての、領域に係る既知の色の表(テーブル)を、装置のメモリに格納する。
[表1]
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; //黒
カラーマスクもメンバ変数として装置のメモリに格納される。
【0021】
カラーマスクの使用法は以下の通りである。ユーザがスタイラスでタップして「左」の操作領域を選択した場合、アプリケーションは、スタイラスの接触位置を示す座標X58、Y41に係るイベントを受けとるであろう。
【0022】
次に、選択された操作領域に係るプログラムはカラーマスクの位置X58、Y41におけるピクセルを問い合わせる。上述のように、カラーマスクは、実際にはディスプレイに表示されず、メモリ上にのみ存在する。カラーマスクに配置された色は、ディスプレイに表示される色とは関係がない。
【0023】
SymbianOSにおいては、全てのビットマップはピクセルの集合としてメモリで表現される(ピクセルは、既知の色を格納したのと同じフォーマットによる、色を示す符号無し整数である)。SymbianOS及び他のGUIに基づくオペレーティングシステムは、メモリ内のビットマップからピクセルを取得する高速な手法を提供しており、X58、Y41のピクセルを取得するために用いるのもこの機能である。
【0024】
この場合、X58、Y41のピクセルは、(黄に対応する)TUint 0x03faf7として、カラーマスクから取得されるだろう。次に、プログラムは次のような命令文を用いるだろう。









この場合、表1に示すように、ピクセル値0x03faf7はKLeftAreaColour値(0x03faf7)に対応するだろう(即ち、プログラムは、ピクセルの色の黄を、その色に対応する操作領域、つまり「左」の操作領域に対応させる)。従って、プログラムはユーザが「左」を選択したと決定するであろう。プログラム命令文の対応する部分は太字で示している。ポイントとなる工程を図6に要約する。
【0025】
カラーマスクの各領域が固有の値を有しているならば、あらゆる色(グレースケールを含む)の組合せを用いることができる。
【0026】
我々は、一つの符号無し整数と、(それぞれ操作領域と1対1に対応する)異なる領域のそれぞれに係る整数とを比較するため、この手法は処理時間の観点から非常に効率的である。操作UIのデザインが複雑な場合、従来技術のアプローチを用いて全ての異なる矩形について評価することは、複雑で時間を要するであろう。カラーマスクの手法によれば、異なる色領域について単に比較するだけでよい。
【0027】
(カスタマイズ)
カラーマスクの手法の他の利点は、マスクと元操作UIのビットマップを単に更新するだけで、操作UIのデザインに係る外観を全く違うものにすることができることである。
【0028】
図7は、(図1の)元の操作UIの完全に新しいデザインを示している。しかし、この新しいデザインは、例えば、上/下/左/右等の元の操作デザインと完全に同じ7つの操作領域をまだ有している。この新しいデザインは、多くの矩形でないヒット領域を含んでいるため、矩形の手法で表現することは極めて困難であろう。
【0029】
カラーマスクの手法でこの操作デザインを更新するには、単に、新しい操作デザインを表す新しいカラーマスクビットマップを生成することが必要となるだけである。新しいカラーマスクが図8に示されているが、これは描画アプリケーションについてわずかな技術的な知識を持つ者であれば誰にでも生成することができる。唯一の基準は、例えば、「左」矢印の操作領域には0x03faf7(黄)というように、完全に同じ色の値が再度用いられることである。アプリケーションに新しいカラービットマップとカラーマスクが追加されれば、プログラムコードの修正は不要である。これは、カラーマスクの手法において知ることを要するのは、(例えば、表1に示すように、)どの色がどの操作アクションを示しているかのみであるからである。
【図面の簡単な説明】
【0030】
【図1】コンピュータ装置のスクリーンの一部に表示される、7つの異なる操作領域を有する操作GUIのデザインを示す図である。
【図2】7つの操作領域のうち、ユーザにより選択された操作領域を決定するための、矩形に基づく従来手法を模式的に示す図である。
【図3】従来技術によっては複雑な操作領域をうまく処理できないことを示す図である。
【図4】本発明において用いられるカラーマスクを示す図である。7つの異なる操作領域が存在し、それらはそれぞれ、ディスプレイ上に表示される操作GUIのデザインの対応する操作領域と、形状及びサイズが正確に等しい。
【図5】装置が、独自の操作UIデザインのビットマップ、カラーマスク、及び、操作領域に関連づけられた色のテーブルを格納している様子を示す図である。
【図6】本発明における基本処理のフローチャートを示す図である。
【図7】図1の操作GUIのデザインと同種の操作領域を有する、異なる操作GUIのデザインを示す図である。
【図8】この異なる操作GUIのデザインは、異なるカラーマスクを用いていかに単純に実現できるかを示す図である。

【特許請求の範囲】
【請求項1】
コンピュータ装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定する方法であって、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマスク内の固有色の集合のうちの1つの固有色に関連づけられており、該カラーマスクは、該操作領域の1つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、
(a)前記ディスプレイ上の接触位置に係る一組の座標を生成する工程と、
(b)前記一組の座標における前記カラーマスクの色を取得する工程と、
(c)取得された前記色と同一色に関連づけられた前記操作領域を決定する工程と、
を備えることを特徴とする方法。
【請求項2】
前記カラーマスクは、前記操作領域のビットマップを用いて取得される
ことを特徴とする請求項1に記載の方法。
【請求項3】
固有色の前記集合に係るテーブルが、該固有色がそれぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納されている
ことを特徴とする請求項2に記載の方法。
【請求項4】
前記テーブル内の前記固有色のそれぞれは符号無し整数として表される
ことを特徴とする請求項3に記載の方法。
【請求項5】
前記カラーマスク内の前記固有色のそれぞれは符号無し整数として表され、前記一組の座標における前記色を表す該符号無し整数は、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較される
ことを特徴とする請求項4に記載の方法。
【請求項6】
適合するものが発見された場合、対応する選択可能な操作領域が前記テーブルを用いて決定される
ことを特徴とする請求項5に記載の方法。
【請求項7】
前記カラーマスク内の任意形状に対応する領域を単一色で満たすことが可能である限り、選択可能な操作領域は該任意形状を有することができる
ことを特徴とする請求項1に記載の方法。
【請求項8】
前記異なる選択可能な操作領域の配置及びデザインは、該操作領域及び前記カラーマスクの前記ビットマップを変更することにより、異なった配置及びデザインに更新可能であることを特徴とする
請求項2に記載の方法。
【請求項9】
前記操作領域及び前記カラーマスクの前記ビットマップの変更は、描画アプリケーションを用いて行われる
ことを特徴とする請求項8に記載の方法。
【請求項10】
自装置のディスプレイ上に表示された操作領域のうち、ユーザにより選択された操作領域を決定するように適合されたコンピュータ装置であって、複数の異なる選択可能な操作領域のそれぞれは、装置のメモリに格納され該ディスプレイには表示されない、カラーマスク内の固有色の集合のうちの1つの固有色に関連づけられており、該カラーマスクは、該操作領域の1つにそれぞれ対応し、かつ、該固有色の一つにそれぞれ色づけられている領域からなり、前記装置は、
(a)前記ディスプレイ上の接触位置に係る一組の座標を生成し、
(b)前記一組の座標における前記カラーマスクの色を取得し、
(c)取得された前記色と同一色に関連づけられた前記操作領域を決定する
ように適合されていることを特徴とするコンピュータ装置。
【請求項11】
前記カラーマスクは、前記操作領域のビットマップを用いて取得される
ことを特徴とする請求項10に記載の装置。
【請求項12】
固有色の前記集合に係るテーブルが、該固有色がそれぞれ関連づけられた選択可能な操作領域への参照とともに、装置のメモリに格納されている
ことを特徴とする請求項11に記載の装置。
【請求項13】
前記テーブル内の前記固有色のそれぞれは符号無し整数として表される
ことを特徴とする請求項12に記載の装置。
【請求項14】
前記カラーマスク内の前記固有色のそれぞれは符号無し整数として表され、前記一組の座標における前記色を表す該符号無し整数は、適合するものが発見されるまで、前記テーブル内の符号無し整数のそれぞれと比較される
ことを特徴とする請求項13に記載の装置。
【請求項15】
適合するものが発見された場合、対応する選択可能な操作領域が前記テーブルを用いて決定される
ことを特徴とする請求項14に記載の装置。
【請求項16】
前記カラーマスク内の任意形状に対応する領域を単一色で満たすことが可能である限り、選択可能な操作領域は該任意形状を有することができる
ことを特徴とする請求項10に記載の装置。
【請求項17】
コンピュータ装置上で動作するようにプログラムされたアプリケーション・ソフトウェアであって、
複数の異なる選択可能な操作領域のそれぞれを前記装置上に表示させ、
カラーマスクを備え、
前記カラーマスクは、前記操作領域の1つにそれぞれ対応し、かつ、それぞれ固有色に色づけられた領域からなり、
前記カラーマスクは、装置のメモリに格納され、前記ディスプレイ上に表示されない
ことを特徴とするアプリケーション・ソフトウェア。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公表番号】特表2007−527046(P2007−527046A)
【公表日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願番号】特願2006−518375(P2006−518375)
【出願日】平成16年7月12日(2004.7.12)
【国際出願番号】PCT/GB2004/003008
【国際公開番号】WO2005/006171
【国際公開日】平成17年1月20日(2005.1.20)
【出願人】(505458762)シンビアン ソフトウェア リミテッド (45)
【氏名又は名称原語表記】SYMBIAN SOFTWARE LIMITED
【住所又は居所原語表記】2−6 Boundary Row,Southwark, London,SE1 8HP, United Kingdom
【Fターム(参考)】