(57)【要約】【課題】  ユーザからの指示に対して高い反応性を有しながらも、違和感の無い画面遷移のアニメーションを再生可能になる。【解決手段】  第１画面から第２画面へ遷移している間に第１のアニメーションする。この第１のアニメーションを表示中に、ユーザから記第１画面へ遷移する指示を与えられた場合、再生中の第１のアニメーションを中断し、その中断した時間に応じて決定する時点より第２画面から第１画面への遷移する第２のアニメーションを再生する。【選択図】  図１
2013016082.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの操作に係る画面を表示する表示手段と、ユーザからの操作を取り込む入力手段とを有するユーザインタフェース装置であって、
画面遷移する際に表示すべきアニメーション情報を記憶する記憶手段と、
前記入力手段によって、前記表示手段に表示している第１画面から第２画面への遷移の指示が前記入力手段より入力された場合、前記記憶手段を参照し、前記第１画面から第２画面への遷移に係るアニメーション情報に従って第１のアニメーションを前記表示手段に再生表示するアニメーション再生手段と、
該アニメーション再生手段による前記第１のアニメーションの再生表示中に、前記入力手段から前記第１画面への遷移の入力があった場合、前記第１のアニメーションの再生表示を中断し、当該第１のアニメーションの再生表示済みの時間に応じた時点の、前記第２画面から前記第１画面に遷移する第２のアニメーションの途中位置から再生を開始する再生制御手段と
を有することを特徴とするユーザインタフェース装置。
【請求項２】
前記再生制御手段は、前記入力手段から前記第１画面への遷移の入力があった場合の前記第１のアニメーションの再生表示済み時間をＸ％としたとき、前記第２のアニメーションの先頭から「１００−Ｘ」％の時点より、当該第２のアニメーションを再生表示することを特徴とする請求項１に記載のユーザインタフェース装置。
【請求項３】
前記再生制御手段は、
前記第１のアニメーションと前記第２のアニメーションの関係が、遷移と戻りの関係にあるか否かを前記記憶手段を参照して判定する判定手段と、
遷移と戻りの関係にあると判定した場合には、前記入力手段から前記第１画面への遷移の入力があった場合の前記第１のアニメーションの再生表示済み時間をＸ％としたとき、前記第２のアニメーションの先頭から「１００−Ｘ」％の時点より、当該第２のアニメーションを再生表示し、
遷移と戻りの関係以外にあると判定した場合には、前記第１のアニメーションの再生表示が完了してから、前記第２のアニメーションをその先頭から再生表示する手段と
を有することを特徴とする請求項１に記載のユーザインタフェース装置。
【請求項４】
ユーザの操作に係る画面を表示する表示手段と、ユーザからの操作を取り込む入力手段と、画面遷移する際に表示すべきアニメーション情報を記憶する記憶手段とを有するユーザインタフェース装置の制御方法であって、
前記入力手段によって前記表示手段に表示している第１画面から第２画面への遷移の指示が前記入力手段より入力された場合、アニメーション再生手段が、前記記憶手段を参照し、前記第１画面から第２画面への遷移に係るアニメーション情報に従って第１のアニメーションを前記表示手段に再生表示するアニメーション再生工程と、
該アニメーション再生工程による前記第１のアニメーションの再生表示中に、前記入力手段から前記第１画面への遷移の入力があった場合、再生制御手段が、前記第１のアニメーションの再生表示を中断し、当該第１のアニメーションの再生表示済みの時間に応じた時点の、前記第２画面から前記第１画面に遷移する第２のアニメーションの途中位置から再生を開始する再生制御工程と
を有することを特徴とするユーザインタフェース装置の制御方法。
【請求項５】
前記再生制御工程は、前記入力手段から前記第１画面への遷移の入力があった場合の前記第１のアニメーションの再生表示済み時間をＸ％としたとき、前記第２のアニメーションの先頭から「１００−Ｘ」％の時点より、当該第２のアニメーションを再生表示することを特徴とする請求項４に記載のユーザインタフェース装置の制御方法。
【請求項６】
前記再生制御工程は、
前記第１のアニメーションと前記第２のアニメーションの関係が、遷移と戻りの関係にあるか否かを前記記憶手段を参照して判定する判定工程と、
遷移と戻りの関係にあると判定した場合には、前記入力手段から前記第１画面への遷移の入力があった場合の前記第１のアニメーションの再生表示済み時間をＸ％としたとき、前記第２のアニメーションの先頭から「１００−Ｘ」％の時点より、当該第２のアニメーションを再生表示し、
遷移と戻りの関係以外にあると判定した場合には、前記第１のアニメーションの再生表示が完了してから、前記第２のアニメーションをその先頭から再生表示する工程と
を有することを特徴とする請求項４に記載のユーザインタフェース装置の制御方法。
【請求項７】
ユーザの操作に係る画面を表示する表示手段と、ユーザからの操作を取り込む入力手段と、画面遷移する際に表示すべきアニメーション情報を記憶する記憶手段とを有するコンピュータに、読み込ませ実行させることで、前記コンピュータを、ユーザインタフェース装置として機能させるプログラムであって、
前記コンピュータを、
前記入力手段によって前記表示手段に表示している第１画面から第２画面への遷移の指示が前記入力手段より入力された場合、前記記憶手段を参照し、前記第１画面から第２画面への遷移に係るアニメーション情報に従って第１のアニメーションを前記表示手段に再生表示するアニメーション再生手段、
該アニメーション再生手段による前記第１のアニメーションの再生表示中に、前記入力手段から前記第１画面への遷移の入力があった場合、前記第１のアニメーションの再生表示を中断し、当該第１のアニメーションの再生表示済みの時間に応じた時点の、前記第２画面から前記第１画面に遷移する第２のアニメーションの途中位置から再生を開始する再生制御手段
として機能させることを特徴とするプログラム。
【請求項８】
請求項７に記載のプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人間−マシン間のインタフェースにアニメーションを用いる技術に関するものである。
【背景技術】
【０００２】
従来からアニメーションは機器の状態をユーザに通知するための手段として利用されている。アニメーションを用いる利点として、ユーザに親しみやすさを与えることや直感的な動作を可能にすることが挙げられる。
【０００３】
特にユーザの操作により複数の画面が順に遷移する場合、画面の遷移時にアニメーションが用いられることがある。例えば、現在の画面から次の画面に遷移する場合に、右から次の画面が登場し、現在の画面が次の画面に押し出されるようにして退場する（図１１）というアニメーションが用いられる。また、前の画面に戻る場合は左から前の画面が登場し、現在の画面が前の画面に押し出されるようにして退場する（図１９）、というアニメーションが用いられる。次の画面への遷移時と前の画面への遷移時とで異なるアニメーションを用いることで、ユーザは複数の画面のうち現在どの画面が表示されているかを知ることができる。
【０００４】
アニメーションには再生時間が定められており、機器は定められた再生時間だけアニメーションを再生する。しかし、アニメーションの再生時間を固定すると、ユーザがアニメーションの再生中に画面を遷移させる指示を行った場合、アニメーションが再生終了するまでユーザ操作に対応する画面遷移をおこなうことができないため、機器の反応性は低くなってしまう（図２０）。
【０００５】
一方、アニメーションの再生時間を固定せず、ユーザがアニメーションの再生中に機器を操作したらアニメーションの再生を中止するようにすると、機器の反応性は高くなる。しかし中止時点の画像と後続のアニメーションの先頭画像が異なりアニメーションの連続性が失われてしまうため、ユーザに違和感を与える（図２１）。
【０００６】
この課題を解決するための手法として、第一のアニメーションの再生中にユーザが画面を遷移させる指示を行った場合、第一のアニメーションを中断して、その中断地点から遷移後の画面への第二のアニメーションを再生するという手法が一般に知られている。例えば次の画面へ遷移するアニメーションを再生してから200ms の時点で前の画面へ遷移する指示が行われた場合、再生中のアニメーションを中断し、アニメーションの中断画面から前の画面へ遷移するアニメーションを表示する。
【０００７】
また、次の画面へ遷移するアニメーションの再生中にユーザが前の画面へ遷移する指示をおこなった場合は、再生を中止するとともに、その時点までに再生したアニメーションを逆回しで再生するという手法が一般に知られている。例えば、次の画面が右から登場するアニメーションが再生されている途中にユーザが１つ前の画面への遷移を指示した場合、アニメーションを中止して、その時点までに再生したアニメーションの逆回し、すなわち次の画面が右へ退場するアニメーションを再生する。
【０００８】
また、制御フラグの値によってどちらの動作をするか決定する手法が提案されている（特許文献１）。また、ユーザ操作の種類に応じてどちらの動作をするか決定する手法が提案されている（特許文献２）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−１７２７１６号公報
【特許文献２】特開２００４−３４０８３６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、状態遷移を示す第一のアニメーションを再生中にそれを中断して、その中断地点から遷移後の画面への第二のアニメーションを再生するという手法では、機器の開発者は第一のアニメーションの中断時点ごとに第二のアニメーションを用意して機器に搭載させる必要がある。例えば次の画面へ遷移するアニメーションと前の画面へ遷移するアニメーションの持続期間が800ms、フレームレートが100msとする。このとき開発者は「次の画面へ遷移するアニメーションの時点Ｘから前の画面に遷移するアニメーション」を、Ｘが100ms から 700ms まで合計７種類用意する用意する必要がある。
【００１１】
また、アニメーションを逆回しで再生する手法では、逆回ししたアニメーションが、前の画面に戻るアニメーションと一致しない場合、ユーザに違和感を与える。例えば次の画面へ移るとき人間が左を向いて左に移動するアニメーションが再生され、前の画面へ戻るとき人間が右を向いて右に移動するアニメーションが再生されるとする。このとき次の画面へ移るときのアニメーションを逆向きに再生すると、人間が左を向いて右に移動する、すなわち後ろ歩きするアニメーションが再生され、ユーザに違和感を与える。
【００１２】
また、特許文献１や特許文献２は、機器の反応性とアニメーションの連続性を両立することはできない。
【００１３】
本発明は上記問題に鑑みなされたものであり、ユーザからの指示に対して高い反応性を有しながらも、違和感の無い画面遷移のアニメーションを再生可能な技術を提供しようとするものである。
【課題を解決するための手段】
【００１４】
この課題を解決するため、例えば本発明のユーザインタフェース装置は以下の構成を備える。すなわち、
ユーザの操作の指標となる画面を表示する表示手段と、ユーザからの操作を取り込む入力手段とを有するユーザインタフェース装置であって、
画面遷移時に表示すべきアニメーション情報を記憶する記憶手段と、
前記入力手段によって、前記表示手段に表示している第１の画面から第２の画面への遷移の指示が前記入力手段より入力された場合、前記記憶手段を参照し、前記第１の画面から第２の画面への遷移に係るアニメーション情報に従って第１のアニメーションを前記表示手段に再生表示するアニメーション再生手段と、
該アニメーション再生手段による前記第１のアニメーションの再生表示中に、前記入力手段から前記第１の画面への遷移の指示入力があった場合、前記第１のアニメーションの再生表示を中断し、当該第１のアニメーションの再生表示済みの時間に応じた時点の、前記第２の画面から前記第１の画面に遷移する第２のアニメーションの途中位置から再生を開始するアニメーション再生制御手段とを有する。
【発明の効果】
【００１５】
本発明によれば、ユーザからの指示に対して高い反応性を有しながらも、違和感の無い画面遷移のアニメーションを再生可能になる。
【図面の簡単な説明】
【００１６】
【図１】第１の実施形態における表示方法、及び表示装置の構成ブロック図。
【図２】第１の実施形態における表示方法、及び表示装置のデータフロー図。
【図３】第１の実施形態におけるシステム起動時の処理を示すフローチャート。
【図４】第１の実施形態における初期画面定義のイメージ図。
【図５】第１の実施形態における画面デザイン定義のイメージ図。
【図６】第１の実施形態における機器が起動した直後の画面イメージ図。
【図７】第１の実施形態におけるユーザによる機器の操作時の処理を示すフローチャート。
【図８】第１の実施形態におけるイベントテーブルのイメージ図。
【図９】第１の実施形態における遷移中イベントのイメージ図。
【図１０】第１の実施形態における画面遷移定義のイメージ図。
【図１１】第１の実施形態におけるユーザによる機器の操作直後の画面イメージ図。
【図１２】第１の実施形態における戻りアニメーションを作成する処理手順を詳細に示したフローチャート。
【図１３】第１の実施形態におけるにおける戻りアニメーションの再生開始時点を計算するための計算式。
【図１４】第１の実施形態におけるアニメーションの再生中にユーザによる機器の操作が行われたときの画面イメージ図。
【図１５】第２の実施形態における表示方法、及び表示装置のデータフロー図。
【図１６】第２の実施形態におけるユーザによる機器の操作時の処理を示すフローチャート。
【図１７】第２の実施形態における戻り画面遷移定義のイメージ図。
【図１８】第２の実施形態におけるニメーションの再生中にユーザによる機器の操作が行われたときの画面イメージ図。
【図１９】画面の遷移時に機器が再生するアニメーションの一例を示すイメージ図。
【図２０】従来の技術によるアニメーション再生による問題点を示すためのイメージ図。
【図２１】従来の技術によるアニメーション再生による問題点を示すためのイメージ図。
【発明を実施するための形態】
【００１７】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１８】
［第１の実施形態］
図１は、第１の実施形態におけるＧＵＩ提示装置（ユーザインタフェース装置）の構成図である。図中、１０１は、ＣＰＵであり、以下に説明する１０３〜１１０の装置を１０２で示すバスを介してアクセスし制御を行う。１０３は、バス１０２を介してＣＰＵ１０１からアクセス可能な読み出し専用メモリ（ＲＯＭ）である。読み出し専用メモリ１０３には本実施形態にてその動作を詳細に説明するプログラムコード１１１、画面デザイン定義１１２、画面遷移定義１１３、戻り画面遷移定義１１４、初期画面定義１１５、イベントテーブル１１６が格納されている。１０４は、読み書き可能なメモリ（ＲＡＭ）であり、ＲＡＭ１０４上には、上記プログラムコード１１１により生成される、遷移中イベント１１７、アニメーション再生表示済み時間１１８の格納領域が確保されている。１０５は、入出力インタフェースであり、１０６で示したキーボード、マウス、ボタン、ダイアル等の入力装置、１０７で示したタッチパネルを介してなされる入力を受け取る。また入出力インタフェース１０５は、１０８で示したＣＲＴ、ＬＣＤ、更にはプリンタ、プロッタ等の出力装置、タッチパネル１０７に対し、データの表示／出力を行う。また、１０９は外部記憶装置インタフェースであり、１１０で示したＨＤ、ＦＤ、ＣＤ−ＲＯＭ、ＭＤ、ＣＦ等の外部記憶装置に対するデータの入出力を行うものである。
【００１９】
本実施形態では、プログラムコード１１１と処理対象となる各データ定義（１１２〜１１６）がＲＯＭ１０３上にあるものとして、また、一時データの格納領域（１１７〜１１８）がＲＡＭ１０４上にあるものとして説明を行う。しかし、これらはすべて、外部記憶装置１１０上に配置することも可能であり、必要に応じて外部記憶装置１１０からＲＡＭ１０４上にロードして使用することもできる。また、ＣＰＵ１０１のキャッシュメモリ上に配置することも同様に可能である。
【００２０】
図２は、プログラムコード１１１の構成要件とそれら構成要件が図１の１１２〜１１８とどのような関係にあるかを示すデータフロー図である。図中、２０１は、ユーザによる入力を入力装置１０６やタッチパネル１０７から入出力インタフェース１０５を介して受け取り、制御部２０２に通知する入力部である。２０２は、システムの起動処理や終了処理をおこなう制御部である。制御部２０２は入力部２０１から通知されたユーザによる入力に基づいて画面遷移イベントを発生させる。制御部２０２は、発生させた画面遷移イベントを遷移中イベント１１７に格納する。制御部２０２は、画面遷移定義２０４に基づき、画面生成部２０６にアニメーションの再生を指示する。２０３は、ユーザによる入力が行われたときに発生させる画面遷移イベントを表す、イベントテーブルである。２０４は、画面遷移イベントが発生したときに再生するアニメーションに関する情報（アニメーション情報）や遷移後の画面を指定する、画面遷移定義である。２０５は、制御部２０２が発生させた画面遷移イベントを示す遷移中イベントである。２０６は、制御部２０２からのアニメーション再生指示と画面デザイン定義２０８に基づいて、出力する画像データを生成する画面生成部である。２０７は、入出力インタフェース１０５を介してタッチパネル１０７や出力装置１０８に画面生成部２０６が生成した画像データを出力する出力部である。２０８は、出力部２０７に表示される画面データおよびアニメーションを表す、画面デザイン定義である。２０９は、システムの起動後、最初に出力される画面を表す初期画面定義である。２１０は、画面再生部２０６がアニメーションを再生している最中に、画面遷移イベントが発生したとき、遷移中イベント２０５に基づいて、戻りアニメーションの再生を画面生成部２０６に指示する戻りアニメーション生成部である。
【００２１】
なお、画面デザイン定義２０８としては、例えば静止画像の集合や、または、ある静止画像とその静止画像に対する差分情報の集合などを用いることができる。差分情報としては、例えば位置や色、透明度などを用いることができる。
【００２２】
図３は、第１の実施形態のシステムの起動時の処理手順を示したフローチャート図である。
【００２３】
本システムの起動要求は、ユーザが入出力インタフェース１０５を介して入力部２０１から指示する（Ｓ１０１）。ユーザからの起動要求があると、入力部２０１は起動要求を制御部２０２に通知し、Ｓ１０２で、制御部２０２は画面生成部２０６に初期画面の表示を指示する。Ｓ１０３で、画面生成部２０６は、初期画面定義２０９から初期画面の画面ＩＤを取得する。Ｓ１０４で、画面生成部２０６は、Ｓ１０３で取得した初期画面の画面ＩＤと画面デザイン定義２０８より、初期画面の画面デザイン情報４０２を取得する。Ｓ１０５で、画面生成部２０６は、Ｓ１０４で取得した画面デザイン情報４０２から画像データを生成する。Ｓ１０６で、画面生成部２０６は、Ｓ１０５で生成した画像データの出力を出力部２０７に指示する。Ｓ１０７で、出力部２０７は、Ｓ１０６で画面生成部２０６より指示された画像データをタッチパネル１０７や出力装置１０８に表示する処理をおこなうと、Ｓ１０８に進み、本シーケンスを終了する。
【００２４】
図４は、上記のＳ１０３で取得する初期画面定義２０９である。図示において、３０１は、初期画面の画面ＩＤ４０１が “ＳＣＲＥＥＮ＿ＨＯＭＥ”であることを示している。
【００２５】
図５は、Ｓ１０５で取得する画面デザイン定義２０８である。図中、４０１は、画面を識別するための画面ＩＤである。４０２は、画像データが格納されたファイルを表す画面デザイン情報である。４０３は、画面ＩＤ４０１が“ＳＣＲＥＥＮ＿ＨＯＭＥ”である画面の画像データが、“ｈｏｍｅ．ｓｖｇ”という画像データファイルに格納されていることを表している。
【００２６】
図６は、図４の示す初期画面定義２０９と図５の示す画面デザイン定義２０８から、図３の示すフローチャートによって生成された画面イメージ図である。図中、５０１は、画面ＩＤ４０１が“ＳＣＲＥＥＮ＿ＨＯＭＥ”である画面の画面イメージである。図３のフローチャートに即して説明するのであれば、Ｓ１０３で、初期画面ＩＤ３０１“ＳＣＲＥＥＮ＿ＨＯＭＥ”を取得する。Ｓ１０４で、画面デザイン情報４０２“ｈｏｍｅ．ｓｖｇ”を取得する。Ｓ１０５で、画面デザイン情報４０２“ｈｏｍｅ．ｓｖｇ”から画像データを生成する。Ｓ１０６で、生成した画像データを出力する。
【００２７】
図７は、ユーザによる入力が行われたときの第１の実施形態の処理手順を示したフローチャートである。ユーザによる入力があると本処理が開始される（Ｓ２０１）。入力部２０１はユーザによる入力を制御部２０２に通知し、Ｓ２０２で、制御部２０２はイベントテーブル２０３に基づいて遷移イベントＩＤ８０１を取得する。Ｓ２０３で、制御部２０２は、遷移中イベント２０５が空でないか判定する。遷移中イベント２０５が空でない場合はＳ２０４に進む。遷移中イベント２０５が空である場合はＳ２０５に進む。
【００２８】
Ｓ２０４では、戻りアニメーション生成部２１０は、戻りアニメーションを作成して、画面生成部２０６にアニメーションの再生を指示すると、Ｓ２０９に進む。
【００２９】
また、Ｓ２０５で、制御部２０２は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて、遷移アニメーションを画面生成部２０６に通知する。Ｓ２０６で、制御部２０２は、アニメーション再生表示済み時間１１８に０を設定し、遷移アニメーションの再生開始時点が遷移アニメーションの先頭であることを画面生成部２０６に通知する。Ｓ２０７で、制御部２０２は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて、フレームレート８０４を画面生成部２０６に通知する。Ｓ２０８で、制御部２０２は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて、持続時間８０５を画面生成部２０６に通知する。
【００３０】
Ｓ２０９で、制御部２０２は、Ｓ２０２で取得した遷移イベントＩＤ８０１を遷移中イベント２０５に設定する。Ｓ２１０で、画面生成部２０６は、アニメーション再生表示済み時間１１８が持続時間８０５より大きくなるまで、Ｓ２１１からＳ２１２までを繰り返す処理をおこなう。Ｓ２１１で、画面生成部２０６は、画像データを作成して画像データの出力を出力部２０７に指示する。画像データの作成処理にかける時間はフレームレート８０４が示す時間とする。Ｓ２１２で、画面生成部２０６は、アニメーション再生表示済み時間１１８に、フレームレート８０４が示す時間を加える。Ｓ２１３で、アニメーション再生表示済み時間１１８が持続時間８０５を超えると、Ｓ２１４に進む。
【００３１】
Ｓ２１４で、制御部２０２は、遷移中イベント２０５に現在イベントの遷移中でないことを設定すると、Ｓ２１５に進み、本シーケンスを終了する。
【００３２】
図８は、Ｓ２０２で取得するイベントテーブル２０３である。図中、６０１は、ユーザによる入力を示している。６０２は、表示中の画面の画面ＩＤを示している。６０３は、ユーザによる入力６０１が行われたとき、表示中の画面が表示中画面ＩＤ６０２である場合に発生する画面遷移イベントを示す、発生イベントである。６０４は、ユーザによりボタン１が押下されたとき、表示中の画面の画面ＩＤが“ＳＣＲＥＥＮ＿ＨＯＭＥ”の場合、“ＥＶ＿ＴＯ＿ＣＯＰＹ”という画面遷移イベントを発生させることを示している。
【００３３】
図９は、Ｓ２０５で設定される遷移中イベント２０５である。７０１は、現在イベントの遷移中でないことを示している。
【００３４】
図１０は、Ｓ２０６で取得する画面遷移定義２０４である。８０１は、画面遷移イベントを識別するための遷移イベントＩＤである。８０２は、画面遷移イベントによって遷移したあとの画面を示す遷移後画面ＩＤである。８０３は、画面遷移イベントが発生したときに画面生成部２０６によって再生表示されるアニメーションを示す、遷移アニメーションである。８０４は、画面生成部２０６が出力部２０７に画像データを出力する間隔を表すフレームレートである。８０５は、画面生成部２０６が出力部２０７に画像データを出力する期間を表す持続期間である。８０６は、遷移イベントＩＤ８０１が“ＥＶ＿ＴＯ＿ＣＯＰＹ”である画面遷移イベントが発生したとき、画面遷移後の画面である遷移後画面ＩＤ８０２は“ＳＣＲＥＥＮ＿ＣＯＰＹ”であることを示している。また８０６は、画面遷移イベントの発生後に再生される遷移アニメーション８０３は“ＳＬＩＤＥ＿ＩＮ＿ＲＩＧＨＴ”であり、フレームレート８０４は“１００”（ms）であり、持続期間８０５は“８００”(ms)であることを示している。
【００３５】
図１１は、ユーザがボタン１を押下したとき、図７の示すフローチャートによって生成された画面イメージ図である。図１１の示す画面イメージ図は図４の示す初期画面定義２０９と、図５の示す画面デザイン定義２０８と、図８が示すイベントテーブル２０３と、図９の示す遷移中イベント２０５と、図１０の示す画面遷移定義２０４から生成されている。以下、図１１を参照して、上記処理の具体例を説明する。
【００３６】
９０１は、ユーザがボタン１を押下した直後の画面イメージを示している。Ｓ２０２において、表示中の画面ＩＤ４０１が“ＳＣＲＥＥＮ＿ＨＯＭＥ”であることから、発生イベント６０３“ＥＶ＿ＴＯ＿ＣＯＰＹ“を取得する。Ｓ２０３において、遷移中イベント２０５が空であると判定してＳ２０５に進む。Ｓ２０９において、遷移中イベント２０５に遷移中イベントＩＤ７０１”ＥＶ＿ＴＯ＿ＣＯＰＹ“を設定する。Ｓ２１０において、アニメーションの再生表示を開始する。９０２は、ユーザがボタン１を押下してから２００ｍｓが経過したあとの画面イメージを示している。Ｓ２１１において、Ｓ２０６で通知された遷移アニメーション８０３が“ＳＬＩＤＥ＿ＩＮ＿ＲＩＧＨＴ”であることと、アニメーション再生表示済み時間１１８が“２００ｍｓ”であることに基づいて、画像データを出力部２０７に通知する。９０３は、ユーザがボタン１を押下してから４００ｍｓが経過したあとの画面イメージを示している。９０４は、ユーザがボタン１を押下してから６００ｍｓが経過したあとの画面イメージを示している。９０５は、ユーザがボタン１を押下してから８００ｍｓが経過したあとの画面イメージを示している。Ｓ２１３において、アニメーション再生表示済み時間１１８が持続時間８０５“８００ｍｓ”を超えたと判定する。Ｓ２１４において、遷移中イベント２０５を空に設定する。
【００３７】
図１２は、図７のＳ２０４が示す、戻りアニメーションを作成する処理の詳細を示したフローチャート図である。Ｓ３０１において、戻りアニメーションを作成する処理が開始されると、Ｓ３０２にて、画面生成部２０６は、アニメーションの再生を停止する。Ｓ３０３で、戻りアニメーション生成部２１０は、Ｓ２０２で取得した遷移イベントＩＤ８０１と、画面遷移定義２０４と、遷移中イベント２０５と、アニメーション再生表示済み時間１１８から、戻りアニメーションの再生開始時点を計算する。戻りアニメーション生成部２１０は、戻りアニメーションの再生開始時点をアニメーション再生表示済み時間１１８に設定する。Ｓ３０４で、戻りアニメーション生成部２１０は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて、遷移アニメーション８０３を画面生成部２０６に通知する。Ｓ３０５で、戻りアニメーション生成部２１０は、Ｓ３０３で計算した戻りアニメーションの再生開始時点を、画面生成部２０６に通知する。Ｓ３０６で、戻りアニメーション生成部２１０は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて、フレームレート８０４を画面生成部２０６に通知する。Ｓ３０７で、戻りアニメーション生成部２１０は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて、持続時間８０５を画面生成部２０６に通知すると、Ｓ３０８に進み、本シーケンスを終了する。
【００３８】
図１３は、図１２のＳ３０３が示す、戻りアニメーションの再生開始時点を計算するための計算式である。この計算式は、要するに、アニメーションのＸ％が既に再生表示済みであるとき、戻りアニメーションの再生開始時点が、戻りアニメーションの持続時間の（１００−Ｘ）％の時点になることを意味している。Ｘは図１３のアニメーション再生表示済み時間１００２を、遷移中のアニメーション持続時間１００１で割り、１００を掛けた値である。
【００３９】
１００１は、遷移中イベント２０５の遷移中イベントＩＤ７０１と画面遷移定義２０４に基づいて取得する、遷移中イベント２０５のアニメーション持続時間８０５である。１００２は、遷移中イベント２０５のアニメーション再生表示済み時間１１８である。１００３は、Ｓ２０２で取得した遷移イベントＩＤ８０１と画面遷移定義２０４に基づいて取得する、戻りアニメーション持続時間８０５である。
【００４０】
図１４は、ユーザがボタン１を押下してから４００ｍｓ後に、「戻る」ボタンを押下したとき、図７の示すフローチャートによって生成された画面イメージ図である。図１４の示す画面イメ―ジ図は、図４の示す初期画面定義２０９と、図５の示す画面デザイン定義２０８と、図８が示すイベントテーブル２０３と、図９の示す遷移中イベント２０５と、図１０の示す画面遷移定義２０４から生成されている。
【００４１】
以下、図１４を参照し、上記の処理を説明する。１１０１は、ユーザがボタン１を押下した直後の画面イメージを示している。Ｓ２０２において、再生表示中の画面ＩＤ４０１が“ＳＣＲＥＥＮ＿ＨＯＭＥ”であることから、発生イベント６０３“ＥＶ＿ＴＯ＿ＣＯＰＹ“を取得する。Ｓ２０３において、遷移中イベント２０５が空であると判定してＳ２０５に進む。Ｓ２０９において、遷移中イベント２０５に遷移中イベントＩＤ７０１”ＥＶ＿ＴＯ＿ＣＯＰＹ“を設定する。Ｓ２１０において、アニメーションの再生を開始する。１１０２は、ユーザがボタン１を押下してから４００ｍｓ後に「戻る」ボタンを押下した直後の画面イメージを示している。Ｓ２０２において、再生表示中の画面ＩＤ４０１が“ＳＣＲＥＥＮ＿ＣＯＰＹ”であることから、遷移イベントＩＤ８０１ “ＥＶ＿ＴＯ＿ＨＯＭＥ“ を取得する。Ｓ２０３において、遷移中イベント２０５の遷移イベントＩＤ８０１が”ＥＶ＿ＴＯ＿ＣＯＰＹ“であると判定して、Ｓ２０４に進む。Ｓ２０４において、戻り画面遷移定義１２１１に基づいて、遷移イベントＩＤ８０１ “ＥＶ＿ＴＯ＿ＨＯＭＥ“と遷移イベントＩＤ８０１”ＥＶ＿ＴＯ＿ＣＯＰＹ“が行きの画面遷移と戻りの画面遷移の関係であると判定する。Ｓ３０３で、遷移中イベント２０５の持続時間１００１が”８００ｍｓ“、アニメーション再生済み時間１１８が”４００ｍｓ“、戻りアニメーションの持続時間１００３が”８００ｍｓ“である。ここから図１３の式に基づいて、戻りアニメーションの再生開始時点を”４００ｍｓ“であると計算し、アニメーション再生表示済み時間１１８に設定する。Ｓ２１０において、戻りアニメーションの再生を先頭から”４００ｍｓ“の時点から開始する。
【００４２】
１１０３は、ユーザが戻るボタンを押下してから２００ｍｓが経過したあとの画面イメージを示している。アニメーション再生済み時間１１８は“６００ｍｓ”である。１１０４は、ユーザが戻るボタンを押下してから２００ｍｓが経過したあとの画面イメージを示している。アニメーション再生表示済み時間１１８は“８００ｍｓ”である。Ｓ２１３において、アニメーション再生表示済み時間１１８が持続時間８０５“８００ｍｓ”を超えたと判定する。Ｓ２１４において、遷移中イベント２０５を空に設定する。
【００４３】
以上説明したように本第１の実施形態によれば、第１画面から第２画面への画面遷移中であることを表わす第１のアニメーションの再生表示中に、ユーザから元に戻す（遷移をキャンセルする）操作があった場合、それまでの再生時間だけ第２画面から第１画面への画面遷移の第２のアニメーションが行われたものとして、第２のアニメーションの途中位置から再生制御することで、機器の反応性を高くしつつ、且つ、自然なアニメーション再生を行うことが可能となる。
【００４４】
［第２の実施形態］
上記第１の実施形態では、再生表示中の第１のアニメーションを中断し、次に再生する第２のアニメーションを、第１のアニメーションの再生表示済み時間に応じた時点から再生する方法を説明した。しかし、第１のアニメーションと第２のアニメーションに連続性がない場合もあり得る。例えば、第１のアニメーションは次の画面が右から左に登場するアニメーションであり、次に再生する第二のアニメーションは次の画面が上から下に登場するアニメーションである場合である。
【００４５】
本第２の実施形態では、第２のアニメーションを第１のアニメーションの再生表示済み時間に応じた時点から再生するか否かを判定する方法について説明する。第２の実施形態の全体構成図は、第１の実施形態と同様、図１に示されている。また、第２の実施形態におけるシステムの起動時の処理手順を示したフローチャート図は、第１の実施形態と同様、図３に示されている。
【００４６】
図１５は、第２の実施形態におけるデータフロー図である。図中、１２０１は、２０１と同様、入力部である。１２０２は、２０２と同様、制御部である。１２０３は、２０３と同様、イベントテーブルである。１２０４は、２０４と同様、画面遷移定義である。１２０５は、２０５と同様、遷移中イベントである。１２０６は、２０６と同様、画面生成部である。１２０７は、２０７と同様、出力部である。１２０８は、２０８と同様、画面デザイン定義である。１２０９は、２０９と同様、初期画面定義である。１２１０は、画面再生部２０６がアニメーションを再生している最中に、画面遷移イベントが発生したとき、遷移中イベント２０５と戻り画面遷移定義１２１１に基づいて、戻りアニメーションの再生を画面生成部２０６に指示する戻りアニメーション生成部である。１２１１は、第一の画面遷移イベントと第二の画面遷移イベントが与えられたとき、それらが行きの画面遷移と戻りの画面遷移の関係であるかを示す戻り画面遷移定義である。
【００４７】
図１６は、ユーザによる入力が行われたときの第２の実施形態の処理手順を示したフローチャート図である。本処理はＳ４０１にて開始される。Ｓ４０２では、Ｓ２０２と同様、遷移イベントＩＤ８０１を取得する。Ｓ４０３で、Ｓ２０３と同様、遷移中イベント２０５が空でないか判定する。遷移中イベント２０５が空でない場合はＳ４０４に進む。遷移中イベント２０５が空である場合はＳ４０８に進む。
【００４８】
Ｓ４０４で、戻りアニメーション生成部２１０は、戻り画面遷移定義１２１１に基づいて、遷移中イベント２０５の遷移イベントＩＤ８０１と、Ｓ２０２で取得した遷移イベントＩＤ８０１が、行きの画面遷移と戻りの画面遷移の関係であるか判定する。行きの画面遷移と戻りの画面遷移の関係である場合はＳ４０５に進む。行きの画面遷移と戻りの画面遷移の関係以外であると判定した場合はＳ４０６に進む。Ｓ４０５では、Ｓ２０４と同様、戻りアニメーションを作成する。Ｓ４０６では、制御部２０２は、遷移中イベント２０５が空になるまで待機する。
【００４９】
Ｓ４０７では、Ｓ２０５と同様、遷移アニメーションを画面生成部２０６に通知する。Ｓ４０８で、Ｓ２０６と同様、遷移アニメーションの再生開始時点を画面生成部２０６に通知する。Ｓ４０９で、Ｓ２０７と同様、フレームレート８０４を画面生成部２０６に通知する。Ｓ４１０で、Ｓ２０８と同様、持続時間８０５を画面生成部２０６に通知する。
【００５０】
Ｓ４１１では、Ｓ２０９と同様、遷移イベントＩＤ８０１を遷移中イベント２０５に設定する。Ｓ４１２では、Ｓ２１０と同様、Ｓ４１３からＳ４１４までを繰り返す処理をおこなう。Ｓ４１３で、Ｓ２１１と同様、画像データを作成して画像データの出力を出力部２０７に指示する。Ｓ４１４で、Ｓ２１２と同様、アニメーション再生表示済み時間１１８に、フレームレート８０４が示す時間を加える。Ｓ４１５で、Ｓ２１３と同様、アニメーション再生表示済み時間１１８が持続時間８０５を超えると、Ｓ４１６に進む。Ｓ４１６で、Ｓ２１４と同様、遷移中イベント２０５に現在イベントの遷移中でないことを設定すると、Ｓ４１７に進み、本シーケンスを終了する。
【００５１】
図１７は、図１６のＳ４０４で取得する戻り画面遷移定義１２１１である。図中、１３０１は、遷移イベントＩＤ８０１が“ＥＶ＿ＴＯ＿ＨＯＭＥ”である画面遷移イベントと、遷移イベントＩＤ８０１が“ＥＶ＿ＴＯ＿ＣＯＰＹ”である画面遷移イベントが、行きの画面遷移と戻りの画面遷移の関係であることを示している。
【００５２】
図１８は、ユーザがボタン１を押下してから４００ｍｓ後にホームボタンを押下したとき、図１６の示すフローチャートによって生成された画面イメージ図である。図１８の示す画面イメージ図は、図４の示す初期画面定義２０９と、図５の示す画面デザイン定義２０８と、図８が示すイベントテーブル２０３と、図９の示す遷移中イベント２０５と、図１０の示す画面遷移定義２０４から生成されている。
【００５３】
図１８において、１４０１は、ユーザがボタン１を押下した直後の画面イメージを示している。Ｓ４０２において、再生表示中の画面ＩＤ４０１が“ＳＣＲＥＥＮ＿ＨＯＭＥ”であることから、発生イベント６０３“ＥＶ＿ＴＯ＿ＣＯＰＹ“を取得する。Ｓ４０３において、遷移中イベント２０５が空であると判定してＳ４０７に進む。Ｓ４１１において、遷移中イベント２０５に遷移中イベントＩＤ７０１”ＥＶ＿ＴＯ＿ＣＯＰＹ“を設定する。Ｓ４１２において、アニメーションの再生を開始する。１４０２は、ユーザがボタン１を押下してから４００ｍｓ後にホームボタンを押下した直後の画面イメージを示している。Ｓ４０２において、遷移イベントＩＤ８０１ “ＥＶ＿ＪＵＭＰ＿ＨＯＭＥ“ を取得する。Ｓ４０３において、遷移中イベント２０５の遷移イベントＩＤ８０１が”ＥＶ＿ＴＯ＿ＣＯＰＹ“であると判定して、Ｓ４０４に進む。Ｓ２０４において、戻り画面遷移定義１２１１に基づいて、遷移イベントＩＤ８０１ “ＥＶ＿ＪＵＭＰ＿ＨＯＭＥ“と遷移イベントＩＤ８０１”ＥＶ＿ＴＯ＿ＣＯＰＹ“が行きの画面遷移と戻りの画面遷移の関係でないと判定する。Ｓ４０６で、遷移中イベント２０５が空になるまで待機する。
【００５４】
１４０３は、ユーザがボタン１を押下してから８００ｍｓ後の画面イメージを示している（第１のアニメーションの再生表示が完了したこと場合でもある）。Ｓ４１５において、アニメーション再生表示済み時間１１８が持続時間８０５“８００ｍｓ”を超えたと判定する。Ｓ４１６において、遷移中イベント２０５を空に設定する。Ｓ４０６で、遷移中イベント２０５が空になったため待機を終了する。
【００５５】
Ｓ４１１において、遷移中イベント２０５に遷移中イベントＩＤ７０１”ＥＶ＿ＪＵＭＰ＿ＨＯＭＥ “を設定する。Ｓ４１２において、アニメーションの再生を開始する。１４０４は、ユーザがボタン１を押下してから１０００ｍｓが経過したあとの画面イメージを示している。１４０５は、ユーザがボタン１を押下してから１２００ｍｓが経過したあとの画面イメージを示している。１４０６は、ユーザがボタン１を押下してから１４００ｍｓが経過したあとの画面イメージを示している。１４０７は、ユーザがボタン１を押下してから１６００ｍｓが経過したあとの画面イメージを示している。Ｓ４１５において、アニメーション再生表示済み時間１１８が持続時間８０５“８００ｍｓ”を超えたと判定する。Ｓ４１６において、遷移中イベント２０５を空に設定する。
【００５６】
［第３の実施形態］
上記各実施形態ではユーザの操作によりアニメーションが再生される例について説明したが、これに限らず、アニメーションの再生とともに音声メッセージが再生されても良い。具体的には、制御部２０２は、ユーザによる入力に基づいて音声メッセージの再生を出力装置１０８に指示することができる。制御部２０２は、画面生成部２０６がアニメーションを再生しているときにユーザによる入力が発生した場合、Ｓ３０３で計算した戻りアニメーションの再生開始時点に基づいて、音声メッセージの再生開始時点を決定することができる。あるいは、Ｓ３０３で計算した戻りアニメーションの再生開始時点に基づいて、複数の音声メッセージから再生する音声メッセージを決定することもできる。
【００５７】
［第４の実施形態］
上記各実施形態では、再生表示中の第１のアニメーションを中断し、次に再生する第２のアニメーションを第１のアニメーションの再生表示済み時間に応じた時点から再生する方法を説明した。しかし、これに限らず、再生表示中の第１のアニメーションを中断し、画面に表示されているＧＵＩ部品の一部を反転させた上で、第１のアニメーションを逆回しで再生してもよい。
【００５８】
具体的には、制御部２０２は、画面生成部２０６がアニメーションを再生しているときに画面遷移イベントが発生した場合、再生表示中のアニメーションを中断し、再生したアニメーションを中断した時点から逆回しで再生することができる。このとき制御部２０２は、画面に表示されているＧＵＩ部品の一部を反転させたうえで再生したアニメーションを逆回しで再生することもできる。
【００５９】
以上説明したように本発明に係る各実施形態によれば、アニメーションの再生表示中にユーザが機器を操作した場合に、機器の反応性とアニメーションの連続性を両立させることができる。また、機器の開発者に、第１のアニメーションの中断時点ごとに第２のアニメーションを用意させることがない。また、逆回ししたアニメーションが、前の画面に戻るアニメーションと一致しない場合でも、ユーザへ与える違和感を低減するアニメーションを再生することができる。
【００６０】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2013016082.tif 000003
【図２】
2013016082.tif 000004
【図３】
2013016082.tif 000005
【図４】
2013016082.tif 000006
【図５】
2013016082.tif 000007
【図６】
2013016082.tif 000008
【図７】
2013016082.tif 000009
【図８】
2013016082.tif 000010
【図９】
2013016082.tif 000011
【図１０】
2013016082.tif 000012
【図１１】
2013016082.tif 000013
【図１２】
2013016082.tif 000014
【図１３】
2013016082.tif 000015
【図１４】
2013016082.tif 000016
【図１５】
2013016082.tif 000017
【図１６】
2013016082.tif 000018
【図１７】
2013016082.tif 000019
【図１９】
2013016082.tif 000020
【図２０】
2013016082.tif 000021
【図２１】
2013016082.tif 000022
【図１８】
2013016082.tif 000023