JP5911440B2 - 電子機器 - Google Patents

電子機器 Download PDF

Info

Publication number
JP5911440B2
JP5911440B2 JP2013021002A JP2013021002A JP5911440B2 JP 5911440 B2 JP5911440 B2 JP 5911440B2 JP 2013021002 A JP2013021002 A JP 2013021002A JP 2013021002 A JP2013021002 A JP 2013021002A JP 5911440 B2 JP5911440 B2 JP 5911440B2
Authority
JP
Japan
Prior art keywords
cursor
information
user
display
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013021002A
Other languages
English (en)
Other versions
JP2014153792A (ja
Inventor
裕恵 柏木
裕恵 柏木
愛 高見
愛 高見
操代 藤岡
操代 藤岡
麻美 鍵本
麻美 鍵本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2013021002A priority Critical patent/JP5911440B2/ja
Publication of JP2014153792A publication Critical patent/JP2014153792A/ja
Application granted granted Critical
Publication of JP5911440B2 publication Critical patent/JP5911440B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は電子機器に関し、特に、複数のユーザが共同で利用する電子機器において、複数のユーザが同時に作業を行うことを可能とするマルチカーソル処理システムを備えた電子機器に関する。
近年の情報処理システムにおいては、複数の点に同時に触れて操作することが可能なマルチタッチパネルを有するディスプレイなどを入出力装置として取り入れるようになりつつある。このようなユーザインタフェースの変化に伴い、複数のユーザ間で情報の共有や協同作業を行うための情報処理システムにおいても、大画面の表示装置と複数のコンピュータシステムといった従来の形態ではなく、マルチタッチパネルを介して一つのコンピュータシステムを共同で利用する形態のシステムが現れつつある。
例えば、特許文献1には、マルチタッチパネルを有する電子機器で複数のアプリケーションを実行中に、画面へ接触した領域の大きさによって、その接触がアクティブなアプリケーションに対する処理であるか、アクティブなアプリケーションを切り替える処理であるかを判定する技術が開示されている。
また、特許文献2には、テーブル型の表示装置を囲むユーザの位置を検出するための手段として、赤外線センサ等の機器を用いる構成が開示され、特許文献3では、アプリケーションごとにウィンドウが作成される情報処理システムにおいて、表示装置に表示されるウィンドウごと電子ペンや電子カーソルを使用できる構成が開示されている。
特開2010−231463号公報 特開2001−350588号公報 特開平7−141140号公報
情報処理システムにおける処理の実行単位は「タスク」と呼称され、例えば、アプリケーションやスレッド、プロセス等が含まれる。
一つのコンピュータシステムを複数のユーザが共同で利用する場合、各ユーザが実行したい複数のタスクを、一つのコンピュータシステムで実行しつつ、各ユーザが操作対象とするタスクを判別する必要がある。特に、マルチタッチパネルを有する一つの表示装置に対して、2箇所以上での入力が同時にあった場合、それらの入力が同じタスクへの入力なのか、別々のタスクへの入力なのかを判別する必要がある。また、複数のユーザが操作する場合、複数の入力が同じユーザによるものなのか、複数のユーザによるものなのかなど、入力したユーザを区別できることが望ましい。
しかし、特許文献1のマルチタッチパネルを有する電子機器にあっては、アクティブなアプリケーションを一つしか選択できず、複数のアプリケーションに対する入力を同時に行うことができないため、入力を識別する必要はなく、そのための構成は有していない。
また、特許文献2のテーブル型の表示装置にあっては、ユーザの位置を推定できるが、ユーザ間の距離が近い場合に、どのユーザがどの入力を行ったかを識別することは困難である。
また、特許文献3の情報処理システムにあっては、各アプリケーションに関連付けられたウィンドウごとにカーソルを表示しており、別々に操作することが可能であるため、複数のユーザで作業することが可能である。しかし、入力がどのカーソルからのものであり、どのアプリケーションに対するものであるかは、入力装置の種類によって判別しているため、マルチタッチパネルを一つの入力装置とした場合、マルチタッチパネルの2箇所以上同時に入力された場合、それらの入力を識別することはできない。
本発明は、上記のような問題点を解決するためになされたものであり、マルチタッチパネルを有する一つの表示装置の画面上で、2箇所以上の入力が同時にあった場合でも、操作対象のタスクや操作したユーザを正しく判別できる電子機器を提供する。
本発明に係る電子機器は、表示装置に備えられたタッチパネルを介した入力操作であるイベントを受け、前記イベントに基づいて、前記表示装置の表示画面に、アプリケーションごとに関連付けられた複数のタスクの内容を同時に表示する電子機器であって、入力された前記イベントの種類を判断する入力イベント処理手段と、前記表示画面上でのカーソルの位置を示すカーソル位置情報と、前記複数のタスクのそれぞれに対応して設けられたカーソルが、どのタスクに属するカーソルであるかを示す所属タスク情報とを有するカーソル情報を格納するカーソル情報格納部と、カーソルの形状を示す情報と、カーソルの色情報とを有するカーソル定義を格納するカーソル定義格納部と、前記表示画面上の全てのカーソルを管理し、前記カーソル情報を前記カーソル情報格納部に格納すると共に、前記カーソル位置情報を用いて、その位置にあるカーソルの前記所属タスク情報を前記カーソル情報格納部から検索して取得し、前記イベントが発生した前記表示画面上の位置情報を用いて、どのカーソルを用いた操作であるかを判断するカーソル管理手段と、カーソルの移動後の位置を決定し、前記カーソル位置情報を更新するカーソル移動手段と、前記カーソル定義格納部から前記カーソル定義を取得し、前記カーソル定義と前記カーソル管理手段が管理する前記カーソル情報とを用いて、カーソルの表示処理を行うカーソル表示手段と、前記カーソル管理手段で操作中のカーソルの前記所属タスク情報に基づいて、前記操作中のカーソルの操作対象のタスクおよび操作しているユーザのうち、少なくとも一方をコンテキストとして特定するコンテキスト特定手段とを備えている。
本発明に係る電子機器によれば、どのカーソルを用いた操作であるかを判断し、操作中のカーソルの所属タスク情報に基づいて、操作中のカーソルのコンテキストを特定するので、操作対象のタスクや操作したユーザを正しく判別できる。
本発明に係る実施の形態1の電子機器のハードウェア構成を示すブロック図である。 本発明に係る実施の形態1の電子機器に含まれるマルチカーソル処理システムの構成を示すブロック図である。 本発明に係る実施の形態1におけるカーソル情報の一例を示す図である。 本発明に係る実施の形態1におけるカーソル定義の一例を示す図である。 本発明に係る実施の形態1におけるカーソルの形状を表す画像の一例を示す図である。 本発明に係る実施の形態1におけるカーソルに表示するタスク用の画像の例を示す図である。 本発明に係る実施の形態1におけるカーソルの一例を示す図である。 本発明に係る実施の形態1におけるイベントの一例を示す図である。 本発明に係る実施の形態1におけるイベントの一例を示す図である。 本発明に係る実施の形態1の電子機器の平面構成の一例を示す図である。 本発明に係る実施の形態1におけるマルチカーソル処理システムの内部処理手順の全体動作を示すフローチャートである。 本発明に係る実施の形態1におけるマルチカーソル処理システムのカーソル移動処理の手順を示すフローチャートである。 本発明に係る実施の形態1におけるマルチカーソル処理システムのカーソル表示処理の手順を示すフローチャートである。 本発明に係る実施の形態1におけるマルチカーソル処理システムのコンテキスト特定処理の手順を示すフローチャートである。 本発明に係る実施の形態1におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態1におけるマルチカーソル処理システムのカーソルの例を示す図である。 本発明に係る実施の形態1におけるカーソル情報の一例を示す図である。 本発明に係る実施の形態1におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態1におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態1におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態1におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態2の電子機器に含まれるマルチカーソル処理システムの構成を示すブロック図である。 本発明に係る実施の形態2におけるカーソル情報の一例を示す図である。 本発明に係る実施の形態2におけるマルチカーソル処理システムの内部処理手順の全体動作を示すフローチャートである。 本発明に係る実施の形態2におけるマルチカーソル処理システムのカーソル移動処理の手順を示すフローチャートである。 本発明に係る実施の形態2におけるマルチカーソル処理システムのユーザ位置推定処理の手順を示すフローチャートである。 本発明に係る実施の形態2におけるマルチカーソル処理システムのユーザ位置の推定方法の一例を示す図である。 本発明に係る実施の形態2のマルチカーソル処理システムのカーソル表示処理の手順を示すフローチャートである。 本発明に係る実施の形態2のマルチカーソル処理システムの各タスクの表示処理の手順を示すフローチャートである。 本発明の実施の形態2に係るマルチカーソル処理システムの回転させたカーソルを表示する画面の一例を示す図である。 本発明の実施の形態2に係るマルチカーソル処理システムのタスクの表示内容の方向を変更した画面の一例を示す図である。 本発明に係る実施の形態3におけるマルチカーソル処理システムの内部処理手順の全体動作を示すフローチャートである。 本発明に係る実施の形態3におけるカーソル情報の一例を示す図である。 本発明に係る実施の形態3におけるマルチカーソル処理システムのカーソル表示処理の手順を示すフローチャートである。 本発明に係る実施の形態3におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態3におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態3におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態3におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態4の電子機器に含まれるマルチカーソル処理システムの構成を示すブロック図である。 本発明に係る実施の形態4におけるマルチカーソル処理システムのカーソル移動処理の手順を示すフローチャートである。 本発明に係る実施の形態4のマルチカーソル処理システムの各タスクの表示処理の手順を示すフローチャートである。 本発明に係る実施の形態4におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態4におけるマルチカーソル処理システムで表示される画面の一例を示す図である。 本発明に係る実施の形態4におけるマルチカーソル処理システムで表示される画面の一例を示す図である。
<実施の形態1>
本実施の形態では、ユーザがマルチタッチパネルを有する画面上に表示されたカーソルを使用して入力すると、どのカーソルを使用して操作したかを識別することにより、操作のコンテキストを特定するマルチカーソル処理システムについて説明する。
以下において、マルチタッチパネルでの入力とは、指あるいは掌等による画面上へのタッチやスワイプ(タッチした状態で滑らすように動かす操作)等の行為を指している。また、操作のコンテキストとは、操作対象のタスクや操作したユーザ等を示している。また、先に説明したように、タスクとは処理の実行単位を示しており、アプリケーションやスレッド、プロセス等を指す。
本実施の形態においては、ユーザがアプリケーションを一つ起動すると、タスクが一つ起動するものとする。つまり、ユーザAがアプリケーションaとアプリケーションbを起動し、ユーザBがアプリケーションaとアプリケーションbを起動した場合、合計4つのタスクが起動することになる。
<構成>
図1は本発明に係る実施の形態1の電子機器100のハードウェア構成を示すブロック図である。
図1に示すように電子機器100は、中央処理装置2、主記憶装置3およびハードディスク等の外部記憶装置4を含むコンピュータシステム1と、マルチタッチパネルの入力装置5と、マルチタッチパネルを有するディスプレイ等の表示装置6とを主たる構成として備えている。
図2は、電子機器100に含まれるマルチカーソル処理システム200の構成を示すブロック図である。
図2に示されるようにマルチカーソル処理システム200は、入力装置5に接続される入力イベント処理手段201、入力イベント処理手段201に接続されるカーソル管理手段202、カーソル管理手段202に接続されるカーソル情報を格納するカーソル情報格納部203、カーソル移動手段204、カーソル表示手段205およびコンテキスト特定手段207を備えている。
また、カーソル表示手段205に接続されるカーソル定義を格納するカーソル定義格納部206および表示手段214と、タスク208、209および210の表示処理をそれぞれ行うタスク表示手段211、212および213とを備えている。
入力イベント処理手段201は、入力装置5から入力された入力内容や入力位置に関する座標を受け取り、ユーザが行う入力操作(イベント)の種類を判別する。
カーソル管理手段202は、表示装置6の画面上に表示される全てのカーソルを管理し、カーソル情報をカーソル情報格納部203に格納し、カーソルの位置情報を用いて、その位置にあるカーソルのカーソル情報をカーソル情報格納部203から検索して取得し、イベントが発生した画面上の位置情報を用いて、どのカーソルの操作であるかを判断する。
カーソル移動手段204は、カーソルの移動後の位置を決定し、移動後のカーソルの位置情報をカーソル管理手段202を介してカーソル情報格納部203に格納することでカーソルの位置情報を更新する。
カーソル表示手段205は、カーソル管理手段202が管理するカーソル情報と、カーソル定義格納部203から取得したカーソル定義を用いて、カーソル管理手段202が管理するカーソルの表示処理を行う。
コンテキスト特定手段207は、カーソル管理手段202で操作中のカーソルのカーソル情報から、操作対象のタスクおよび操作しているユーザを特定する。
表示手段214は、カーソル表示手段205で処理されたカーソルと、タスク表示手段211〜213で処理されたタスクの内容を合わせて、表示装置6に表示する表示処理を行う。
次に、カーソル情報格納部203に格納されるカーソル情報について説明する。カーソル情報は、カーソルの画面上の位置情報と、複数のタスクのそれぞれに対応して設けられたカーソルが、どのタスクに属するカーソルであるかを示す所属タスク情報とを含む情報であり、カーソル情報格納部203には、複数のカーソル情報が格納される。また、所属タスク情報は、カーソルが所属するタスクやアプリケーション、ユーザの情報等を示すものである。
図3にカーソル情報の内容を一覧で示す。図3に示すように、カーソル情報には、タスクID、アプリケーションID、ユーザID、カーソル位置x、カーソル位置yおよび直近操作フラグが含まれている。
タスクIDは、タスクの分類を示すものであり、タスクが何れの分類に属するかを数字で示している。
アプリケーションIDは、アプリケーションの分類を示すものであり、アプリケーションが何れの分類に属するかを数字で示している。
また、ユーザIDは、ユーザの識別情報であり、ユーザを数字で識別している。なお、図3では、タスク、アプリケーションおよびユーザの情報を全て識別番号(ID)で表しているが、名称等を用いても良く、タスク、アプリケーションおよびユーザを識別できるのであればIDでなくても良い。
カーソル位置xおよびカーソル位置yは、カーソルの画面上の位置座標(x,y)を示している。図3では、一例としてカーソル位置xは200、カーソル位置yは550として表されている。これは、マルチタッチパネルをマトリクス状に区分し、カーソルの位置をX方向での升目の個数と、X方向での升目の個数で表した例である。カーソルが動く度に、カーソル位置xおよびカーソル位置yの座標は更新される。
直近操作フラグは、直近に操作されたカーソル(アクティブなカーソル)であるかどうかを示すフラグで、TRUEの場合は直近に操作されたカーソル、FALSEの場合は直近に操作されたカーソルでないことを意味する。なお、直近操作フラグは、必ずしもカーソル情報に含まれている必要はなく、直近に操作されたカーソルの情報を、リストとして管理するものであっても良い。
次に、カーソル定義格納部206に格納されるカーソル定義について説明する。カーソル定義は、カーソルの形状を表す画像の画像ファイルの名称や色のRGB値等のカーソルの画像を表示する際に必要な情報を示すものである。
図4にカーソル定義の内容を一覧で示す。図4に示すように、カーソル定義には、カーソル形状画像ファイル名称、アプリケーション用画像ファイル名称[1]、[2]・・・、ユーザ用色[1]、[2]・・・が含まれている。
カーソル形状画像ファイル名称は、カーソルの形状が描かれている画像ファイルの名称であり、例えば、図5に示すような画像のファイル名であり、図5では識別子gifを用いたファイル名(Shape.gif)で表されている。
なお、図4では、カーソル形状画像ファイル名称を一つ定義しているが、複数定義するものであっても良い。
アプリケーション用画像ファイル名称は、カーソル形状を表す画像に上から重ねて描画する画像ファイルの名称である。実行するアプリケーションの種類と同じ数のアプリケーション用画像ファイルがあり、アプリケーションの種類が増えると、アプリケーション用画像ファイル名称の定義も増え、番号[1]、[2]などが付されて区別される。
アプリケーション用画像は、アプリケーションの内容が判るような画像であることが望ましい。例えば、図6の(a)部および(b)部に示されるような画像である。図6の(a)部には付箋アプリケーションを表現した画像(AppliPicture1.gif)を示し、図6の(b)部には電柱配置計画アプリケーションを表現した画像(AppliPicture2.gif)を示している。
ユーザ用色定義は、カーソルの色をRGB値等で示すものである。操作するユーザと同じ数のユーザ用色が定義されており、ユーザが増えると、ユーザ用色の定義も増え、番号[1]、[2]などが付されて区別される。
カーソルの画像は、カーソル情報に含まれるアプリケーションIDとユーザIDに基づいて、図4示されるカーソル定義を組み合わせて作成される。例えば、アプリケーションIDが1のアプリケーションに対応する画像が、アプリケーション用画像ファイル名称[1]の画像ファイルであり、ユーザIDが1のユーザに対応する色が、ユーザ用色定義[1]であるとする。この場合、アプリケーションIDが1でユーザIDが1のカーソル情報から作成されるカーソル画像は、図7に示される画像となる。
すなわち、図7では、カーソルの色が「#CCFFFF」となっており、カーソルの形状を表す画像「Shape.gif」の上に、アプリケーションの内容を示す画像「AppliPicture1.gif」が重ねて描画されている。
次にイベントについて説明する。イベントは、入力装置5を介してユーザが行う入力操作を示すものであり、イベントが発生した場合、入力イベント処理手段201が、イベントの発生位置情報に基づいてイベントの種類を判別し、イベント情報とする。なお、イベントの発生位置の情報にはマルチタッチパネル上のイベントが開始された位置の座標(開始位置座標)とイベントが終了した位置の座標(終了位置座標)などを含んでいる。
図8にイベントの種類を一覧で示す。図8に示すように、イベントの種類には、マルチタッチパネルの画面に指が新たに触れたときに発生する「タッチ開始」、画面に触れた状態のままで、指を動かしたときに発生する「タッチ中」、画面に触れていた指を画面から離したときに発生する「タッチ終了」、画面に掌等の広範囲のものが新たに触れたときに発生する「広範囲タッチ開始」、画面に掌等の広範囲のものが触れた状態のままで、それを動かしたときに発生する「広範囲タッチ中」、画面に触れていた掌等の広範囲のものを、画面から離したときに発生する「広範囲タッチ終了」などが含まれる。
また、図9には、タッチ終了イベント発生直後や広範囲タッチ終了イベント発生直後に発生するイベントを示す。このようなイベントとしては、例えば、タッチして素早く離す操作(マウス操作のクリックに相当)が行われたときに発生する「タップ」や、タッチした状態で、画面上を滑らすように動かして離したときに発生する「スワイプ」がある。
以上説明したマルチカーソル処理システム200は、図1に示される電子機器100の各部で実現される。すなわち、カーソル情報格納部203およびカーソル定義格納部206は、主記憶装置3で実現しても良いし、外部記憶装置4で実現しても良い。
入力イベント処理手段201、カーソル管理手段202、カーソル移動手段204、カーソル表示手段205、コンテキスト特定手段207、タスク208〜210、タスク表示手段211〜213、表示手段214は、外部記憶装置4に記憶されており、中央処理装置2により主記憶装置3上に展開され、実行されるコンピュータプログラムで実現される。
図10には電子機器100の平面構成の一例を示す。図10に示すように、電子機器100は、マルチタッチパネルを有する表示装置6の表示画面が外部に向かうように有底無蓋の筐体CSに収納されており、表示装置6の表示画面上にマルチタッチパネルが配設されている。従って、表示装置6の表示画面上に表示された画像は、マルチタッチパネルを介してユーザに視認される。なお、図1に示したコンピュータシステム1は、筐体CS内に収納されている。
図10においては、表示装置6の表示画面に地図画像が表示され、地図画像には、複数のカーソルが表示されている。すなわち、ユーザAのアプリケーションA用カーソルUAA、ユーザAのアプリケーションB用カーソルUAB、ユーザBのアプリケーションA用カーソルUBAおよびユーザBのアプリケーションB用カーソルUBBが表示されている。マルチタッチパネルを介してこれらのカーソルをユーザが操作することで、コンピュータプログラムで実現されるアプリケーションを機能させることができる。
<動作>
<全体動作>
次に、図1、図2を参照しつつ、図11〜図14に示すフローチャートを用いて、操作対象のタスクや操作したユーザを判定する際の、マルチカーソル処理システムの内部処理手順を説明する。
図11は、内部処理手順の全体動作を示すフローチャートである。図11に示すように、本システムが起動されると、入力待ちの状態に入る(ステップS101)。ここで、入力とは、入力装置5を介してのユーザによる入力操作(イベント)を示している。
イベントが発生した場合は、入力イベント処理手段201がイベントの発生位置情報に基づいてイベントの種類を判別し、イベント情報としてカーソル管理手段202に与える(ステップS102)。
その後、カーソル管理手段202は、カーソル情報格納部203から、イベントの開始位置座標にあるカーソルの情報を検索する(ステップS103)。
そして、カーソル管理手段202は、カーソル情報の検索結果を判定し(ステップS104)、カーソル情報があれば、カーソル管理手段202は、カーソル移動手段204にそのカーソル情報とイベントの発生位置情報を与え、カーソル移動手段204がカーソル移動処理を行い、移動後のカーソル位置を含むカーソル情報をカーソル管理手段202に与える(ステップS105)。ステップS105の詳細は後述する。
一方、ステップS104において、カーソル情報がないと判定された場合は、ステップS101の入力待ちの状態へ戻る。
カーソル管理手段202は、ステップS105において取得された、移動後のカーソル位置情報を含むカーソル情報を、カーソル情報格納部203へ格納することでカーソル情報を更新する(ステップS106)。
また、ステップS106では、カーソル管理手段202は、更新したカーソル情報の直近操作フラグをTRUEに更新し、それまで直近操作フラグがTRUEになっていたカーソル情報の直近操作フラグをFALSEに更新して、カーソル情報格納部203へ格納する。なお、直近操作フラグがTRUEであるカーソル情報は一つに限定されるものではなく、ユーザごとに一つであっても良い。
また、上記ではカーソル情報の直近操作フラグを用いて、直近に操作されたか否かを判定しているが、カーソル管理手段202が、直近に操作されたカーソルの情報を、リストとして管理し、リストを更新するものであっても良い。
カーソル管理手段202は、カーソル表示手段205にカーソル情報を渡し、カーソル表示手段205は、カーソルの表示処理を行う(ステップS107)。ステップS107の詳細は後述する。
カーソル管理手段202は、コンテキスト特定手段207にカーソル情報と入力イベント処理手段201から取得したイベント情報を渡し、コンテキスト特定手段207は、コンテキスト特定処理を行う(ステップS108)。ステップS108の詳細は後述する。
ステップS108において操作対象であると判定されたタスクが、カーソル情報に含まれる情報とイベント情報を受け取り、受け取ったイベントの種類に応じた処理を実行する(ステップS109)。
ステップS109において操作対象のタスクが処理を実行後、全てのタスクが処理を終了したかどうかを判定する(ステップS110)。そして、全てのタスクが終了した場合には、本システムは処理を終了し、未終了のタスクがある場合には、ステップS111に移行する。
ステップS111では、タスク表示手段211〜213が、それぞれ、タスク208〜210の内容の表示処理を行う。
表示手段214は、ステップS107で処理されたカーソルと、ステップS111において処理されたタスクの内容を合わせて、表示装置6に表示する表示処理を行う(ステップS112)。そして、表示処理後は、ステップS101の入力待ちの状態へ戻る。
<カーソル移動処理>
次に、図12に示すフローチャートを用いて、ステップS105のカーソル移動処理の詳細について説明する。
まず、カーソル移動手段204が、カーソル管理手段202から、イベント情報に含まれるイベントの発生位置情報と、移動させるカーソルのカーソル情報を取得する(ステップS1051)。
カーソル移動手段204は、ステップS1052において、イベントの発生位置情報を用いてカーソルの移動後の座標を決定する。すなわち、イベントとはユーザによる入力操作であり、入力操作には先に説明したように「タッチ」の他に「タップ」や「スワイプ」などがある。「タッチ」の場合はイベントの発生位置は一点に限定されるので、発生位置情報はその一点の位置情報となるが、「スワイプ」や「ドラッグ」の場合は、発生位置は二点以上となるので、発生位置情報は複数の点の位置情報となる。
従って、カーソルをドラッグしたような場合、カーソル移動手段204は、イベントの発生位置情報から、カーソルの移動開始位置座標と、カーソルの移動終了位置座標を得ることができる。
なお、本実施の形態においては、カーソルの移動終了位置座標をカーソルの移動後の座標とするが、開始位置座標と終了位置座標との距離(dis)と、開始位置から終了位置への方向(dir)を計算し、終了位置から方向dirへ距離dis離れた位置の座標をカーソルの移動後の座標とする等の計算を行って、移動後の座標を決めても良い。
カーソル移動手段204は、移動させるカーソルのカーソル位置を、ステップS1052において決定した、カーソルの移動後座標に更新し、カーソル管理手段202にそのカーソル情報を与える(ステップS1053)。
<カーソル表示処理>
次に、図13に示すフローチャートを用いて、ステップS107のカーソル表示処理の詳細について説明する。
まず、カーソル表示手段205は、カーソル管理手段202からカーソル情報を取得する(ステップS1071)。
次に、カーソル表示手段205は、ステップS1071で取得したカーソル情報のアプリケーションIDとユーザIDを用いて、該当するカーソル定義をカーソル定義格納部から取得する(ステップS1072)。
その後、カーソル表示手段205は、ステップS1071で取得したカーソル情報のカーソル位置から、カーソルの表示位置を決定する(ステップS1073)。
そして、カーソル表示手段205は、ステップS1071で取得したカーソル情報の直近操作フラグがTRUEであるか否かを判定する(ステップS1074)。フラグがTRUEであれば、そのカーソルを強調表示し(ステップS1075)、フラグがFALSEであれば、そのカーソルを通常表示する(ステップS1076)。
その後、カーソル表示手段205は、全てのカーソルの表示処理が完了しているかを判定する(ステップS1077)。そして、完了していなければ、ステップS1071のカーソル情報を取得する状態へ戻り、完了していれば、カーソル表示手段205は、カーソルの表示処理を終了する。
なお、上記では、直近に操作されたカーソルを強調表示する方法を示したが、直近に操作されたカーソル以外のカーソルを半透明で表示し、直近に操作されたカーソルを通常表示するものであっても良く、また、特に表示を変更せず、全てのカーソルを通常表示するものであっても良い。
<コンテキスト特定処理>
次に、図14に示すフローチャートを用いて、ステップS108のコンテキスト特定処理の詳細について説明する。
まず、コンテキスト特定手段207が、カーソル管理手段202から操作中のカーソルのカーソル情報とイベント情報とを受け取る(ステップS1081)。
ステップS1081で受け取ったカーソル情報のタスクID、アプリケーションID、ユーザIDを用いて、操作対象のタスクと操作中のユーザを判定する(ステップS1082)。
最後に、操作対象のタスクに、ステップS1081において取得したカーソル情報に含まれる情報と、ステップS1081で受け取ったイベント情報を与える(ステップS1083)。
<操作方法>
次に、図1、図2、図11〜図14を参照しつつ、図15〜図21を用いて、実施の形態1の電子機器100のマルチカーソル処理システム200を用いた操作方法について説明する。
図15には、マルチカーソル処理システム200を用いて表示装置6に表示される表示画面の一例を示す。
図15に示されるように、表示画面には、付箋アプリケーションの内容と電柱配置計画アプリケーションの内容が地図に重畳して表示されている。すなわち、付箋アプリケーション用のカーソル71、72と電柱配置計画アプリケーション用のカーソル73、74が地図に重畳されており、それらはカーソルに表示される画像によって、ユーザがアプリケーションの内容を識別できるようになっている。なお、アプリケーションの内容の識別は、カーソルの画像の違いに限るものではなく、例えば、カーソルの形や色の違いによって識別できるものであっても良い。
また、図15においては、カーソル71、73はユーザAのもの、カーソル72、74はユーザBのものであり、これはカーソルの色(図ではハッチングの有無で表される)によって、ユーザが識別できるようになっているが、これに関しても、カーソルの違いは色の違いに限るものではない。例えば、カーソルの形や表示される画像が異なるものであっても良い。
なお、タスクの識別方法とユーザの識別方法は、異なる方法であることが望ましい。また、図15では、全てのカーソルを半透明で表示しているが、これに限定されるものではない。
図16にはカーソルの例を示す。図15においてカーソル71は、ユーザAの付箋アプリケーション用のカーソルであり、カーソル71は、ユーザBの付箋アプリケーション用のカーソルである。また、カーソル73は、ユーザAの電柱配置計画アプリケーション用のカーソルであり、カーソル74は、ユーザBの電柱配置計画アプリケーション用のカーソルである。
各カーソルのカーソル情報の例を図17に一覧で示す。図17に示すように、付箋アプリケーションのアプリケーションIDを1とし、電柱配置計画アプリケーションのアプリケーションIDを2としている。
また、ユーザAのユーザIDを1とし、ユーザBのユーザIDを2としている。なお、アプリケーションの起動に際してはユーザ名の登録などの手続を行うことを前提とすることで、例えば、ユーザAが付箋アプリケーションと電柱配置計画アプリケーションとを起動させると、ユーザ名の情報に基づいて上記のようにユーザIDが設定される。タスクIDは、ユーザがアプリケーションを起動した順に採番しており、図17では、全てのアプリケーションで通し番号になるようにしている。なお、タスクIDは、アプリケーションごとに採番されるものであっても良い。なお、それぞれの直近操作フラグは、最初は全てFALSEに設定されている。
付箋アプリケーションは、地図に表示されているある地点に関するコメントを残しておきたい場合に用いるアプリケーションである。すなわち、コメントを残しておきたい地点に関連付けて付箋を作成、登録しておけば、その地点をタップ等の操作により選択すると、その地点の近くに登録してある付箋が表示される。
そして、選択可能な地点には付箋アイコンを表示することでユーザの利便性を高める。図15では、地図上に付箋アイコン75、76、77が星形で表示されている。
また、電柱配置計画アプリケーションは、電柱をどのように配置するかを計画するためのアプリケーションである。すなわち、電柱を配置しようと考える地図上の地点をタップ等の操作により選択すると、その地点に電柱マークを表示する。図15では、地図上に電柱マーク78、79、80が二重円で表示されている。
ユーザAおよびユーザBが共に付箋アプリケーションと電柱配置計画アプリケーションを起動させると、表示装置6に、図15のような画面が表示される。
この時点でマルチカーソル処理システムのカーソルに関する内部処理が開始され、図11のステップS101が実行されている。ユーザAがカーソル71を指でドラッグして、付箋アプリケーションの付箋アイコン75の位置に移動させると、画面ではカーソル71が指に追従して移動するように表示される。
図18には、カーソル71の移動後の画面を示しており、移動後のカーソル71は強調表示されている。このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返して実行している。なお、図18では、直近に操作されたカーソル(すなわちカーソル71)以外のカーソルを半透明で表示している。
次に、ユーザBがカーソル74を指でドラッグして移動させると、カーソル71と同様に、カーソルが指に追従して移動するように表示される。
図19には、カーソル74の移動後の画面を示しており、移動後のカーソル74は強調表示されている。このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返して実行している。
次に、カーソル71が付箋アイコン75の上にある状態で、ユーザAがカーソル71を指でタップする操作と、ユーザBがカーソル74を指でタップする操作を同時に行うと、図20に示されるように付箋アイコン75に関する付箋81が表示され、また、ユーザBがタップした地点には、電柱マーク82が表示される。このとき、システムの内部では、ステップS101〜ステップS112を繰り返し実行している。
次に、ユーザAがカーソル73を動かし始めると、図21に示されるようにカーソル71の強調表示が解除され、代わりにカーソル73が強調表示される。このとき、システムの内部では、ステップS101〜ステップS112を繰り返し実行している。
このように、システムの操作が終了するまで、システム内部でステップS101〜ステップS112の処理を繰り返す。
以上説明したように、各ユーザがカーソルを介して入力操作を行った場合、どのカーソルを使用して入力操作したかを識別することで、操作のコンテキストを特定できるので、操作対象のタスクや操作したユーザを正しく判別することができる。
また、操作中のカーソルや最後に操作したカーソルを強調表示することで、直近で使用されたアプリケーションや使用しているユーザを見分けることができるので、複数のユーザが相談しながら作業を行う場合に、他人の作業状況の把握が容易となる。
また、操作中のカーソルや最後に操作したカーソル以外を半透明に表示することで、複数表示されているカーソルによって、画面が見づらくなることを回避できる。
<実施の形態2>
<構成>
本実施の形態では、カーソルの回転操作時に、その回転角度からユーザの位置とユーザが見ている方向を推定する、テーブルトップ型のディスプレイを備えたマルチカーソル処理システムについて説明する。複数のユーザがテーブルトップ型のディスプレイを見る場合、ディスプレイを囲む形態となるため、様々な方向から表示画面を見ることとなる。
なお、実施の形態2の電子機器100Aのハードウェア構成は、図1に示した電子機器100と同じであるが、表示装置6はテーブルトップ型となるためより大型となる。また、実施の形態2の電子機器100Aの外観も、図10に示した電子機器100と同様であるが、より大きなものとなる。
図22は、実施の形態2の電子機器に含まれるマルチカーソル処理システム200Aの構成を示すブロック図であるが、基本的には実施の形態1のマルチカーソル処理システム200と同じであり、カーソル管理手段202に接続されたユーザ位置推定手段215を備える点が異なっている。
ユーザ位置推定手段215は、カーソルの回転角度を用いて、そのカーソルを操作しているユーザの位置とユーザが見ている方向を推定し、カーソル表示手段205は、回転角度に合わせたカーソルの表示処理を行う。
また、カーソル管理手段202は、カーソルの回転角度を管理し、ユーザ位置推定手段215に、カーソルの回転角度の情報を与える。なお、カーソルの回転角度は、カーソル情報の一部としてカーソル情報格納部203に格納される構成であっても良い。
タスク表示手段211〜213は、ユーザ位置推定手段215において推定されたユーザの位置とユーザが見ている方向の情報を用いて、画面上に表示する表示内容の方向を、ユーザが見やすい方向に変更する。
なお、ユーザ位置推定手段215は、中央処理装置2により主記憶装置3上に展開され、実行されるコンピュータプログラムで実現されるが、当該コンピュータプログラムは主記憶装置3に記憶されていても良いし、外部記憶装置4に記憶されていても良い。
ここで、カーソル情報には、カーソルの回転角度の情報の他に、そのカーソルを操作しているユーザがいる位置の座標を含んでいる。ただし、これらの情報は、必ずしもカーソル情報に含まれている必要はなく、カーソル管理手段202が管理する構成であっても良い。
図23にカーソル情報の内容を一覧で示す。図23に示すように、カーソル情報には、タスクID、アプリケーションID、ユーザID、カーソル位置x、カーソル位置y、直近操作フラグ、回転角度、ユーザ位置xおよびユーザ位置yが含まれている。なお、ユーザ位置xおよびユーザ位置yは、実施の形態2の電子機器の外側の位置となるが、マルチタッチパネルをマトリクス状に区分した場合の升目の個数を用いて表すことができる。なお、ユーザ位置の推定処理の詳細については後に説明する。
<動作>
<全体動作>
次に、図22を参照しつつ、図24〜図29を用いて、操作対象のタスクや操作したユーザおよびユーザ位置を判定する際の、マルチカーソル処理システムの内部処理手順を説明する。
図24は、内部処理手順の全体動作を示すフローチャートである。なお、図24に示すステップS101〜ステップS104、ステップS106、ステップS108〜ステップS110、ステップS112の処理は、図11に示したステップS101〜ステップS104、ステップS106、ステップS108〜ステップS110、ステップS112の処理と同様であるので説明は省略する。
図24において、ステップS101〜S104の処理を行った後、ステップS105において、カーソル管理手段202は、カーソル移動手段204に、カーソル情報とイベント情報を与え、カーソル移動手段204がカーソルの移動処理を行い、移動後のカーソル情報をカーソル管理手段202に与える。ステップS105の詳細は後述する。
ステップS105の処理の後、カーソル管理手段202は、ステップS105において取得されたカーソル情報を、カーソル情報格納部203へ格納することでカーソル情報を更新する(ステップS106)。
ステップS106の処理の後、ユーザ位置推定手段215は、ステップS213において、カーソルの回転角度を用いて、そのカーソルを操作しているユーザの位置情報を推定する(ステップS213)。
位置情報には、ユーザの位置とユーザが見ている方向の情報が含まれ、ユーザ位置推定手段215は、推定した位置情報をカーソル管理手段202に与える。ステップS213の詳細は後述する。
ステップS213の処理の後、カーソル管理手段202は、カーソル表示手段205にカーソル情報を与え、カーソル表示手段205は、回転角度に合わせてカーソルの表示処理を行う(ステップS107)。ステップS107の詳細は後述する。
以下、ステップS108〜S110の処理を行った後、タスク表示手段211〜213は、カーソル管理手段202からユーザの位置情報を受け取り、その位置情報を用いて、画面上に表示する表示内容の方向を変更する(ステップS111)。ステップS111の詳細は後述する。
<カーソル移動処理>
次に、図25に示すフローチャートを用いて、ステップS105のカーソル移動処理の詳細について説明する。
なお、図25に示すステップS1051〜ステップS1053は、それぞれ、図12を用いて説明した実施の形態1におけるステップS1051〜ステップS1053と同様の処理を行うので説明は省略する。
ステップS1051〜ステップS1053の処理を行った後、ステップS2054において、カーソル移動手段204は、ステップS1052において取得したカーソルの移動後の座標と、ステップS1052において取得したカーソルの開始位置座標とからカーソルの回転角度を取得する。すなわちユーザがカーソルを表示装置6のX方向(水平方向)およびY方向(垂直方向)で規定される平面に対して斜め方向に移動させるような場合、移動後の座標と開始位置座標から移動方向を算出し、カーソルの中心線が移動方向に沿うようにカーソルを回転させて表示するように構成しておくことで、カーソルの中心線の傾きからカーソルの回転角度を得ることができる。なお、システムを起動させてアプリケーションを選択した直後の段階では、カーソルの中心線はX方向およびY方向の何かれの方向に平行となっており、この方向を原点(0゜)とし、原点から何度傾いているかでカーソルの回転角度を定義できる。
カーソル移動手段204は、カーソルの回転角度をステップS2054において取得したカーソルの回転角度に更新し、カーソル情報としてカーソル管理手段202に与える(ステップS2055)。
<ユーザ位置推定処理>
次に、図26に示すフローチャートを用いて、ステップS213のユーザ位置推定処理の詳細について説明する。
ステップS2131において、ユーザ位置推定手段215は、カーソル管理手段202より、カーソルの回転角度を取得する。
次に、ステップS2132において、ユーザ位置推定手段215は、カーソルの回転角度からユーザの位置とユーザが見ている方向を推定する。
本実施の形態においては、回転後のカーソルの中心線の延在方向であって、カーソルの進行方向とは反対側にユーザがいるもの推定とし、ユーザの位置は、表示装置6の額縁の幅からある一定の間隔だけ離れた点で表すものとする。このような推定方法を採ることで、簡便にユーザの位置を推定できる。
図27は、実施の形態2の電子機器100Aの外観を示す図であり、表示装置6を収納する筐体CSの表示画面を囲む領域が額縁と呼称される領域であり、額縁FLの4辺のうち、図に向かって上辺の枠幅を幅WT、下辺の枠幅を幅WB、左辺の枠幅を幅WL、右辺の枠幅を幅WRとする。
図27において、カーソル71を操作しているユーザの位置は、カーソルの中心線の延在方向であって、カーソルの進行方向とは反対側の額縁FLの外側の点UPで示している。
すなわち、カーソルの中心線を延在した直線CLが、額縁FLの外縁から所定距離Lだけ離れた額縁FLと平行な直線PLと交わる点UPがユーザの位置であると推定する。また、ユーザが見ている方向は、カーソルの回転角度と同じであるものとする。
例えば、カーソルの中心線がY軸に平行な場合を0゜とし、時計回りをプラス方向、反時計回りをマイナス方向とすると、図27のカーソル71の回転角度は+θとなる。
<カーソル表示処理>
次に、図28に示すフローチャートを用いて、ステップS107のカーソル表示処理の詳細について説明する。
なお、図28に示すステップS1071〜ステップS1077は、それぞれ、図13を用いて説明した実施の形態1におけるステップS1071〜ステップS1077と同様の処理を行うので説明は省略する。
実施の形態2においては、ステップS1072とステップS1073との間に、カーソルの座標を変換する処理(ステップS2078)が含まれている。
すなわち、ステップS1072の処理を行った後、ステップS2078において、カーソル表示手段205は、ステップS1071において取得したカーソル情報から、カーソルの回転角度を取得し、カーソルの回転処理(座標変換)を行い、ステップS1073では座標変換後のカーソル位置から、カーソルの表示位置を決定する。
<各タスクの表示処理>
次に、図29に示すフローチャートを用いて、ステップS111の各タスクの表示処理の詳細について説明する。
ステップS111において、タスク表示手段211〜213は、ユーザ位置推定手段215より、ユーザの位置情報を取得する。
次に、ステップS1112において、タスク表示手段211〜213は、ユーザの位置情報に合わせて表示方向を設定する。なお、本実施の形態においては、ユーザの位置を示す点UP(図27)を基点としたカーソルの回転角度方向をタスクの表示方向とする。
次に、ステップS1113において、タスク表示手段211〜213が、それぞれ、ステップS1112において設定した表示方向に合わせて、タスク208〜210の内容の表示処理を行う。
<操作方法>
次に、図22、図24〜図29を参照しつつ、図30、図31を用いて、実施の形態2の電子機器100Aのマルチカーソル処理システム200Aを用いた操作方法について説明する。
図30には、マルチカーソル処理システム200Aを用いて表示装置6に表示される表示画面の一例を示す。
ユーザA、ユーザBが共に付箋アプリケーションと電柱配置計画アプリケーションを起動させると、テーブルトップ型の表示装置6に、図30に示されるように、表示画面には、付箋アプリケーションの内容と電柱配置計画アプリケーションの内容が地図に重畳して表示される。
この時点でマルチカーソル処理システムのカーソルに関する内部処理が開始され、図24のステップS101が実行されている。
ユーザAがカーソル71を指でドラッグして、付箋アプリケーションの付箋アイコン75の位置に移動させる場合、付箋アイコン75がカーソル71の位置から斜め方向にある場合、ユーザAはカーソル71を付箋アイコン75の方向に指で回転させた後、ドラッグして、付箋アプリケーションの付箋アイコン75へ動かし、画面ではカーソルが指に追従して表示され、カーソル71は強調表示される。
このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返して実行している。なお、カーソル71の回転は、ステップS2054において説明したように、指先のマルチタッチパネルへの接触位置が微妙に変わることを検出して実行される。
次に、カーソル71が付箋アイコン75の上にある状態で、ユーザAがカーソル71を指でタップする操作を行うと、図31に示されるように、付箋アイコン75に関する付箋81が表示される。なお、付箋81は、ステップS1112での処理によりユーザが見やすい方向に表示されている。
このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返して実行している。
以上説明したように、カーソルの回転角度を用いてユーザの位置やユーザが見ている方向を推定することにより、赤外線センサ等の機器を使用せずに、ユーザの位置やユーザが見ている方向を推定することができる。
また、推定されたユーザの位置やユーザが見ている方向を用いて、画面上に表示する内容の方向を決定することにより、タスクを操作しているユーザにとって視認性の良い方向で表示することができる。
なお、以上の説明においては、ユーザが意識的に回転させたカーソルのみを回転して表示する例を示したが、ステップS2132(図26)においてユーザの位置を推定した後に、そのユーザに属する全てのカーソルを、推定したユーザの位置に合わせて回転させる処理を行っても良い。この処理を行うと、図30では、ユーザAが意識して回転させたカーソル71だけでなく、ユーザAのカーソルであるカーソル73も、カーソル71から推定したユーザAの位置に合わせて回転して表示されることとなる。
このように、ユーザが意識的に回転させたカーソル以外の、そのユーザに属するカーソルも、同様に回転して表示できるので、そのユーザが他のアプリケーションを使用する度に、カーソルを回転させる必要がなくなる。
<実施の形態3>
<構成>
本実施の形態では、入力装置から入力されたイベントの種類によって、そのイベントが入力された際に使用されたカーソルの大きさや個数を変更するマルチカーソル処理システムについて説明する。
なお、実施の形態3の電子機器のハードウェア構成は、図1に示した電子機器100と同じであり、また、マルチカーソル処理システムの構成も実施の形態1のマルチカーソル処理システム200と同じである。
<動作>
<全体動作>
次に、図2を参照しつつ、図32〜図38を用いて、操作対象のタスクやカーソルの大きさや個数を変更するマルチカーソル処理システムの内部処理手順を説明する。
図32は、内部処理手順の全体動作を示すフローチャートである。なお、図32に示すステップS101〜ステップS105、ステップS108〜ステップS112の処理は、図11に示したステップS101〜ステップS105、ステップS108〜ステップS1112の処理と同様であるので説明は省略する。
図32において、ステップS101〜S104の処理を行った後、ステップS314において、カーソル管理手段202は、入力イベント処理手段201が従来の方法で判定したイベントの種類の情報を受け取る。そして、受け取ったイベントの種類が、形状変更イベントであれば、ステップS315へ移行する。
ここで、形状変更イベントとは、図8に示した「広範囲タッチ開始」等のイベントを指す。受け取ったイベントの種類がその他のイベントであれば、ステップS105へ移行する。
ステップS315において、カーソル管理手段202は、カーソルの形状や大きさや個数を変更する。ここで、カーソルの変更例を以下に説明する。
<変更例1:カーソルの拡大>
ユーザが掌等を使ってカーソルを選択した場合は、カーソルを拡大するように変更する。図33には、カーソル拡大時に用いるカーソル情報の例を示す。
図33に示すように、カーソル情報には、タスクID、アプリケーションID、ユーザID、カーソル位置x、カーソル位置y、直近操作フラグに加え、カーソルの拡大率が含まれている。ただし、カーソルの拡大率は、必ずしもカーソル情報に含まれている必要はなく、カーソル管理手段202が管理する構成であっても良い。
ステップS315において、カーソル管理手段202は、ステップS103において取得したカーソル情報の拡大率を変更する。これはステップS107のカーソル表示処理で、カーソルの変倍処理を行う際に、参照するために変更するものである。
<変更例2:カーソルの分割>
ユーザがカーソル上の任意の二点を選択し、その二点を離れる方向に動かした場合に、カーソルを分割して二つのカーソルとするように変更する。
この場合、ステップS315において、カーソル管理手段202は、選択されたカーソルのカーソル情報を複製してカーソルを二つにする。このとき、カーソル情報に、カーソルの縮小率の情報を含んでいる場合には、カーソルを縮小して二つのカーソルとするように構成しても良い。この場合、カーソル情報に、カーソルの縮小率の情報を含んでいない場合は、カーソルの大きさは変更しないように構成しても良い。
<変更例3:カーソルのマージ>
ユーザが分割された二つのカーソルを選択し、それらを近づける方向に動かして接触させた場合は、カーソルをマージして一つのカーソルとするように変更する。
この場合、ステップS315において、カーソル管理手段202は、二つのカーソルの何れかのカーソル情報を削除する。カーソルの分割時に、カーソル情報に含まれる縮小率を用いてカーソルを縮小していた場合は、マージの際には、元の大きさに戻すように構成しても良い。
ここで再び図32のフローチャートの説明に戻り、ステップS106において、カーソル管理手段202は、実施の形態1において説明したようにカーソル情報を更新すると共に、ステップS314において、形状変更イベントであると判定された場合には、ステップS315において変更、複製、削除したカーソル情報について、カーソル情報格納部203の情報を更新する。
次に、ステップS107において、カーソル管理手段202は、カーソル表示手段205にカーソル情報を与え、カーソル表示手段205は、カーソル情報に基づいてカーソルの表示処理を行う。ステップS101の詳細は後述する。以下、ステップS108〜S112の処理については実施の形態1と同じである。
<カーソルの表示処理>
次に、図34に示すフローチャートを用いて、ステップS107のカーソルの表示処理の詳細について説明する。
なお、図28に示すステップS1071〜ステップS1077は、それぞれ、図13を用いて説明した実施の形態1におけるステップS1071〜ステップS1077と同様の処理を行うので説明は省略する。
実施の形態3においては、ステップS1072とステップS1073との間に、カーソルの変倍処理(ステップS3078)が含まれている。
すなわち、ステップS1072の処理を行った後、ステップS3078において、カーソル表示手段205は、ステップS1071において取得したカーソル情報から、カーソルの拡大率または縮小率を取得し、カーソルの変倍処理(座標変換)を行い、ステップS1073では座標変換後のカーソル位置から、カーソルの表示位置を決定する。
<操作方法>
次に、図32、図34を参照しつつ、図15、図35〜図38を用いて、実施の形態3の電子機器のマルチカーソル処理システムを用いた操作方法について説明する。
ユーザA、ユーザBが共に付箋アプリケーションと電柱配置計画アプリケーションを起動させると、表示装置6の表示画面には、図15に示されるように、付箋アプリケーションの内容と電柱配置計画アプリケーションの内容が地図に重畳して表示される。
この時点でマルチカーソル処理システムのカーソルに関する内部処理が開始され、図32のステップS101が実行されている。
ユーザAがカーソル71を掌でタッチすると、図35に示されるように表示画面ではカーソル71が拡大して表示される。このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返して実行している。
次に、ユーザBがカーソル74を左右の指で一点ずつタッチし、それらが離れる方向にドラッグすると、図36に示されるようにカーソル74が分割され、カーソル741および742となる。なお、図36では、カーソル741、742をカーソル74よりも縮小させて表示している。このとき、システムの内部では、ステップS101〜ステップS112を繰り返し実行している。
次に、ユーザBがカーソル742を選択して、図37に示されるようにカーソル741に近づける方向へ動かし、カーソル741に接触させると、図38に示されるようにカーソル742がカーソル741にマージされ、一つのカーソル74となる。なお、図38では、カーソル74を分割前の拡大率で表示している。
以上説明したように、カーソルの選択方法によりカーソルの形状を変更できるので、複数のユーザが相談しながら作業を行う場合に、カーソルを拡大する等して、他人の注目を集めることができる。
また、カーソルを分割したり、分割後にマージしたりすることにより、同一のタスクにおいて、一人で2箇所以上の入力操作を同時に行うことができる。これにより、画面の拡大、縮小や、回転等の操作もカーソルによって実行することが可能になる。
<実施の形態4>
<構成>
本実施の形態では、カーソルを動かした際に、そのカーソルに関連するタスクの操作可能位置へカーソルを移動させたり、操作可能位置を強調表示したりする、マルチカーソル処理システムについて説明する。
なお、実施の形態4の電子機器のハードウェア構成は、図1に示した電子機器100と同じである。また、図39は実施の形態4の電子機器に含まれるマルチカーソル処理システム200Bの構成を示すブロック図であるが、基本的には実施の形態1のマルチカーソル処理システム200と同じであり、操作可能位置情報格納部216〜218を備える点が異なっている。
すなわち、操作可能位置情報格納部216〜218は、それぞれ、タスク208〜210の操作可能な位置を格納する部位であり、カーソル移動手段204に操作可能位置情報を与える。なお、操作可能位置情報格納部216〜218は、主記憶装置3あるいは外部記憶装置4で実現される。
カーソル移動手段204は、操作可能位置情報格納部216〜218から、操作中のカーソルに関連するタスクが有する操作可能位置情報を取得し、取得した操作可能位置情報の中からカーソルの移動先候補を選択する。ここで、操作可能位置は、各カーソルによって操作可能な位置のことを指している。具体的な例としては、付箋アプリケーション用のカーソル71および72 を操作中の場合は、付箋アイコンが表示されている位置(付箋の表示が可能な位置)であり、電柱配置計画アプリケーション用のカーソル73および74を操作中の場合は、電柱マークが表示されている位置(電柱マークの移動操作が可能な位置)である。カーソルの移動先候補は、これらの操作可能位置から選択される。
そして、タスク表示手段211〜213は、操作中のカーソルに関連するタスクである場合は、カーソルの操作可能位置にあるタスクの表示内容を強調表示する。
<動作>
<全体動作>
図39に示すマルチカーソル処理システム200Bの内部処理手順の全体動作を示すフローチャートは、図11に示したマルチカーソル処理システム200の内部処理手順の全体動作を示すフローチャートと基本的には同様であるが、ステップS105における、カーソル移動処理と、ステップS111における各タスクの表示処理は異なる。
<カーソル移動処理>
次に、図40に示すフローチャートを用いて、ステップS105のカーソル移動処理の詳細について説明する。
なお、図40に示すステップS1051およびステップS1053は、それぞれ、図12を用いて説明した実施の形態1におけるステップS1051およびステップS1053と同様の処理を行うので説明は省略する。
カーソル移動手段204は、ステップS1051において取得したイベント情報からイベントの種類を取得する(ステップS4051)。
すなわち、ステップS4051において、イベントの種類が、図8に示した「タッチ終了」あるいは「広範囲タッチ終了」であればステップS4052に移行し、その他のイベントであればステップS40511へ移行する。
ステップS4052において、カーソル移動手段204は、ステップS1051において取得したカーソル情報から、操作対象のタスクIDを取得する。
次に、ステップS4053において、カーソル移動手段204は、操作対象のタスクに対応する操作可能位置格納部から、操作可能位置を取得する。例えば、操作対象タスクがタスク208であった場合は、操作可能位置格納部216から操作可能位置を取得する。
次に、ステップS4054において、カーソル移動手段204は、ステップS1051において取得したイベント情報から、終了位置座標と操作可能位置座標との距離Dを算出する。
次に、ステップS4055において、カーソル移動手段204は、ステップS4054において算出した距離Dが任意の閾値v以下であるかどうかを判定する。そして、距離Dが閾値v以下であれば、ステップS4056に移行し、距離Dが閾値vより大きければ、ステップS4058に移行する。
ステップS4056では、カーソル移動手段204は、カーソル移動先候補CとステップS1051において取得したイベントの終了位置座標との距離Dcと距離Dとを比較し、距離Dcが距離Dより長ければステップS4057に移行し、距離Dcが距離D以下であればステップS4058に移行する。
ステップS4057では、カーソル移動手段204は、カーソル移動先候補Cの座標を、ステップS4054において距離Dを求めた操作可能位置の座標に更新する。なお、カーソル移動先候補Cのデフォルト値は無効な座標としておく。
ステップS4058では、全ての操作可能位置との距離Dの算出処理が完了したか否かを判定し、算出処理が完了している場合はステップS4059に移行し、完了していなければステップS4054に戻る。
ステップS4059では、カーソル移動先候補Cがあるか否かを判定し、カーソル移動先候補Cがある場合(デフォルト値でない場合)は、ステップS40510に移行して、カーソルの移動先としてカーソル移動先候補Cの座標を選択する。
一方、カーソル移動先候補Cがない場合(デフォルト値である場合)は、イベントの終了位置座標をカーソルの移動先に設定する(ステップS40511)。
最後に、カーソル移動手段204は、移動させるカーソルのカーソル位置を、カーソル移動先候補Cの座標、またはカーソルの移動後の座標に更新し、カーソル管理手段202にそのカーソル情報を与える(ステップS1053)。
<各タスクの表示処理>
次に、図41に示すフローチャートを用いて、ステップS111の各タスクの表示処理の詳細について説明する。
ステップS4111において、タスク表示手段211〜213は、自らがステップS108において操作対象であると判定されたタスクの表示手段であるか否かを判定し、操作対象であると判定されたタスクの表示手段である場合はステップS4112に移行し、操作対象であると判定されたタスクの表示手段でなければステップS4115に移行する。
例えば、タスク208が操作対象のタスクである場合、タスク表示手段211はステップS4112に移行し、タスク表示手段212、213はステップS4115に移行する。
ステップS4112では、タスク表示手段211は、タスク208を介して操作可能位置情報格納部216から操作可能位置の座標を取得する。
次に、ステップS4113において、タスク表示手段211は、操作可能位置にある表示内容を強調表示する表示処理を行う。
次に、ステップS4114において、タスク表示手段211は、操作可能位置以外にある表示内容を通常表示する処理を行う。
また、ステップS4115において、タスク表示手段212、213は、実施の形態1に係るステップS111と同様に、通常の表示処理を行う。
<操作方法>
次に、図39〜図41を参照しつつ、図42〜図44を用いて、実施の形態4の電子機器のマルチカーソル処理システムを用いた操作方法について説明する。
ユーザA、ユーザBが共に付箋アプリケーションと電柱配置計画アプリケーションを起動させると、表示装置6の表示画面には、図15に示されるように、付箋アプリケーションの内容と電柱配置計画アプリケーションの内容が地図に重畳して表示される。
この時点でマルチカーソル処理システムのカーソルに関する内部処理が開始され、図11のステップS101が実行されている。
ユーザAがカーソル71を指でドラッグして移動させると、画面ではカーソルが指に追従して表示され、図42に示されるように付箋アプリケーションの付箋アイコン75〜77が強調表示される。このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返して実行している。
次に、図43に示されるように、ユーザAがカーソル71を付箋アイコン75に近づけて指を離すと、画面では、図44に示されるように、カーソルが付箋アイコン75の上に自動的に移動する。このとき、システムの内部では、ステップS101〜ステップS112の処理を繰り返し実行している。
以上説明したように、カーソルを動かす際に、操作可能位置が強調表示されるので、ユーザがカーソルの操作中に操作可能位置を判別することができ、操作が容易となる。なお、操作可能位置の強調表示は、カーソルを自動的に移動させない構成で行っても良い。
なお、そのカーソルに関連するタスクの操作可能位置へカーソルを自動的に移動させるように構成する場合には、カーソルを長い距離に渡って指で移動させずに済む。また、指の届かない操作可能位置にカーソルを移動させたい場合でも、ユーザが移動することなく、カーソルを移動させることができ、表示装置が大型の場合に特に有効である。
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
71〜74 カーソル、75〜77 付箋アイコン、78〜80 電柱マーク。

Claims (8)

  1. 表示装置に備えられたタッチパネルを介した入力操作であるイベントを受け、前記イベントに基づいて、前記表示装置の表示画面に、アプリケーションごとに関連付けられた複数のタスクの内容を同時に表示する電子機器であって、
    入力された前記イベントの種類を判断する入力イベント処理手段と、
    前記表示画面上でのカーソルの位置を示すカーソル位置情報と、前記複数のタスクのそれぞれに対応して設けられたカーソルが、どのタスクに属するカーソルであるかを示す所属タスク情報とを有するカーソル情報を格納するカーソル情報格納部と、
    カーソルの形状を示す情報と、カーソルの色情報とを有するカーソル定義を格納するカーソル定義格納部と、
    前記表示画面上の全てのカーソルを管理し、前記カーソル情報を前記カーソル情報格納部に格納すると共に、前記カーソル位置情報を用いて、その位置にあるカーソルの前記所属タスク情報を前記カーソル情報格納部から検索して取得し、前記イベントが発生した前記表示画面上の位置情報を用いて、どのカーソルを用いた操作であるかを判断するカーソル管理手段と、
    カーソルの移動後の位置を決定し、前記カーソル位置情報を更新するカーソル移動手段と、
    前記カーソル定義格納部から前記カーソル定義を取得し、前記カーソル定義と前記カーソル管理手段が管理する前記カーソル情報とを用いて、カーソルの表示処理を行うカーソル表示手段と、
    前記カーソル管理手段で操作中のカーソルの前記所属タスク情報に基づいて、前記操作中のカーソルの操作対象のタスクおよび操作しているユーザのうち、少なくとも一方をコンテキストとして特定するコンテキスト特定手段と、を備える、電子機器。
  2. 前記カーソル管理手段は、
    直近に操作したカーソルの情報をアクティブなカーソルとして管理し、
    前記カーソル表示手段は、
    前記アクティブなカーソルを強調表示する処理を行う、請求項1記載の電子機器。
  3. 前記カーソル管理手段は、カーソルの回転角度を管理し、
    前記カーソル表示手段は、前記カーソル管理手段から、前記カーソルの回転角度の情報を取得して、前記カーソルの回転角度に合わせてカーソルを回転して表示する処理を行い、
    前記カーソル管理手段から、前記カーソルの回転角度の情報を取得し、前記カーソルの回転角度に基づいてカーソルを操作しているユーザの位置を推定する、ユーザ位置推定手段をさらに備える、請求項1記載の電子機器。
  4. 前記ユーザ位置推定手段は、
    前記回転後のカーソルの中心線の延在方向であって、カーソルの進行方向とは反対側に前記ユーザがいるものと推定する、請求項3記載の電子機器。
  5. 前記ユーザ位置推定手段で推定された前記ユーザの位置と前記カーソルの回転角度に基づいて、前記表示画面上に表示するタスクの内容の表示方向を変更する、請求項3記載の電子機器。
  6. 前記カーソル管理手段は、
    前記入力イベント処理手段で判断された前記イベントの種類によって、該イベントが入力された際に使用されたカーソルの、大きさおよび個数の少なくとも一方を変更する、請求項1記載の電子機器。
  7. 前記表示画面上で、前記複数のタスクのそれぞれにおける操作可能な位置を示す操作可能位置情報を格納した、操作可能位置情報格納部をさらに備え、
    前記カーソル移動手段は、
    操作対象のタスクについて、前記操作可能位置情報格納部から前記操作可能位置情報を取得し、取得した前記操作可能位置情報の中からカーソルの移動先候補を決定し、前記カーソルを前記移動先候補に近づけることで、自動的に前記カーソルの移動先候補まで移動させる、請求項1記載の電子機器。
  8. 前記表示画面上で、前記複数のタスクのそれぞれにおける操作可能な位置を示す操作可能位置情報を格納した、操作可能位置情報格納部と、
    前記表示画面上で、前記カーソルの移動先候補の位置において操作対象のタスクの表示内容を強調表示するタスク表示手段と、をさらに備え、
    前記タスク表示手段は、自らが操作対象のタスクの表示手段である場合に、操作可能位置情報格納部から前記操作可能位置情報を取得し、取得した前記操作可能位置情報に基づいて操作可能な位置にある表示内容を強調表示する、請求項1記載の電子機器。
JP2013021002A 2013-02-06 2013-02-06 電子機器 Expired - Fee Related JP5911440B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013021002A JP5911440B2 (ja) 2013-02-06 2013-02-06 電子機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013021002A JP5911440B2 (ja) 2013-02-06 2013-02-06 電子機器

Publications (2)

Publication Number Publication Date
JP2014153792A JP2014153792A (ja) 2014-08-25
JP5911440B2 true JP5911440B2 (ja) 2016-04-27

Family

ID=51575641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013021002A Expired - Fee Related JP5911440B2 (ja) 2013-02-06 2013-02-06 電子機器

Country Status (1)

Country Link
JP (1) JP5911440B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210271358A1 (en) * 2018-06-28 2021-09-02 Sony Corporation Information processing apparatus for executing in parallel plurality of pieces of processing
JP7334649B2 (ja) 2020-02-17 2023-08-29 富士通株式会社 情報処理装置、情報処理プログラム、及び情報処理システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07141140A (ja) * 1993-11-17 1995-06-02 Wacom Co Ltd マルチウィンドウ型コンピュータシステム
JPH08249117A (ja) * 1995-03-07 1996-09-27 Dainippon Screen Mfg Co Ltd カーソル切換装置
JP2000163179A (ja) * 1998-11-30 2000-06-16 Canon Inc 情報処理装置及び方法並びに記憶媒体
JP2001350588A (ja) * 2000-06-07 2001-12-21 Totoku Electric Co Ltd テーブル型表示装置
JP2003186620A (ja) * 2001-12-14 2003-07-04 Ricoh Co Ltd ポインティング機能付き表示装置を備えた情報処理装置
JP2004334705A (ja) * 2003-05-09 2004-11-25 Nippon Telegr & Teleph Corp <Ntt> マウスカーソルの多機能化装置、マウスカーソルの多機能化方法、情報機器に対する操作指示の処理方法、コンテンツの保存方法、及びコンテンツを所定のアプリケーションで開く方法
JP5369702B2 (ja) * 2009-01-23 2013-12-18 セイコーエプソン株式会社 共有情報表示装置、共有情報表示方法およびコンピュータプログラム
JP5343773B2 (ja) * 2009-09-04 2013-11-13 ソニー株式会社 情報処理装置、表示制御方法及び表示制御プログラム

Also Published As

Publication number Publication date
JP2014153792A (ja) 2014-08-25

Similar Documents

Publication Publication Date Title
US9542020B2 (en) Remote session control using multi-touch inputs
CN104885048B (zh) 用于管理数字内容项的***和方法
US20130063384A1 (en) Electronic apparatus, display method, and program
JP5664147B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US11720230B2 (en) Interactive data visualization user interface with hierarchical filtering based on gesture location on a chart
JP5942762B2 (ja) 情報処理装置及びプログラム
US20160274750A1 (en) Animated Transition between Data Visualization Versions at Different Levels of Detail
US10347018B2 (en) Interactive data visualization user interface with hierarchical filtering based on gesture location on a chart
US20120179963A1 (en) Multi-touch electronic device, graphic display interface thereof and object selection method of multi-touch display
JP5911440B2 (ja) 電子機器
JP5039312B2 (ja) 複数ポインタを制御するプログラム、方法および装置
US11061502B2 (en) Selection of a graphical element with a cursor in a magnification window
AU2020202141B2 (en) Interactive data visualization user interface with gesture-based data field selection
CN105302466B (zh) 一种文字操作方法及终端
JP6106973B2 (ja) 情報処理装置及びプログラム
US20150346854A1 (en) Determine a Touch Selection Area
JP6884543B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
JP2015075781A (ja) ファイル表示装置及びプログラム
KR20100119599A (ko) 휴대 단말기의 터치 및 커서 제어방법 및 이를 적용한 휴대 단말기
JPH03271920A (ja) タブレット装置
TW201239726A (en) Intelligent data input and prompting methods and systems, and computer program products thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151001

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160329

R150 Certificate of patent or registration of utility model

Ref document number: 5911440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees