JP2006058985A - 表示制御装置および方法、並びにプログラム - Google Patents

表示制御装置および方法、並びにプログラム Download PDF

Info

Publication number
JP2006058985A
JP2006058985A JP2004237904A JP2004237904A JP2006058985A JP 2006058985 A JP2006058985 A JP 2006058985A JP 2004237904 A JP2004237904 A JP 2004237904A JP 2004237904 A JP2004237904 A JP 2004237904A JP 2006058985 A JP2006058985 A JP 2006058985A
Authority
JP
Japan
Prior art keywords
state
display
final
update
display state
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.)
Pending
Application number
JP2004237904A
Other languages
English (en)
Other versions
JP2006058985A5 (ja
Inventor
Yuji Ishimura
悠二 石村
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2004237904A priority Critical patent/JP2006058985A/ja
Priority to US11/204,034 priority patent/US20060038744A1/en
Publication of JP2006058985A publication Critical patent/JP2006058985A/ja
Publication of JP2006058985A5 publication Critical patent/JP2006058985A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Abstract

【課題】オブジェクトの表示状態の遷移を効率的に行わせることができるようにする。
【解決手段】時刻t1の状態から時刻t2の状態にオブジェクトAの表示状態を遷移させる場合、まず、最終的な遷移目標とする、図2の右側の表示状態(最終状態)を表す属性の値(x=100,y=100、rgba=(255,255,255,255)、scale=10.0)が設定される。最終状態の各属性の値が設定された後、最終状態の各属性の値と、現在の表示状態(現在状態)の各属性の値(x=0,y=0,rgba=(0,0,0,0),scale=1.0)の差が求められ、その差を、所定の周期で、単位時間毎に順次埋めていくように表示の更新が行われる。本発明は、ユーザ操作などに応じてオブジェクトの表示状態を遷移させる情報処理装置に適用することができる。
【選択図】図2

Description

本発明は、表示制御装置および方法、並びにプログラムに関し、特に、オブジェクトの表示状態の遷移を効率的に行わせることができるようにする表示制御装置および方法、並びにプログラムに関する。
ソフトウェアによるGUI(Graphical User Interface)において、あるオブジェクトを現在の表示状態から所望の表示状態に滑らかに遷移させるためのアニメーションの手法として、その所望の表示状態に至るまでの各アニメーションを時系列順に求めた上でそれらを比較し、さらに、各アニメーションの繋ぎ目を滑らかにするための補間アニメーションを必要に応じて生成し、各アニメーションと補間アニメーションを合成することによって実現する手法がある(例えば、特許文献1)。
特開2002−109565号公報
しかしながら、このようなアニメーション手法の場合、アニメーションの表示を開始させる前に、所望の表示状態に至るまでの各アニメーションを求める必要があり、また、補間アニメーションを生成する必要があることから、アニメーションを実現するためのプログラムを作成するのに手間がかかり、実装コストが増大してしまうという課題があった。
また、実際にそれをコンピュータに実行させる場合においても、各アニメーションを求めるためと、補間アニメーションを生成するための計算が必要になることから、実行時の計算コストも増大してしまうという課題もあった。
さらに、それらの計算が行われ、アニメーションが一度開始された後は、仮に、所望の表示状態までの遷移過程においてユーザにより他の操作が行われ、そのオブジェクトを、いま、遷移させようとしている目標の表示状態と異なる表示状態に遷移させる必要が生じた場合であっても、先に目標としている表示状態にオブジェクトが遷移するまでは、ユーザ操作に対応した表示状態に遷移させることができないという課題があった。
すなわち、複数のアイコンが並んでおり、そのうちの第1のアイコン上にカーソルが表示されている状態において、例えば、カーソルを左に移動させるボタンが1回だけ操作されたことから、1つ左隣の第2のアイコンの上にカーソルが表示されるように表示状態を遷移させている間に、カーソルを右に移動させるボタンが1回だけ操作された場合、一度、その、左隣の第2のアイコンの上に移動されてから、1つ右隣の第1のアイコンの上に移動されるようにカーソルのアニメーションが行われる。これにより、ユーザ操作と、そのユーザ操作に対応したカーソル表示との間に僅かではあるが時間差が生じ、操作感が損なわれてしまうことになる。
本発明はこのような状況に鑑みてなされたものであり、例えば、快適な操作感を確保しつつ、オブジェクトの表示状態の遷移を効率的に行わせることができるようにするものである。
本発明の表示制御装置は、対象とするオブジェクトの表示を所定の周期で更新させる表示制御装置であって、オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定手段と、設定手段により設定された最終状態と、オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出手段と、算出手段により算出された更新量に基づいて、オブジェクトの表示状態を更新させる更新手段とを備えることを特徴とする。
設定手段は、位置、色、回転角、および、大きさのうちの少なくともいずれかにより表される表示状態を最終状態として設定するようにすることができる。
設定手段は、ユーザ操作に応じて表示状態の更新対象となるオブジェクト毎に最終状態を設定するようにすることができる。
オブジェクトの表示状態の更新が前記更新手段により開始された後に、他の最終状態を目標とするユーザ操作が行われた場合、設定手段は、そのユーザ操作に応じて、他の最終状態を、新たに目標とする前記オブジェクトの表示状態として設定し、算出手段は、ユーザ操作が行われたときのオブジェクトの表示状態を現在状態として、他の最終状態との差から更新量を算出するようにすることができる。
本発明の表示制御方法は、対象とするオブジェクトの表示を所定の周期で更新させる表示制御装置の表示制御方法であって、オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定ステップと、設定ステップの処理により設定された最終状態と、オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出ステップと、算出ステップの処理により算出された更新量に基づいて、オブジェクトの表示状態を更新させる更新ステップとを含むことを特徴とする。
本発明のプログラムは、対象とするオブジェクトの表示を所定の周期で更新させる処理をコンピュータに実行させるプログラムであって、オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定ステップと、設定ステップの処理により設定された最終状態と、オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出ステップと、算出ステップの処理により算出された更新量に基づいて、オブジェクトの表示状態を更新させる更新ステップとを含むことを特徴とする。
本発明の表示制御装置および方法、並びにプログラムにおいては、オブジェクトの最終的な目標とする表示状態である最終状態が設定され、設定された最終状態と、オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量が算出される。また、算出された更新量に基づいて、オブジェクトの表示状態が更新される。
本発明によれば、オブジェクトの表示状態の遷移を効率的に行わせることができる。
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする実施の形態が本明細書に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
さらに、この記載は、本明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
請求項1に記載の表示制御装置は、対象とするオブジェクトの表示を所定の周期で更新させる表示制御装置であって、前記オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定手段(例えば、図9のステップS16の処理を実行する図3のアプリケーション31)と、前記設定手段により設定された前記最終状態と、前記オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出手段(例えば、図10のステップS34の処理を実行する図3の更新量算出部42)と、前記算出手段により算出された前記更新量に基づいて、前記オブジェクトの表示状態を更新させる更新手段(例えば、図10のステップS35の処理を実行する図3の状態更新要求部43)とを備えることを特徴とする。
請求項2に記載の表示制御装置は、前記設定手段は、位置(例えば、図4の属性値xN,yN)、色(例えば、図4の属性値rgbaN)、回転角、および、大きさ(例えば、図4の属性値scaleN)のうちの少なくともいずれかにより表される表示状態を前記最終状態として設定することを特徴とする。
請求項5に記載の表示制御方法は、対象とするオブジェクトの表示を所定の周期で更新させる表示制御装置の表示制御方法であって、オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定ステップ(例えば、図9のステップS16)と、前記設定ステップの処理により設定された前記最終状態と、前記オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出ステップ(例えば、図10のステップS34)と、前記算出ステップの処理により算出された前記更新量に基づいて、前記オブジェクトの表示状態を更新させる更新ステップ(例えば、図10のステップS35)とを含むことを特徴とする。
請求項6に記載のプログラムにおいても、各ステップが対応する実施の形態(但し一例)は、請求項5に記載の表示制御方法と同様である。
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明を適用した表示制御装置1の構成例を示すブロック図である。
CPU(Central Processing Unit)11は、ROM(Read Only Memory)12に記憶されているプログラム、または、記憶部18からRAM(Random Access Memory)13にロードされたプログラムに従って各種の処理を実行する。RAM13にはまた、CPU11が各種の処理を実行する上において必要なデータなどが適宜記憶される。
CPU11、ROM12、およびRAM13は、バス14を介して相互に接続される。このバス14にはまた、入出力インタフェース15も接続される。
入出力インタフェース15には、キーボード、マウス、または、図示せぬリモートコントローラからの赤外線を受光する受光部などよりなる入力部16、LCD(Liquid Crystal Display)などよりなる出力部17、ハードディスクなどより構成される記憶部18、ネットワークを介しての通信処理を行う通信部19が接続されている。
入出力インタフェース15にはまた、必要に応じてドライブ20が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブルメディア21が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部18にインストールされる。
このような構成を有する表示制御装置1においては、例えば、図2に示すようなアニメーションが行われる。
図2は、出力部17に表示される、時刻t1の画面(図2の左側)と時刻t2の画面(図2の右側)の例を示す図である。ここでは、長方形のオブジェクトA(objectA)の表示状態の遷移について説明する。
時刻t1において、オブジェクトAの画面上の位置はx=0,y=0で表され、rgba(赤、緑、青、α値(透過度))の各値は0で表されている。また、オブジェクトAの大きさは1.0で表されている。
この状態において、例えば、画面上の位置がx=100,y=100で表され、rgbaの各値が255で表され、また、大きさが10.0で表される時刻t2の表示状態にオブジェクトAの表示状態を遷移させる場合(画面表示を変更させる場合)、表示制御装置1においては、まず、x=100,y=100、rgba=(255,255,255,255)、scale=10.0が、最終的な遷移目標とする表示状態(以下、最終状態という)を表す属性の値として設定される。
また、このように最終状態の各属性の値が設定された後、その最終状態の各属性の値と、現在の表示状態(以下、現在状態という)の各属性の値の差が求められ、その差を、所定の周期で、単位時間毎に徐々に埋めていくように表示の更新が行われる。
例えば、図2の時刻t1の状態から時刻t2の状態に10単位時間で表示状態を遷移させる場合、それぞれの表示の更新が等間隔で行われるものとすると、1単位時間あたりの各属性の値は、属性xについては、(100−0)/10=10ずつ更新され、属性yについては、(100−0)/10=10ずつ更新される。また、属性rgbaの各値については、(255−0)/10=25.5ずつ(実際には、整数の値ずつ)更新され、属性scaleは、(10.0−1.0)/10=0.9ずつ更新される。
従って、時刻t1から1単位時間経過後のオブジェクトAの表示状態は、例えば、x=10,y=10,rgba=(26,26,26,26),scale=0.9で表される。また、時刻t1から2単位時間経過後のオブジェクトAの表示状態は、例えば、x=20,y=20,rgba=(52,52,52,52),scale=1.8で表される。以下、同様に、単位時間が経過する毎に、最終状態との差を徐々に埋めるように、オブジェクトAの表示状態が更新される。
すなわち、オブジェクトの現在状態の属性値をVt、最終状態の属性値をVg、1回の表示状態更新後のオブジェクトの属性値をVt+1で表すとすると、属性値Vt+1は下式で表される。
t+1 = Vt+k(Vg−Vt
ここで、係数kは、0以上、1未満の所定の値であり、上述した例の場合、係数kの値は1/10=0.1(「10」は最終状態に到達するまでの単位時間の数)となる。
なお、係数kの値は、最終状態に到達するまで固定の値とすることも可能であるが、表示状態の1回の更新毎に変更することによって、例えば、表示状態の遷移の開始直後には1回の更新毎の間隔(更新前と更新後の属性値の差)を広くとり、最終状態に近づくにつれ、1回の更新毎の間隔を狭くしていくような、いわゆるファストインスローアウトのような表示を実現させることも可能である。この場合、係数kには、表示状態の遷移の開始直後には比較的大きな値が設定され、最終状態に近づくにつれ、次第に小さな値が設定される。
このように、表示制御装置1においては、あるオブジェクトの表示状態を遷移させるために、表示状態の遷移対象とするオブジェクトの最終状態に至るまでの各表示状態(アニメーション)を求める計算や、滑らかな遷移を実現するための補間する表示状態を生成するための計算は行われず、単に、現在状態と最終状態の差を所定の周期で徐々に埋めていくだけであるから、そのような各種の計算が必要になる場合に較べて計算コストを減らすことができる。また、表示状態の遷移が上式のような簡単な式で表されるから、実装コストも減らすことができる。
このような表示状態の遷移は、例えば、カーソルの移動や、所定の数だけ並んで表示されているアイコン全体が、その色を変えながらまとめて移動するような、1つのオブジェクトに注目したときに形状の複雑な変化を伴わない表示状態の遷移に特に有効である。
表示制御装置1の動作についてはフローチャートを参照して後述する。
図3は、表示制御装置1の機能構成例を示すブロック図である。図3の構成のうちの少なくとも一部は、図1のCPU11により所定のプログラムが実行されることによって実現される。
アプリケーション31は、入力部16からの入力を監視し、出力部17に表示されているオブジェクトの表示状態を遷移させる必要があるイベントがユーザ操作などに応じて発生したか否かを判断する。そのようなイベントが発生したと判断した場合、アプリケーション31は、ユーザ操作に対応したオブジェクトの最終状態を判断し、最終状態の登録をアニメーション駆動部32に要求する。
例えば、複数のアイコンが並んで表示されており、そのうちの1つのアイコンの上にカーソルが表示されている状態において、1つ隣のアイコンにカーソルを移動させるユーザ操作が行われた場合、アプリケーション31は、イベントが発生したと判断し、さらに、1つ隣のアイコンの上に表示されている状態をカーソルの最終状態として判断する。
アプリケーション31から最終状態の登録が要求されることに応じて、アニメーション駆動部32においては、アニメーション駆動部32から最終状態保持部33に対して最終状態保持器の生成、登録が要求される。ここで、最終状態保持器は、オブジェクトの最終状態を保持するためのものであり、最終状態保持部33によりリストに登録される。
また、アプリケーション31は、最終状態保持器が最終状態保持部33により生成され、リストに登録された場合、最終状態保持部33に対して、最終状態を表す各属性の値を最終状態保持器に設定することを要求する。
アニメーション駆動部32は、アプリケーション31から最終状態の登録が要求されたとき、最終状態保持器の生成、登録を最終状態保持部33に要求する。また、アニメーション駆動部32は、オブジェクトの表示状態の更新要求がタイマ34から供給される毎に、最終状態保持部33に表示状態の更新を要求する。
最終状態保持部33は、保持部41、更新量算出部42、および状態更新要求部43から構成される。
保持部41は、アプリケーション31により設定された最終状態を最終状態保持器を用いて保持する。
図4は、保持部41により保持される最終状態をリスト状に表した図である。
保持部41は、アニメーション駆動部32から最終状態保持器の生成、登録が要求されることに応じて、1つの最終状態保持器を生成し、それをリストに登録する。各最終状態保持器には、アプリケーション31により設定された、最終状態を表す各属性の値が設定される。
図4の例においては、表示状態の遷移対象とするオブジェクト(使役対象)である使役対象1乃至Nについて、それぞれの最終状態である最終状態1乃至Nが登録されている。また、それぞれの最終状態を表す各属性の値([]内の値)も登録されている。
保持部41は、例えば、このようなリストを用いてそれぞれの使役対象の最終状態を保持し、管理する。ある使役対象について、登録されている最終状態までその表示状態が遷移された場合、保持部41は、その使役対象に関する最終状態の登録をリストから解除し、破棄する。
更新量算出部42は、アニメーション駆動部32から表示状態の更新が要求されたとき、それぞれの使役対象について、保持部41に保持されている最終状態と、現在状態との差を求め、求めた差から、今回の表示状態の更新の要求(今回の更新タイミング)に応じて、更新させる表示状態の更新量(現在状態から最終状態に近づくような次の表示状態までの量)を算出する。更新量算出部42により算出された更新量は状態更新要求部43に通知される。更新量算出部42による更新量の算出は、例えば、上述した数式に基づいて行われる。
状態更新要求部43は、更新量算出部42により算出された更新量の分だけ、現在状態から次の表示状態に使役対象の表示状態を更新することをGUIコンポーネント35に対して要求する。
図5は、このような保持部41、更新量算出部42、および状態更新要求部43からなる最終状態保持部33の状態遷移の例を示す図である。
アニメーション駆動部32からの要求に応じて最終状態保持器が生成され、リストに登録されたとき、最終状態保持部33(保持部41)においては、アプリケーション31による設定に応じて、各属性の最終状態値(最終状態を表す各属性の値)が設定される(State1)。
State1において、アニメーション駆動部32により表示状態の更新が要求されたとき、使役対象の表示状態の更新中の状態になる(State2)。基本的に、属性値が最終状態値に到達するまで、この状態は維持される。
State2においては、表示状態の更新が要求される毎に、表示状態の更新が繰り返される。また、属性値が最終状態値に到達する前に、新しい最終状態の設定が要求されたとき、最終状態保持部33の状態はState1に戻り、新たに要求された最終状態の属性値が設定される。
このように、属性値が最終状態値に到達する前に、最終状態の設定が新たに要求されたとき、それまで設定されていた最終状態を目標とする表示状態の更新は終了され、それ以降、新たに設定された最終状態を目標とする表示状態の更新が開始される。
このことから、一度、ある最終状態に向けて表示状態の更新が開始された場合であっても、その後にユーザにより他の操作が行われ、それまでの表示状態と異なる表示状態を目標として使役対象の表示状態を更新させる必要が生じたときには、その、新たに設定された表示状態を目標として使役対象の表示状態が更新されることになる。
例えば、複数のアイコンが並んでおり、そのうちの第1のアイコン上にカーソルが表示されている状態において、カーソルを左に移動させるボタンが1回だけ操作されたことから、1つ左隣の第2のアイコンの上にカーソルが表示されるように表示状態を更新させている間に、カーソルを右に移動させるボタンが1回だけ操作された場合、第1のアイコン上から第2のアイコン上へのカーソルの移動は、カーソルを右に移動させるボタンが操作された時点で終了され、そこから、後から行われたユーザ操作に応じて、第1のアイコンの上にカーソルが表示されるように表示状態の更新が行われることになる。
これにより、ユーザ操作と、それに対応するカーソルの表示に時間差が生じ、操作感が損なわれてしまうといったことを防止することができる。
このようにして表示の更新が行われるState2においては、表示状態の更新を中止することが要求された場合、最終状態の登録が解除され、リストから破棄される。全ての属性の値が最終状態値に到達した場合、最終状態保持部33の状態はState2からState3に遷移し、その後、最終状態の登録が解除され、リストから破棄される。
図3の説明に戻り、タイマ34は、表示状態の更新要求を所定の周期でアニメーション駆動部32に出力する。なお、表示状態の更新のトリガとなるものを所定の周期でアニメーション駆動部32に与えるものであれば、表示状態の更新要求を供給するタイマ34に替えて、どのようなものを設けるようにすることも可能である。
GUIコンポーネント35は、状態更新要求部43からの要求に応じて、所定の更新量の分だけ更新された表示状態になるように使役対象の描画をレンダリングシステム36に要求する。
レンダリングシステム36は、GUIコンポーネント35からの要求に応じて使役対象の描画を行う。
図6および図7は、図3の各ブロック間の信号の流れ、および、各ブロックによる処理の例を示す図である。図6は、イベントが発生してから最終状態が設定されるまでの信号の流れ、および、処理の例を示し、図7は、最終状態が設定されてから実際に描画が行われるまでの信号の流れ、および、処理の例を示す。
図6において、アプリケーション31は、入力部16からイベントが入力されてきたとき(矢印1)、最終状態を判断し(ループ2)、最終状態の登録、すなわち、最終状態保持器の取得をアニメーション駆動部32に要求する(矢印3)。
アニメーション駆動部32は、アプリケーション31から最終状態の登録が要求されたとき、最終状態保持器の生成、リストへの登録を最終状態保持部33に要求する(矢印4)。
アプリケーション31は、最終状態保持器が最終状態保持部33により生成され、リストに登録された場合、その最終状態保持器に、最終状態を表す各属性の値を設定する(矢印5)。
以上の各ブロック間の信号の流れ、および、各ブロックによる処理により、最終状態の設定が行われる。
一方、図7において、アニメーション駆動部32は、所定の周期で供給されてくるタイマ34からの表示状態の更新要求(矢印1)に応じて、最終状態保持部33に対して表示状態の更新を要求する(矢印2)。
最終状態保持部33の更新量算出部42は、アニメーション駆動部32から表示状態の更新が要求されたとき、GUIコンポーネント35に問い合わせることによって、表示状態を更新させることが必要になったそれぞれの使役対象の現在状態を取得する(矢印3)。
また、更新量算出部42は、取得した現在状態と、保持部41に保持されている最終状態との差を求め、求めた差から、今回の更新量を算出する(ループ4)。
状態更新要求部43は、更新量算出部42により算出された更新量の分だけ、現在状態から次の表示状態に使役対象の表示状態を更新することをGUIコンポーネント35に要求する(矢印5)。
GUIコンポーネント35は、状態更新要求部43からの要求に応じて、所定の更新量の分だけ更新された表示状態になるように、使役対象の描画をレンダリングシステム36に要求する(矢印6)。この要求に応じて、レンダリングシステム36により使役対象の描画が行われる(矢印7)。
次に、フローチャートを参照して、表示制御装置1の動作について説明する。
始めに、図8のフローチャートを参照して、表示制御装置1の表示制御処理について説明する。
ステップS1において、最終状態設定処理が行われる。これにより、使役対象の最終状態が最終状態保持部33に設定される。最終状態設定処理の詳細については図9のフローチャートを参照して後述する。この処理は、基本的には、図6を参照して説明したものと同様である。
最終状態が設定された後、ステップS2において、状態更新処理が行われる。これにより、タイマ34により状態更新要求が発生される毎に、現在状態と最終状態の差を徐々に埋めるように使役対象の表示状態が更新される。例えば、使役対象の表示状態が最終状態に達したとき、状態更新処理は終了され、図8の表示制御処理は終了される。
ステップS2において行われる状態更新処理の詳細については図10のフローチャートを参照して後述する。この処理は、基本的には、図7を参照して説明したものと同様である。
ここで、図9のフローチャートを参照して、図8のステップS1において行われる最終状態設定処理について説明する。
ステップS11において、アプリケーション31は、入力部16からイベントが入力されてきたか否かを判定し、イベントが入力されてきたと判定するまで待機する。
アプリケーション31は、ステップS11において、イベントが入力されてきたと判定した場合、ステップS12に進み、使役対象の最終状態を判断する。
ステップS13において、アプリケーション31は、最終状態を設定するための最終状態保持器の取得をアニメーション駆動部32に要求する。この要求を受けたアニメーション駆動部32から最終状態保持部33に対して、最終状態保持器の生成、リストへの登録が要求される。
ステップS14において、最終状態保持部33の保持部41は、いま選択されている最終状態(イベントが発生することに応じて表示状態を更新することが必要になった使役対象の最終状態)の最終状態保持器が既にリストに登録されているか否かを判定し、登録されていないと判定した場合、ステップS15に進む。
ステップS15において、保持部41は、最終状態保持器を生成し、それをリストに登録する。
アプリケーション31は、ステップS16において、最終状態を表す各属性の値を最終状態保持器に設定する。
最終状態を表す各属性の値が設定された後、または、ステップS14において、最終状態保持器が既にリストに登録されていると判定された場合、処理は図8のステップS2に進む。
次に、図10のフローチャートを参照して、図8のステップS2において行われる状態更新処理について説明する。
ステップS31において、アニメーション駆動部32は、タイマ34からの表示状態の更新要求があったか否かを判定し、更新要求があったと判定するまで待機する。
アニメーション駆動部32は、ステップS31において、更新要求があったと判定した場合、ステップS32に進み、表示状態の更新を最終状態保持部33に要求する。
最終状態保持部33の更新量算出部42は、ステップS33において、GUIコンポーネント35に問い合わせることによって、それぞれの使役対象の現在状態を取得し、ステップS34に進み、ステップS33で取得した現在状態と、保持部41に保持されている最終状態との差を求め、求めた差から、今回の更新量を算出する。更新量算出部42により算出された更新量は状態更新要求部43に通知される。
ステップS35において、状態更新要求部43は、更新量算出部42により算出された更新量の分だけ、現在状態から次の表示状態に使役対象の表示状態を更新することをGUIコンポーネント35に要求する。
ステップS36において、GUIコンポーネント35は、所定の更新量の分だけ更新された表示状態になるように使役対象の描画をレンダリングシステム36に要求する。
GUIコンポーネント35からの要求に応じて、レンダリングシステム36は、ステップS37において、使役対象の描画を行う。
状態更新要求部43は、ステップS38において、使役対象の表示状態が最終状態に到達したか否かを判定し、最終状態に到達していないと判定した場合、ステップS31に戻り、それ以降の処理を繰り返し実行する。すなわち、次の状態更新要求がタイマ34からアニメーション駆動部32に供給されることに応じて、最終状態に近づくように使役対象の表示状態が順次更新される。
一方、ステップS38において、状態更新要求部43は、使役対象の表示状態が最終状態に到達したと判定した場合、ステップS39に進み、保持部41に対して、最終状態を保持していた最終状態保持器の登録の解除と、リストからの破棄を要求する。その後、処理は図8のステップS2に戻り、図8の表示制御処理は終了される。
以上の処理により、それぞれの使役対象の表示状態が最終状態に達し、ユーザ操作に応じた表示が実現される。
以上においては、本発明をカーソル表示に適用した場合について主に説明したが、当然、本発明は、カーソル表示以外の、各種のオブジェクトの表示にも適用することが可能である。
また、以上においては、最終状態などの各表示状態は、位置、色、大きさの属性値により表されるものとしたが、これ以外にも、オブジェクトの表示状態が回転しながら更新される場合、その回転角の属性値によっても表示状態が表されるようにしてもよいし、回転角の属性値以外の他の各種の属性値により表示状態が表されるようにしてもよい。
なお、本明細書において、各ステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
本発明を適用した表示制御装置の構成例を示すブロック図である。 アニメーションの例を示す図である。 表示制御装置の機能構成例を示すブロック図である。 最終状態のリストの例を示す図である。 最終状態保持部の状態遷移の例を示す図である。 図3の各ブロック間の信号の流れ、および、各ブロックによる処理の例を示す図である。 図3の各ブロック間の信号の流れ、および、各ブロックによる処理の他の例を示す図である。 表示制御装置の表示制御処理について説明するフローチャートである。 図8のステップS1において行われる最終状態設定処理について説明するフローチャートである。 図8のステップS2において行われる状態更新処理について説明するフローチャートである。
符号の説明
1 表示制御装置, 31 アプリケーション, 32 アニメーション駆動部, 33 最終状態保持部, 34 タイマ, 35 GUIコンポーネント, 36 レンダリングシステム

Claims (6)

  1. 対象とするオブジェクトの表示を所定の周期で更新させる表示制御装置において、
    前記オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定手段と、
    前記設定手段により設定された前記最終状態と、前記オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出手段と、
    前記算出手段により算出された前記更新量に基づいて、前記オブジェクトの表示状態を更新させる更新手段と
    を備えることを特徴とする表示制御装置。
  2. 前記設定手段は、位置、色、回転角、および、大きさのうちの少なくともいずれかにより表される表示状態を前記最終状態として設定する
    ことを特徴とする請求項1に記載の表示制御装置。
  3. 前記設定手段は、ユーザ操作に応じて表示状態の更新対象となるオブジェクト毎に前記最終状態を設定する
    ことを特徴とする請求項1に記載の表示制御装置。
  4. 前記オブジェクトの表示状態の更新が前記更新手段により開始された後に、他の最終状態を目標とするユーザ操作が行われた場合、前記設定手段は、そのユーザ操作に応じて、前記他の最終状態を、新たに目標とする前記オブジェクトの表示状態として設定し、
    前記算出手段は、前記ユーザ操作が行われたときの前記オブジェクトの表示状態を現在状態として、前記他の最終状態との差から前記更新量を算出する
    ことを特徴とする請求項1に記載の表示制御装置。
  5. 対象とするオブジェクトの表示を所定の周期で更新させる表示制御装置の表示制御方法において、
    前記オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定ステップと、
    前記設定ステップの処理により設定された前記最終状態と、前記オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出ステップと、
    前記算出ステップの処理により算出された前記更新量に基づいて、前記オブジェクトの表示状態を更新させる更新ステップと
    を含むことを特徴とする表示制御方法。
  6. 対象とするオブジェクトの表示を所定の周期で更新させる処理をコンピュータに実行させるプログラムにおいて、
    前記オブジェクトの最終的な目標とする表示状態である最終状態を設定する設定ステップと、
    前記設定ステップの処理により設定された前記最終状態と、前記オブジェクトの現在の表示状態である現在状態との差から、次の更新タイミングにおける表示状態の更新量を算出する算出ステップと、
    前記算出ステップの処理により算出された前記更新量に基づいて、前記オブジェクトの表示状態を更新させる更新ステップと
    を含むことを特徴とするプログラム。
JP2004237904A 2004-08-18 2004-08-18 表示制御装置および方法、並びにプログラム Pending JP2006058985A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004237904A JP2006058985A (ja) 2004-08-18 2004-08-18 表示制御装置および方法、並びにプログラム
US11/204,034 US20060038744A1 (en) 2004-08-18 2005-08-16 Display control apparatus and method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004237904A JP2006058985A (ja) 2004-08-18 2004-08-18 表示制御装置および方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2006058985A true JP2006058985A (ja) 2006-03-02
JP2006058985A5 JP2006058985A5 (ja) 2006-04-13

Family

ID=35909150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004237904A Pending JP2006058985A (ja) 2004-08-18 2004-08-18 表示制御装置および方法、並びにプログラム

Country Status (2)

Country Link
US (1) US20060038744A1 (ja)
JP (1) JP2006058985A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090315896A1 (en) * 2008-06-24 2009-12-24 Microsoft Corporation Animation platform
US20140250423A1 (en) * 2009-01-08 2014-09-04 Adobe Systems Incorporated Simulating Runtime Interactivity And Other Changes Within A Computer Content Creation Environment
KR20100122383A (ko) * 2009-05-12 2010-11-22 삼성전자주식회사 좌표 예측을 통한 이미지의 출력 속도 향상 방법 및 장치
CN104978118B (zh) 2014-04-22 2018-09-07 腾讯科技(深圳)有限公司 一种用户图形界面显示方法、装置及终端设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261041A (en) * 1990-12-28 1993-11-09 Apple Computer, Inc. Computer controlled animation system based on definitional animated objects and methods of manipulating same
US5613048A (en) * 1993-08-03 1997-03-18 Apple Computer, Inc. Three-dimensional image synthesis using view interpolation
JPH0816820A (ja) * 1994-04-25 1996-01-19 Fujitsu Ltd 3次元アニメーション作成装置
JPH09326990A (ja) * 1996-06-07 1997-12-16 Matsushita Electric Ind Co Ltd 映像編集装置
CN1234100C (zh) * 1996-08-26 2005-12-28 富士通株式会社 建立图形的设备和方法
US6111590A (en) * 1997-07-18 2000-08-29 International Business Machines Corp. Method and system for a true scale motion path editor to create motion paths as independent entities
US6064387A (en) * 1998-01-23 2000-05-16 Dell, Usa, L.P. Animated cursor and icon for computers
US6449019B1 (en) * 2000-04-07 2002-09-10 Avid Technology, Inc. Real-time key frame effects using tracking information
US6957392B2 (en) * 2002-01-16 2005-10-18 Laszlo Systems, Inc. Interface engine providing a continuous user interface

Also Published As

Publication number Publication date
US20060038744A1 (en) 2006-02-23

Similar Documents

Publication Publication Date Title
TWI588732B (zh) 用於經由瓦來呈現應用程式的變化的計算裝置及電腦實施方法
KR101221169B1 (ko) 가상 세계에서의 액션 속도 수정
JP5750103B2 (ja) アニメーション制御装置、アニメーション制御方法およびアニメーション制御プログラム
JP2011118479A5 (ja)
EP3391212B1 (en) Controlling operation of a gpu
KR20100108417A (ko) 다중 모니터 컴퓨터 시스템에서의 어플리케이션 관리 방법 및 이 방법을 채용한 다중 모니터 컴퓨터 시스템
US9046934B2 (en) Controlling acceleration of mouse cursor movement based on screen segments and image features
EP2754037A1 (en) Progressively indicating new content in an application-selectable user interface
JP2009272781A (ja) フレームレート変換装置、方法及びプログラム
JP2014038576A (ja) 多重プロセシングを用いたレンダリング処理装置及び方法
JP2021101574A (ja) ブロックチェーンにおけるトランザクション要求処理方法、装置、設備、記憶媒体、及びプログラム
JP2007114822A (ja) 自動レイアウト方法および装置
CN112843680A (zh) 画面显示方法、装置、终端设备及存储介质
JP2006058985A (ja) 表示制御装置および方法、並びにプログラム
JP2013162221A (ja) 情報処理装置、情報処理方法、情報処理プログラム
EP3418873A1 (en) Information processing device, information processing method, and program
JP2011158953A (ja) サーバ装置及び情報処理方法
JP6097256B2 (ja) 複数の画像間の画面表示をスムーズに移行させるコンピュータ・プログラム
JP2004078414A (ja) 複数台の表示装置による多画面表示方法、同方法用プログラム及び記録媒体
KR102666741B1 (ko) 전자 디바이스들에 대한 렌더링
WO2024104116A1 (zh) 效果处理方法和电子设备
CN113448579B (zh) 一种在可视化界面中实现边动效的方法及装置
CN108427726A (zh) 一种刷新方法和装置
JP2006072351A (ja) 画像データ転送用転送矩形を連続的にトレースするシステムおよび方法
JP2018200573A (ja) 情報処理装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080617

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080730

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080916