(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、フリック操作等のように素早くタッチパネル上を払うようなスライド系操作において、押圧をかけている指をタッチパネル上で移動させる直前に、ユーザが無意識にタッチパネル上の指をタッチパネルから離してしまう(もしくは押圧力が弱くなる)場合がある。特に、抵抗膜式タッチパネルの場合は、適度な押圧が無ければ指がタッチパネルに触れていると認識されないので、タッチが軽くなっただけでも、タッチパネルから指が離れたと認識してしまう。特許文献1に記載の方法では、タッチされてからアンタッチされるまでの間の移動距離によって、セレクト系操作か、スライド系操作かを判定するので、上記のような場合には、タッチパネルから指が離れたと認識した時点で、それまでの移動距離が少ないことから、セレクト系操作が行われたと認識してしまう。たとえば、あるアイコン上でフリック操作を行う場合に上記のように指を移動させる直前で指をタッチパネルから離してしまうと、そのアイコンに対してセレクト操作が行われたと認識してしまう。
【0008】
なお、特許文献2にはセレクト系操作を行う場合において、タッチパネルがタッチ(プレス)されたら、そのタッチされた位置の周囲に検出位置の平均値を算出するエリアを設定し、アンタッチ(リリース)された位置が、該エリアの外であっても、算出した平均値を最終位置として決定することで、操作位置のズレを抑えることが出来る方法が記載されているが、この方法は、セレクト系操作を行う場合において、操作位置を確定する方法であって、スライド系操作をセレクト系操作と誤判定することを防止するものではない。
【0009】
本発明は、上記の問題を解決しようとするものであり、タッチパネルに対して行われる、スライドに係る操作とセレクトに係る操作の誤判定を抑制し、ユーザの要望する操作をより忠実に実現することのできる情報処理装置、プログラムを提供することを目的としている。
【課題を解決するための手段】
【0010】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【0011】
[1]押下された位置を検出するタッチパネル部と、
前記タッチパネル部に対するリリース動作が検出されたとき、このリリース動作の直前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの間に検出された前記押下された位置の移動距離が第1閾値以上の場合は前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をスライドに係る操作と判定し、前記移動距離が第1閾値未満であり、かつ前記タッチ動作から前記リリース動作までの時間が第2閾値以上の場合は、前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をセレクトに係る操作と判定する判定部と
、
ユーザからスライドに係る操作とセレクトに係る操作とを、それぞれ操作の種類を特定して受け付け、このとき前記タッチパネル部によって検出された押下状態の実測値から、前記第1閾値および前記第2閾値を決定する閾値決定部と、
を有する
ことを特徴とする情報処理装置。
【0012】
上記[1]および下記[7]に記載の発明では、タッチパネルに対するリリース動作が検出された時、このリリース動作の直前のタッチ動作から当該リリース動作までの間に検出された押下位置の移動距離が、第1閾値以上の場合は、タッチパネルが受け付けた直前のタッチ動作から当該リリース動作までの操作をスライドに係る操作と判定し、その移動距離が第1閾値未満であり、かつタッチパネルが受け付けた直前のタッチ動作から当該リリース動作までの時間が第2閾値以上の場合は、該タッチ動作から当該リリース動作までの操作をセレクトに係る操作と判定する。セレクトに係る操作であるか否かを、直前のタッチ動作からリリース動作までの間の移動距離と押下時間の2つの要素で判断するので、ユーザによるスライドに係る操作とセレクトに係る操作の誤判定を抑制し、ユーザの要望する操作をより忠実に実現することができる。
【0013】
また、ユーザからスライドに係る操作およびセレクトに係る操作を受け付け、このときタッチパネル部によって検出された押下状態の実測値に基づいて第1閾値と第2閾値を決定する。たとえば、所定の専用画面にて、セレクトに係る操作と、スライドに係る操作をいずれの操作であるかを特定して10回ずつ受け付け、そのときの押圧の時系列な変化とタッチパネル上においての押下位置の座標の変化とを記録し、スライドに係る操作とセレクトに係る操作とを区別可能な第1閾値および第2閾値を見つけ出して設定する。ユーザの操作に係る実測値から、第1閾値と第2閾値を決定するので、最適な条件でスライドに係る動作とセレクトに係る動作を判別して誤判定を抑制することができる。
【0019】
[
2]押下された位置を検出するタッチパネル部と、
前記タッチパネル部に対するリリース動作が検出されたとき、前記リリース動作の直後の所定時間内に新たなタッチ動作を検出した場合に、前記リリース動作の前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの操作を無効な操作と判定
し、前記所定時間内に新たなタッチ動作を検出しなかった場合は、前記リリース動作の直前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの間に検出された前記押下された位置の移動距離が第1閾値以上の場合は前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をスライドに係る操作と判定し、前記リリース動作の直前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの間に検出された前記押下された位置の移動距離が第1閾値未満である場合は、前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をセレクトに係る操作と判定する判定部と、
を有することを特徴とする情報処理装置。
【0020】
上記発明では、タッチパネルに対するリリース動作が検出された時、このリリース動作の直後の所定時間内に新たなタッチ動作を検出した場合は、このリリース動作に係る操作を無効な操作と判定し、このリリース動作の直前のタッチ動作から当該リリース動作までの間に検出された押下位置の移動距離が、第1閾値以上の場合は、タッチパネルが受け付けた直前のタッチ動作から当該リリース動作までの操作をスライドに係る操作と判定し、その移動距離が第1閾値未満であり、かつタッチパネルが受け付けた直前のタッチ動作から当該リリース動作までの時間が第2閾値以上の場合は、該タッチ動作から当該リリース動作までの操作をセレクトに係る操作と判定する。セレクトに係る操作であるか否かを、リリース動作の直後の所定時間内に新たなタッチ動作を受け付けたか否かと、このリリース動作の直前のタッチ動作から当該リリース動作までの間の移動距離との2つの要素で判断するので、ユーザによるスライドに係る操作とセレクトに係る操作の誤判定を抑制し、ユーザの要望する操作をより忠実に実現することができる。
[
3]前記スライドに係る操作は、フリック操作、ドラッグ操作、ピンチイン操作及びピンチアウト操作のいずれかの操作である
ことを特徴とする[1]
または[2]に記載の情報処理装置。
[
4]前記第1閾値は、ユーザが設定可能である
ことを特徴とする[1]
乃至[3]のいずれか1つに記載の情報処理装置。
[
5]前記第2閾値は、ユーザが設定可能である
ことを特徴とする[1]に記載の情報処理装置。
[
6]前記第1閾値と前記第2閾値の少なくとも一方は、ユーザ毎に設定可能である
ことを特徴とする[1]または[
5]に記載の情報処理装置。
【0021】
[
7]押下された位置を検出するタッチパネル部を備えた情報処理装置において実行されるプログラムであって、
前記タッチパネル部に対するリリース動作が検出されたとき、このリリース動作の直前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの間に検出された前記押下された位置の移動距離が第1閾値以上の場合は前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をスライドに係る操作と判定し、前記移動距離が第1閾値未満であり、かつ前記タッチ動作から前記リリース動作までの時間が第2閾値以上の場合は、前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をセレクトに係る操作と判定するステップと、
ユーザからスライドに係る操作とセレクトに係る操作とを、それぞれ操作の種類を特定して受け付けるステップと、
前記操作の種類を特定して受け付けるステップにおいて前記タッチパネル部によって検出された押下状態の実測値から、前記第1閾値および前記第2閾値を決定するステップと、
を有することを特徴とするプログラム。
【0023】
[
8]押下された位置を検出するタッチパネル部を備えた情報処理装置において実行されるプログラムであって、
前記タッチパネル部に対するリリース動作が検出されたとき、前記リリース動作の直後の所定時間内に新たなタッチ動作を検出した場合に、前記リリース動作の前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの操作を無効な操作と判定
し、前記所定時間内に新たなタッチ動作を検出しなかった場合は、前記リリース動作の直前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの間に検出された前記押下された位置の移動距離が第1閾値以上の場合は前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をスライドに係る操作と判定し、前記リリース動作の直前の前記タッチパネル部に対するタッチ動作から前記リリース動作までの間に検出された前記押下された位置の移動距離が第1閾値未満である場合は、前記タッチ動作から前記リリース動作までに前記タッチパネル部が受けた操作をセレクトに係る操作と判定するステップを有する
ことを特徴とするプログラム。
【0026】
[
9]前記スライドに係る操作は、フリック操作、ドラッグ操作、ピンチイン操作及びピンチアウト操作のいずれかの操作である
ことを特徴とする
[7]または[8]に記載のプログラム。
[
10]前記第1閾値は、ユーザが設定可能である
ことを特徴とする
[7]乃至[9]のいずれか1つに記載のプログラム。
[
11]前記第2閾値は、ユーザが設定可能である
ことを特徴とする[
7]に記載のプログラム。
[
12]前記第1閾値と前記第2閾値の少なくとも一方は、ユーザ毎に設定可能である
ことを特徴とする[
7]または[
11]に記載のプログラム。
【発明の効果】
【0027】
本発明に係る情報処理装置、及びプログラムによれば、スライドに係る操作とセレクトに係る操作による誤判定を抑制し、ユーザの要望する操作をより忠実に実現することができる。
【発明を実施するための形態】
【0029】
以下、図面に基づき本発明の実施の形態を説明する。
【0030】
図1は、本発明の実施の形態に係る情報処理装置10の概略構成を示すブロック図である。情報処理装置10はスキャン機能、コピー機能、プリント機能、ファクシミリ通信機能などを有する画像形成装置として構成されている。
【0031】
情報処理装置10は、当該情報処理装置10の動作を統括的に制御するCPU(Central Processing Unit)11を有している。CPU11にはバスを通じてROM(Read Only Memory)12と、RAM(Random Access Memory)13と、画像読取部14と、プリンタ部15と、画像処理部16と、不揮発メモリ17と、自動原稿搬送部18と、ファクシミリ通信部19と、ネットワーク通信部21と、操作表示部30とを備えている。
【0032】
CPU11は、OS(Operating System)プログラムをベースとし、その上で、ミドルウェアやアプリケーションプログラムなどを実行する。また、CPU11は、操作表示部30の表示内容を制御する制御部としての機能を果たす。
【0033】
ROM12には、各種のプログラムが格納されており、これらのプログラムに従ってCPU11が各種処理を実行することで情報処理装置10の各機能が実現される。また、ROM12には、前述の表示制御装置としての一連の制御をCPU11が実行するためのプログラムが格納されている。
【0034】
RAM13は、CPU11がプログラムに基づいて処理を実行する際に各種のデータを一時的に格納するワークメモリや画像データを格納する画像メモリなどとして使用される。
【0035】
画像読取部14は、原稿を光学的に読み取って画像データを取得する機能を果たす。画像読取部14は、例えば、原稿に光を照射する光源と、その反射光を受けて原稿を幅方向に1ライン分読み取るラインイメージセンサと、ライン単位の読取位置を原稿の長さ方向に順次移動させる移動ユニットと、原稿からの反射光をラインイメージセンサに導いて結像させるレンズやミラーなどからなる光学経路と、ラインイメージセンサの出力するアナログ画像信号をデジタルの画像データに変換する変換部などを備えて構成される。
【0036】
プリンタ部15は、画像データに応じた画像を記録紙上に画像形成する機能を果たす。ここでは、記録紙の搬送装置と、感光体ドラムと、帯電装置と、レーザーユニットと、現像装置と、転写分離装置と、クリーニング装置と、定着装置とを有し、電子写真プロセスによって画像形成を行う、所謂、レーザープリンタとして構成されている。画像形成は他の方式でもかまわない。
【0037】
画像処理部16は、画像の拡大縮小、回転などの処理のほか、印刷データをイメージデータに変換するラスタライズ処理、画像データの圧縮、伸張処理などを行う。
【0038】
不揮発メモリ17は、電源をオフにしても記憶内容が破壊されないメモリ(フラッシュメモリ)であり、各種設定情報の保存などに使用される。
【0039】
自動原稿搬送部18は、原稿台にセットされた原稿をその最上のものから1枚ずつ順に繰り出して搬送し、画像読取部14の読み取り位置を通過させて所定の排紙位置へ排紙する機能を果たす。
【0040】
ファクシミリ通信部19は、ファクシミリ機能を備えた外部装置と公衆回線を通じて画像データを送受信する機能を果たす。
【0041】
ネットワーク通信部21は、LAN(Local Area Network)などのネットワークを通じて端末装置やその他の外部装置との間でデータを通信する機能を果たす。
【0042】
操作表示部30は、表示部31と、操作部32とを備えている。このうち操作部32は、スタートボタンなどのスイッチ部33とタッチパネル部34とを備えている。表示部31は、液晶ディスプレイ(LCD…Liquid Crystal Display)などで構成され、各種の操作画面、設定画面などを表示する機能を果たす。
【0043】
タッチパネル部34は、表示部31の画面上に設けられている。タッチパネル部34は、タッチペンや指などで画面が押下されているタッチパネル部34上の座標位置を検出する。本実施の形態では、タッチパネル部34は抵抗膜式タッチパネルであり、一定以上の押圧力で押圧されている位置を検出する。CPU11は、タッチパネル部34が検出した押圧力の時系列な変化と押下位置の座標の変化とから、その押圧に係る操作がフリック操作であるかセレクト操作であるかなどの判定を行う。
【0044】
情報処理装置10は、複数のアイコン等を表示部31の画面内の表示領域に表示し、タッチパネル部34は、そのアイコンへの選択操作や、表示しているページ自体への操作(ページを進める等の操作)をユーザから受けつける。たとえば、コピー等を行う際には、白黒/カラーの選択や、用紙選択等の設定を該アイコンの操作によって受け付ける。その際に画面上に表示されていないアイコンについては、ページを進めたり、戻したりすることでユーザはそれらのアイコンについても選択が可能になる。なお、操作は、ペン、指などで可能であるが、以後は、指での操作として説明する。
【0045】
ここでは情報処理装置10が、ユーザから受け付ける操作は、セレクト操作と、フリック操作と、ドラッグ操作の3種類とする。セレクト操作は、タッチパネル部34上の所定の座標を押下し、ほとんど位置を動かさないで指を離す操作である。フリック操作はタッチパネル部34上の所定の座標を押下し、そのまま上下左右いずれかの方向に素早く払う操作である。なお、払う動作の最後にタッチパネル部34から指が離れる。ドラッグ操作は、タッチパネル部34上の所定の座標を押下し、そのまま上下左右にゆっくり指をずらし、指の移動が停止してからタッチパネル部34から指を離す操作である。
【0046】
また、情報処理装置10は、ユーザがフリック操作、またはドラッグ操作を行った際に、その操作が、指を移動させる直前でタッチパネル部34への押圧が弱まり、ユーザの指が離れたとCPU11が認識してしまうような操作であったとしても、その操作をセレクト操作ではなく、ユーザの要望に沿ったフリック操作、またはドラッグ操作として判断する機能を備えている。
【0047】
図2は、タッチパネル部34に表示中の選択画面40に対してユーザがフリック操作を行う様子を示す。選択画面40には、中央に設定中内容表示41、左上方にホーム画面移行アイコン42、中央上方に状態表示欄43、右上方にページ番号表示44、下部に4つの選択アイコン45(45A、45B、45C、45D)が並んで表示されている。ユーザは、セレクト操作によって、ホーム画面移行アイコン42、および選択アイコン45(45A、45B、45C、45D)等の項目を選択することができる。
【0048】
選択アイコン45(45A、45B、45C、45D)は、現在表示されている4つの選択アイコン45の他にも、多数の選択アイコン45が存在しているが、表示部31には4つまでしか表示することができない。そこで、ユーザから、表示部31に表示されている選択アイコン45に対して左右いずれかの方向(タッチパネル部34上におけるX軸方向)へのフリック操作、もしくはドラッグ操作を受け付けたら、選択アイコン45の列をそのフリック操作やドラッグ操作の方向に移動させ、表示されていなかった選択アイコン45を表示する。
【0049】
ページ番号表示44には、現在表示中のページは、3ページ中の2ページ目であることが表示されている。ページとは、表示部に表示される画面全体であり、現在表示中のページはコピーに係る設定画面である。他のページの内容としては、ファクシミリ通信に係る設定画面や、ボックスに係る設定画面、Eメールに係る設定画面等がある。タッチパネル部34は、ユーザが選択画面40上の余白部分に対して左から右にフリック操作を行った場合は1ページ目に、右から左にフリック操作をおこなった場合は3ページ目に、表示するページを切り替える。
【0050】
図2では、ユーザは、現在表示されていない選択アイコン45を表示させることを目的として、選択アイコン45Cが表示されている部分を押圧し、押圧している指をそのままタッチパネル部34上のX軸方向に素早く払うフリック操作を行っている。ただし、ユーザは、指を移動させる直前で、タッチパネル部34に対しての押圧力を弱めてしまい、それにより、CPU11は、タッチパネル部34からユーザの指が離れたと認識したものとする(ケース1とする)。
【0051】
図3は、ケース1のフリック操作を行う際に、タッチパネル部34にかかる押圧力と時間の関係を表すフリック時押圧力グラフ50を示す。ユーザがタッチパネル部34に触れているとタッチパネル部34が認識する押圧力の閾値を押圧閾値51とする。フリック時押圧力グラフ50のうち、ユーザがタッチパネルに触れているとタッチパネル部34が認識している状態(押圧力が押圧閾値51を上回っている状態)の部分は実線で表示し、認識していない状態(押圧力が押圧閾値51を下回っている状態)の部分は破線で表示してある。
【0052】
図4は、
図3のフリック時押圧力グラフ50と同じくケース1のフリック操作を行う際において、X座標上での指の位置(タッチパネル部34における水平方向の座標、
図2参照)と時間の関係を表すフリック時移動グラフ60を示す。なお、ユーザがタッチパネルに触れているとタッチパネル部34が認識している状態(押圧力が押圧閾値51を上回っている状態)の部分は実線で表示し、認識していない状態(押圧力が押圧閾値51を下回っている状態)の部分は破線で表示してある。
【0053】
図3、
図4を参照しながら、フリック操作を行う際の動作状態を3段階(S1、S2、S3)に分け、それぞれの状態での押圧および、X座標上の位置の変化を説明する。なお、押圧力が押圧閾値51を下回った状態から押圧閾値51以上になったときをプレスイベント(タッチ動作)とし、押圧力が押圧閾値51を上回った状態から押圧閾値51以下になったときをリリースイベント(リリース動作)とする。タッチパネル部34は、プレスイベントが発生したら、ユーザがタッチパネル部34への押圧を開始したと認識し、リリースイベントが発生したら、ユーザの指がタッチパネル部34から離れたと認識する。
【0054】
・
図3、
図4におけるS1<押圧をかけた指が止まっている状態>
まず、ユーザがタッチパネル部34にタッチ(プレス)を開始する。押圧力が上昇を開始し押圧閾値51を超えることで、初回のプレスイベント(プレスイベント1)が発生する。やがて、押圧力の上昇が停止する(
図3参照)。その後、ユーザが指を移動させる直前で、タッチパネル部34に対しての押圧力が弱まる。なお、S1では、指は止まっている状態のため、フリック時移動グラフ60はX座標上での変化はない(
図4参照)。
【0055】
・
図3、
図4におけるS2<押圧をかけている指の移動を開始した状態>
弱まった押圧力が押圧閾値51を下回ることで、初回のリリースイベント(リリースイベント1とする)が発生する。その後、指の移動が開始されるとともに、押圧力が再び上昇し、押圧閾値51を上回ることで2回目のプレスイベント(プレスイベント2とする、
図3参照)が発生する。なお、S2では、指の移動開始にあわせてX座標上での位置も移動を開始する(
図4参照)。
【0056】
・
図3、
図4におけるS3<指がタッチパネル部34上を移動している状態>
タッチパネル部34上を指が移動している際の押圧力は、押圧閾値51を上回った状態で安定している。フリック操作なので、操作の終盤で次第に押圧力が弱まってタッチパネル部34から指が離れると押圧力は0になる(
図3参照)。なお、押圧力が押圧閾値51を下回る時に2回目のリリースイベント(リリースイベント2)が発生する。S3では、指の移動にあわせてX座標上での位置も移動する(
図4参照)。タッチパネル部34から指が離れると、グラフは途切れて終了する。
【0057】
図5は、タッチパネル部34に表示中の選択画面40に対してユーザがドラッグ操作を行う様子を示す。
図2と同じく選択画面40には、中央に設定中内容表示41、左上方にホーム画面移行アイコン42、中央上方に状態表示欄43、右上方にページ番号表示44、下部に4つの選択アイコン45(45A、45B、45C、45D)が並んで表示されている。
【0058】
図5では、ユーザは、現在表示されていない選択アイコン45を表示させることを目的として、選択アイコン45Cが表示されている部分に押圧をかけ、押圧をかけている指をそのままタッチパネル部34上におけるX軸方向にゆっくり移動させるという一連の動作によるドラッグ操作を行っている。ただし、ここでユーザは、指を移動させる直前で、タッチパネル部34に対しての押圧力を弱めてしまい、それにより、CPU11は、タッチパネル部34からユーザの指が離れたと認識してしまっている(ケース2とする)。
【0059】
図6は、ケース2のドラッグ操作を行う際に、タッチパネル部34にかかる押圧力と時間の関係を表すドラッグ時押圧力グラフ52を示す。ドラッグ時押圧力グラフ52のうち、ユーザがタッチパネルに触れているとタッチパネル部34が認識している状態(押圧力が押圧閾値51を上回っている状態)の部分は実線で表示し、認識していない状態(押圧力が押圧閾値51を下回っている状態)の部分は破線で表示してある。
【0060】
図7は、
図6のドラッグ時押圧力グラフ52と同じくケース2のドラッグ操作を行う際において、X座標上での指の位置(タッチパネル部34における水平方向の座標、
図5参照)と時間の関係を表すドラッグ時移動グラフ61を示す。なお、ユーザがタッチパネルに触れているとタッチパネル部34が認識している状態(押圧力が押圧閾値51を上回っている状態)の部分は実線で表示し、認識していない状態(押圧力が押圧閾値51を下回っている状態)の部分は破線で表示してある。
【0061】
図6、
図7を参照しながら、ドラッグ操作を行う際の動作状態を3段階(S1、S2、S3)に分け、それぞれの状態での押圧力および、X座標上の位置の変化を説明する。
【0062】
・
図6、
図7におけるS1<押圧をかけた指が止まっている状態>
まず、ユーザがタッチパネル部34にタッチ(プレス)を開始する。押圧力が上昇を開始し押圧閾値51を超えることで、初回のプレスイベント(プレスイベント1)が発生する。やがて、押圧力の上昇が停止する(
図6参照)。その後、ユーザが指を移動させる直前で、タッチパネル部34に対しての押圧力が弱まる。なお、S1では、指は止まっている状態のため、ドラッグ時移動グラフ61はX座標上での変化はない(
図7参照)。
【0063】
・
図6、
図7におけるS2<押圧をかけている指の移動を開始した状態>
弱まった押圧力が押圧閾値51を下回ることで、初回のリリースイベント(リリースイベント1とする)が発生する。その後、指の移動が開始されるとともに、押圧力が再び上昇し、押圧閾値51を上回ることで2回目のプレスイベント(プレスイベント2とする、
図6参照)が発生する。なお、S2では、指の移動開始にあわせてX座標上での位置も移動を開始する(
図7参照)。
【0064】
・
図6、
図7におけるS3<指がタッチパネル部34上を移動している状態>
タッチパネル部34上を指が移動している際の押圧力は、押圧閾値51を上回った状態で安定している。ドラッグ操作なので、移動の終了時は、指を停止させてから、タッチパネル部34から指を離す。移動が終了するまで押圧力は安定している。タッチパネル部34から指が離れると押圧力は0になる(
図6参照)。なお、押圧力が押圧閾値51を下回る時に2回目のリリースイベント(リリースイベント2)が発生する。S3では、指の移動にあわせてX座標上での位置も移動し、指の移動終了に合わせてX座標上での位置も停止する(
図7参照)。タッチパネル部34から指が離れると、グラフは途切れて終了する。
【0065】
図8は、タッチパネル部34に表示中の選択画面40に対してユーザがセレクト操作を行う様子を示す。
図2、
図5と同じく選択画面40には、中央に設定中内容表示41、左上方にホーム画面移行アイコン42、中央上方に状態表示欄43、右上方にページ番号表示44、下部に4つの選択アイコン45(45A、45B、45C、45D)が並んで表示されている。
【0066】
図8は、現在表示されている選択アイコン45Cに対して、該選択アイコン45Cの内容を設定する目的で、選択アイコン45Cを指で押圧し、その位置のまま指を離すというセレクト操作をユーザが行っている様子を示している。ただし、ここでは、ユーザの指はタッチパネル部34から離れる直前で、わずかに移動してしまったものとする(ケース3とする)。
【0067】
図9は、ケース3のセレクト操作を行う際に、タッチパネル部34にかかる押圧力と時間の関係を表すセレクト時押圧力グラフ53を示す。セレクト時押圧力グラフ53のうち、ユーザがタッチパネルに触れているとタッチパネル部34が認識している状態(押圧力が押圧閾値51を上回っている状態)の部分は実線で表示し、認識していない状態(押圧力が押圧閾値51を下回っている状態)の部分は破線で表示してある。
【0068】
図10は、
図9のセレクト時押圧力グラフ53と同じくケース3のセレクト操作を行う際において、X座標上での指の位置(タッチパネル部34における水平方向の座標、
図5参照)と時間の関係を表すセレクト時移動グラフ62を示す。なお、ユーザがタッチパネルに触れているとタッチパネル部34が認識している状態(押圧力が押圧閾値51を上回っている状態)の部分は実線で表示し、認識していない状態(押圧力が押圧閾値51を下回っている状態)の部分は破線で表示してある。
【0069】
図9、
図10を参照しながら、セレクト操作を行う際の動作状態(S1)における押圧力および、X座標上の位置の変化を説明する。
【0070】
・
図9、
図10におけるS1<押圧をかけた指が止まっている状態>
まず、ユーザがタッチパネル部34にタッチ(プレス)を開始する。押圧力が上昇を開始し押圧閾値51を超えることで、初回のプレスイベント(プレスイベント1)が発生する。やがて、押圧力の上昇が停止する(
図9参照)。その後、ユーザが指をタッチパネル部34から離し始める。この際にわずかに指がタッチパネル部34上で移動する(
図10参照)。タッチパネル部34から指が離れると押圧力は0になる(
図9参照)。なお、押圧力が押圧閾値51を下回る時に初回のリリースイベント(リリースイベント1)が発生する。ユーザが指をタッチパネル部34から離し始めた時に、指がタッチパネル部34上で移動した分だけ、X座標上での位置も移動する(
図10参照)。なお、プレスイベント1が発生してから、リリースイベント1が発生するまでの時間を、ケース3のセレクト操作における押下時間とする。
【0071】
図11は、タッチパネル部34に対する操作を受けたときに、その操作の種類を判別する処理の流れ(フロー1)を示す。
【0072】
この処理はプレスイベントを検知したときに開始される。情報処理装置10は、リリースイベントの発生を監視し(ステップS101;No)、リリースイベントを認識したら(ステップS101;Yes)、つまり、押圧力が押圧閾値51を上回っている状態から下回る状態に変化したら、ステップS102に進む。
【0073】
ステップS102では、ステップS101で認識したリリースイベントの直前のプレスイベントを認識してから、当該リリースイベントを認識するまでに、移動した距離が第1閾値以上か否かを調べる。移動距離は、プレスイベントがあった座標とリリースイベントがあった座標間の距離でもよいし、プレスイベントからリリースイベントまでにタッチパネル部34上を指が移動した軌跡の長さでもよい。
【0074】
移動距離が、第1閾値以上の場合は(ステップS102;Yes)、ステップS103に進み、リリースイベントが発生する直前の指の加速度が第3閾値以上か否かを調べる。加速度が第3閾値以上ならば(ステップS103;Yes)、リリースイベントに係るユーザの操作をフリック操作と判断し、そのフリック操作に応じた処理を行い(ステップS105)、処理を終了する。加速度が第3閾値未満ならば(ステップS103;No)、リリースイベントに係るユーザの操作をドラッグ操作と判断し、そのドラッグ操作に応じた処理を行い(ステップS104)、処理を終了する。
【0075】
ステップS102にて移動距離が、第1閾値未満の場合は(ステップS102;No)、ステップS101で認識したリリースイベントの直前のプレスイベントを認識してから、当該リリースイベントを認識するまでの時間(押下時間)を調べる(ステップS106)。押下時間が第2閾値以上の場合は(ステップS106;Yes)、リリースイベントに係るユーザの操作をセレクト操作と判断し、そのセレクト操作に応じた処理を行い(ステップS107)、処理を終了する。押下時間が第2閾値未満の場合は(ステップS106;No)、そのまま処理を終了する。なお、第2閾値と比較する押下時間は、リリースイベントの発生時点から遡って第2閾値以上あればよく、必ずしも直前のプレスイベントから当該リリースイベントまでの時間を計測して第2閾値と比較しなくてもよい。
【0076】
図3、
図4で説明したケース1のフリック操作を
図11のフロー1に当てはめると、プレスイベント1からリリースイベント1までの操作(S1)は、移動距離が第1閾値より短く(ステップS102;No)かつ押下時間も第2閾値より短い(ステップS106;No)ため、セレクト操作、フリック操作、ドラッグ操作のどれにも該当しないと判断されて無視される。プレスイベント2からリリースイベント2までの操作(S3)は、移動距離が第1閾値以上(ステップS102;Yes)で、リリースイベントが発生する直前の指の加速度が第3閾値以上(ステップS103;Yes)なので、フリック操作と判断される。
【0077】
図6、
図7で説明したケース2のドラッグ操作を
図11のフロー1に当てはめると、プレスイベント1からリリースイベント1までの操作(S1)は、移動距離が第1閾値より短く(ステップS102;No)かつ押下時間も第2閾値より短い(ステップS106;No)ため、セレクト操作、フリック操作、ドラッグ操作のどれにも該当しないと判断され無視される。プレスイベント2からリリースイベント2までの操作(S3)は、移動距離が第1閾値以上(ステップS102;Yes)で、リリースイベントが発生する直前の指の加速度が第3閾値未満(ステップS103;No)なので、ドラッグ操作と判断される。
【0078】
図9、
図10で説明したケース3のセレクト操作を
図11のフロー1に当てはめると、プレスイベント1からリリースイベント1までの操作(S1)は、移動距離が第1閾値未満で(ステップS102;No)かつ、押下時間が第2閾値以上(ステップS106;Yes)のためセレクト操作と判断される。
【0079】
なお、第1、第2、第3の閾値は、ユーザがそれぞれを適宜設定することができる。第1閾値は、たとえばアイコン1つ分の距離等に設定すればよい。第2閾値は、動作がセレクト操作であると判断できる時間(たとえば1秒程度)に設定すればよい。第3閾値は、フリック操作とドラッグ操作を判別できる範囲で適宜設定すればよい。
【0080】
図11に示す処理では、タッチパネル部34から指が離れた時(リリースイベント発生時)に、そのリリースイベントの直前のプレスイベント(タッチパネル部34に触れる)から、当該リリースイベントが発生するまでの間の移動距離、及び押下時間、リリース直前の加速度から、そのリリースイベントに係る操作がセレクト操作かフリック操作かドラッグ操作か無視すべき動作かを判断する。これにより、フリック操作、またはドラッグ操作等が行われた際に、指を移動させる直前でタッチパネル部34から指が一瞬離れたと認識されるような動作が行われた場合でも、誤判定を抑制し、ユーザの要望する操作をより忠実に認識することができる。
【0081】
なお、複数のユーザが情報処理装置10を共用する場合は、ユーザごとにタッチや移動の操作の癖(押圧力、移動距離、押下時間等)が異なることから、各操作の判定を一つの要素(たとえば移動距離のみ)から行うのは難しいが、
図11に示す判定方法では、2以上の要素(ここでは、当該リリースイベントが発生するまでの間の移動距離、及び押下時間、リリース直前の加速度)で操作判定を行っているため、ユーザごとに癖があっても誤判定を抑制することができる。
【0082】
図12は、指が一瞬離れたと認識されるような動作に対する誤判定を防止する第2の処理フロー(フロー2)を示す。
【0083】
この処理は、プレスイベントを認識したときに開始される。まず、情報処理装置10は、リリースイベントの発生を監視し(ステップS201;No)、リリースイベントを認識したら(ステップS201;Yes)、つまり、押圧力が押圧閾値51を上回っている状態から下回る状態に変化したら、ステップS202に進む。
【0084】
ステップS202では、先ほどのリリースイベントが発生してから所定時間内に新たなプレスイベントが受信されるか否かを監視し、所定時間内に新たなプレスイベントが発生しなかった場合は(ステップS202;No)、ステップS203に進む。新たなプレスイベントを所定時間内に受信した場合は(ステップS202;Yes)、そのまま処理を終了する。所定時間は、たとえば、0.2秒ぐらいに適宜設定すればよい。なお、新たなプレスイベントの発生によって処理を終了した場合、このプレスイベントにより本処理はステップS201から再び開始される。
【0085】
ステップS203では、ステップS201で認識したリリースイベントの直前のプレスイベントを認識してから、当該リリースイベントを認識するまでの移動距離が第1閾値以上か否かを調べる。移動距離が、第1閾値未満の場合は(ステップS203;No)、ステップS201で認識したリリースイベントに係るユーザの操作をセレクト操作と判断し、そのセレクト操作に応じた処理を行い(ステップS207)、処理を終了する。
【0086】
移動距離が、第1閾値以上の場合は(ステップS203;Yes)、ステップS204に進み、ステップS201で認識したリリースイベントが発生する直前の加速度が第3閾値以上か否かを調べる。加速度が第3閾値以上ならば(ステップS204;Yes)、当該リリースイベントに係るユーザの操作をフリック操作と判断し、そのフリック操作に応じた処理を行い(ステップS206)、処理を終了する。加速度が第3閾値未満ならば(ステップS204;No)、当該リリースイベントに係るユーザの操作をドラッグ操作と判断し、そのドラッグ操作に応じた処理を行い(ステップS205)、処理を終了する。
【0087】
図3、
図4で説明したケース1のフリック操作を
図12のフロー2に当てはめると、プレスイベント1からリリースイベント1までの操作(S1)は、リリースイベント1から次のプレスイベント2までの時間が短い(
図12、ステップS202;Yes)ので、セレクト操作、フリック操作、ドラッグ操作のいずれにも該当しないとして無視される。プレスイベント2からリリースイベント2までの操作(S3)は、リリースイベント2の直後に新たなプレスイベントが無く(ステップS202;No)、移動距離が第1閾値以上(ステップS203;Yes)で、リリースイベントが発生する直前の指の加速度が第3閾値以上(ステップS204;Yes)なので、フリック操作と判断される。
【0088】
図6、
図7で説明したケース2のドラッグ操作を
図12のフロー2に当てはめると、プレスイベント1から次のリリースイベント1までの操作(S1)は、リリースイベント1からプレスイベント2までの時間が短い(
図12、ステップS202;Yes)ので、セレクト操作、フリック操作、ドラッグ操作のどれにも該当しないとして無視される。プレスイベント2からリリースイベント2までの操作(S3)は、リリースイベント2の直後に新たなプレスイベントが無く(ステップS202;No)、移動距離が第1閾値以上(ステップS203;Yes)で、リリースイベントが発生する直前の指の加速度が第3閾値未満(ステップS204;No)なので、ドラッグ操作と判断される。
【0089】
図9、
図10で説明したケース3のセレクト操作を
図12のフロー2に当てはめると、プレスイベント1からリリースイベント1までの操作(S1)は、リリースイベント1の直後に新たなプレスイベントが無く(ステップS202;No)、移動距離が第1閾値未満(ステップS203;No)なので、セレクト操作と判断される。
【0090】
なお、第1、第3の閾値、およびステップS202の判断基準となる所定時間は、ユーザがそれぞれを適宜設定することができる。第1閾値は、たとえばアイコン1つ分の距離等に設定すればよい。第3閾値は、フリック操作とドラッグ操作を判別できる範囲で適宜設定すればよい。所定時間は、リリースイベントに係る操作と、当該リリースイベント直後のプレスイベントに係る操作が、一連の操作であると判別できる範囲で、たとえば0.2秒等に適宜設定すればよい。
【0091】
図12に示す処理では、リリースイベント発生時に、そのリリースイベントの直後の所定時間内に、新たなプレスイベントが発生したか否かと、該リリースイベントの直前のプレスイベントから当該リリースイベントが発生するまでの間の移動距離と、リリース直前の加速度とからそのリリースイベントに係る操作がセレクト操作かフリック操作かドラッグ操作か、無視すべき動作かを判断する。これにより、フリック操作、またはドラッグ操作等が行われた際に、指を移動させる直前でタッチパネル部34から指が一瞬離れたと認識されるような動作が行われた場合でも、誤判定を抑制し、ユーザの要望する操作をより忠実に認識することができる。
【0092】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【0093】
本発明の実施の形態では、ユーザが行う操作の種類は、セレクト操作、ドラッグ操作、フリック操作の3種類であったが、これに限定しない。たとえば、ピンチアウトやピンチイン等の操作があってもよい。
【0094】
本発明の実施の形態では、第1、第2、第3の閾値(
図11、
図12参照)や、新たなプレスイベントまでの所定時間(
図12参照)はユーザが適宜設定していたが、ユーザのセレクト操作、フリック操作、ドラッグ操作等の操作を試験的に複数回受け付け、その操作に係るプレスイベントからリリースイベントまでの時間や、移動距離の実測値に基づいて、情報処理装置10が、ユーザにとって最適となる値を決定してもよい。ユーザの操作に係る実測値から、操作の種類を判定する閾値を決定することで、最適な条件で各操作の誤判定を抑制し、ユーザの要望する操作をより忠実に認識することができる。
【0095】
図13は、表示部31(タッチパネル部34)に表示される操作判定学習モード画面70の一例を示す。操作判定学習モード画面70では、画面中央に表示されたターゲット釦71に対して、所定の操作を一定回数行う指示が該ターゲット釦71の上方に表示されている。具体的には、ユーザが、表示部31に表示された指示順にセレクト操作、フリック操作、ドラッグ操作を10回ずつターゲット釦71に対して行い、情報処理装置10はその操作における押圧力の変化とタッチパネル上においての押下位置の座標の変化とを時系列に記録する。
【0096】
第1閾値については、フリック操作、ドラッグ操作の場合の最小移動距離(または平均距離)とセレクト操作の場合の最長移動距離(または平均距離)とを求め、セレクト操作の最長移動距離(または平均距離)とフリック操作、ドラッグ操作の最小移動距離(または平均距離)との間に第1閾値を設定する。
【0097】
第2閾値については、フリック操作、ドラッグ操作において操作開始後に一時的に押圧力が低下して押圧閾値51未満になるまでの平均時間(または最長時間)を求め、セレクト操作における押下時間の平均時間(または最小時間)との間に第2閾値を設定する。
【0098】
第3閾値については、フリック操作において、リリースイベントが発生する直前の指の加速度の、最小値(または平均値)を求め、その値を第3閾値として設定する。
【0099】
フロー2における所定時間は、フリック操作、ドラッグ操作において操作開始後に一時的に押圧力が低下して押圧閾値51未満になってから、再び押圧力が上昇し、押圧閾値51以上になるまでの時間の平均時間または最長時間を、所定時間として設定する。
【0100】
第1、第2、第3の閾値や新たなプレスイベントまでの所定時間は、ユーザごとに設定してもよい。その場合はユーザID等を予め登録しておき、ログイン認証によって使用中のユーザを識別し、認証中のユーザのユーザIDに対応付けて登録されている閾値を採用する。
【0101】
本発明の実施の形態では情報処理装置10自体を例に説明したが、情報処理装置10を実施の形態でのように動作させるプログラムであってもよい。また、情報処理装置10は、画像形成装置に限定されず、測定機や、スキャナ等の別装置であってもよい。また、操作対象の装置本体に対して別体に設けられる操作表示装置として構成されてもよい。なお、この場合は、操作表示装置には、実施の形態の操作表示部30およびこれを制御する為に必要な構成(CPU11、ROM12、RAM13等)が含まれている。
【0102】
本発明の実施の形態において、タッチパネル部34は抵抗膜式のタッチパネルであったが、他の方式のタッチパネルでもよい。静電容量方式等でもよい。