JP5866085B1 - ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法 - Google Patents

ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法 Download PDF

Info

Publication number
JP5866085B1
JP5866085B1 JP2015551888A JP2015551888A JP5866085B1 JP 5866085 B1 JP5866085 B1 JP 5866085B1 JP 2015551888 A JP2015551888 A JP 2015551888A JP 2015551888 A JP2015551888 A JP 2015551888A JP 5866085 B1 JP5866085 B1 JP 5866085B1
Authority
JP
Japan
Prior art keywords
component
unit
excluded
cache
screen
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.)
Active
Application number
JP2015551888A
Other languages
English (en)
Other versions
JPWO2016185551A1 (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
Application granted granted Critical
Publication of JP5866085B1 publication Critical patent/JP5866085B1/ja
Publication of JPWO2016185551A1 publication Critical patent/JPWO2016185551A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • B60K35/10
    • 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]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • B60K2360/11

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

UI(ユーザインタフェース)装置において、除外部品抽出部105は、画面を構成する複数のUI部品のうちのキャッシュ対象部品群から、不確定部品または動的変化部品を除外部品として取り除く。キャッシュ情報生成部106は、除外部品が取り除かれたキャッシュ対象部品群の描画情報を生成して、描画情報キャッシュ部107に登録する。描画情報キャッシュ部107に登録されている除外部品が取り除かれたキャッシュ対象部品群の描画情報を用いた画面の描画が実施される際には、除外部品合成部108が、その描画情報に、除外部品に対応する描画情報を合成する。

Description

この発明は、ユーザインタフェース装置に関するものである。
近年、情報機器が提供する機能の高度化および複雑化に伴い、情報機器の操作手段を提供するユーザインタフェース(UI)の複雑化が進んでいる。その一方で、消費者は、情報機器に表示される画面の品質に、より高い期待を寄せるようになっている。その結果、情報機器のハードウェア性能の目覚ましい進歩にもかかわらず、画面の描画能力が不足するという事態が生じている。
情報機器のユーザインタフェース装置(UI装置)としては、画像部品やテキスト部品など、複数のUI部品から構成される画面群を選択的に切り替えて表示させるものがある。そのようなUI装置では、ユーザに対して快適な応答性を確保するために、一度描画処理を実施した画面または予め構築した画面の描画情報を高速な記憶装置にキャッシュしておき、その後、それと同じ画面を表示するときは、キャッシュされている描画情報を使用することで、画面の描画を高速化している。例えば、下記の特許文献1には、遷移する可能性のある画面の描画情報を予めキャッシュしておくことで、実際に画面を遷移させるときの画面描画を高速化する技術が開示されている。
また、画面を複数のUI部品で構成するUI装置では、画面の設計およびUI部品の管理を容易にするために、一般にシーングラフと呼ばれる、画面を構成するUI部品をツリー構造で階層化したモデルが使用される。また、シーングラフの一部を構成するサブグラフの描画内容を統合した1つのUI部品(統合UI部品)を作成することで、シーングラフの構造を簡略化すると共に、統合UI部品の描画情報をキャッシュすることで、画面描画のさらなる高速化を実現する技法が知られている。例えば、下記の特許文献2には、シーングラフに対して、各UI部品が保持するパラメータ値などの描画情報をリスト化し、内容の異なる複数の描画情報を任意のUI部品としてキャッシュする技術が開示されている。さらに、特許文献2では、任意のサブグラフの内容を表すビットマップ(画像)をパラメータ値の1つとして保持することで、描画速度の高速化を図っている。
特開2002−175142号公報 特開2003−162733号公報
複数のUI部品の描画情報をキャッシュするUI装置では、シーングラフ中のキャッシュ対象となるサブグラフが大きい程、シーングラフの構造が簡略化され、高速化の効果も高くなる。しかしながら、サブグラフを構成するUI部品の中に、描画内容を確定できないUI部品(不確定部品)が含まれる場合、あるいは、描画内容が動的に変化するUI部品(動的変化部品)が含まれている場合に、キャッシュした描画情報をそのまま利用できないという課題がある。例えば、現在時刻を表す時計の画像のUI部品は、実際の画面遷移時でなければ描画内容が確定しないので不確定部品であると共に、描画内容が動的に変化するため動的変化部品でもある。
不確定部品は、描画情報を予め構築できないため、特許文献1のような遷移先画面の描画情報を事前に構築する技法は適用できない。また、特許文献2のようにサブグラフに対応する統合UI部品を構築する技法では、統合UI部品を構成する一部のUI部品の内容が変更されれば、その統合UI部品は使用できなくなるため、統合UI部品に動的変化部品が含まれていると問題になる。例えば、統合UI部品に含まれる動的変化部品に変化が生じる度に統合UI部品を生成し直す必要が生じ、画面描画の高速化の妨げとなる。
その対策として、不確定部品および動的変化部品の変化パターンの全てに対応できるように、複数通りの描画情報を事前に構築したり、複数通りの統合UI部品を生成したりして、それらをキャッシュする方法が考えられる。しかし、その方法ではキャッシュに必要な記憶容量が増大する問題が生じる。
また、キャッシュ対象のサブグラフ(統合UI部品)に不確定部品および動的変化部品が含まれないように、キャッシュ対象のサブグラフをさらに小さな複数のサブグラフに分割するという対策も考えられるが、シーングラフ構造の簡略化効果が低下してしまう。さらに、統合UI部品の中の複数のサブグラフ同士に描画領域の重なりがある場合には、重なった領域の分だけキャッシュに必要な記憶容量が増大する。
また、統合UI部品に不確定部品および動的変化部品が含まれないように、シーングラフ全体の構造を変更するという解決策も考えられる。しかし、画面の意味的構造を無視して作成したシーングラフでは、画面の設計およびUI部品の管理が容易になるというシーングラフの利点が損なわれてしまう。
本発明は以上のような課題を解決するためになされたものであり、シーングラフの構造を変更することなく、サブグラフ中に不確定部品または動的変化部品が含まれる場合においても各画面の描画情報を効率的にキャッシュできるユーザインタフェース装置を提供することを目的とする。
本発明に係るユーザインタフェース装置は、UI(ユーザインタフェース)の画面を構成する複数のUI部品のうちのキャッシュ対象部品群から、発生するイベントの内容に基づいて、不確定部品または動的変化部品を除外部品として取り除く除外部品抽出部と、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を生成するキャッシュ情報生成部と、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報が登録される描画情報キャッシュ部と、前記描画情報キャッシュ部に登録されている前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を用いた画面の描画が実施される際、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報に、前記除外部品に対応する描画情報を合成する除外部品合成部と、を備えるものである。
本発明によれば、サブグラフ中に不確定部品または動的変化部品が含まれる場合においても、シーングラフの構造の変更を必要とせずに、効果的にキャッシュを利用することができるため、ユーザインタフェース装置における画面描画の高速化に寄与できる。また、UI開発において、描画性能を考慮するためのUI画面の設計工数および性能チューニングに係る工数が削減できるといった効果も得られる。
この発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。
実施の形態1に係るUI装置の構成を示す機能ブロック図である。 本発明に係るUI装置のハードウェア構成の一例を示すブロック図である。 本発明に係るUI装置が表示する画面の一例を示す図である。 図3の画面を構成する個々のUI部品を示す図である。 図3の画面に対応する画面モデルの一例を示す図である。 キャッシュ対象部品群から除外部品を除去する処理と、キャッシュから読み出したUI部品群に除外部品を合成する処理を説明するための図である。 実施の形態1に係るUI装置の画面モデル構築部の動作を示すフローチャートである。 実施の形態1に係るUI装置の除外部品抽出部の動作を示すフローチャートである。 実施の形態1に係るUI装置のキャッシュ情報生成部の動作を示すフローチャートである。 実施の形態1に係るUI装置の描画情報キャッシュ部の動作を示すフローチャートである。 実施の形態1に係るUI装置の除外部品合成部の動作を示すフローチャートである。 実施の形態2に係るUI装置の構成を示す機能ブロック図である。 実施の形態2における統合UI部品を用いた画面モデルの一例を示す図である。 実施の形態2に係るUI装置の統合UI部品生成部の動作を示すフローチャートである。 実施の形態2に係るUI装置の画面モデル構築部の動作を示すフローチャートである。 実施の形態3に係るUI装置の構成を示す機能ブロック図である。 実施の形態3に係るUI装置のマスク領域生成部の動作を示すフローチャートである。 実施の形態3に係るUI装置のマスク処理部の動作を示すフローチャートである。 実施の形態3に係るUI装置のキャッシュ情報生成部の動作を示すフローチャートである。 実施の形態4に係るUI装置の構成を示す機能ブロック図である。 実施の形態4に係るUI装置の画面モデル事前生成部の動作を示すフローチャートである。 実施の形態4に係るUI装置の画面モデル構築部の動作を示すフローチャートである。 実施の形態5に係るUI装置の構成を示す機能ブロック図である。 実施の形態5に係るUI装置の除外部品決定部の動作を示すフローチャートである。 実施の形態6に係るUI装置の構成を示す機能ブロック図である。 実施の形態6に係るUI装置の描画傾向推定部の動作を示すフローチャートである。 実施の形態6に係るUI装置の描画傾向保持部の動作を示すフローチャートである。 実施の形態6に係るUI装置のキャッシュ対象部品決定部の動作を示すフローチャートである。 実施の形態7に係るUI装置の構成を示す機能ブロック図である。 実施の形態7に係るUI装置の代理実行判断部の動作を示すフローチャートである。 実施の形態7に係るUI装置の代理実行委託部の動作を示すフローチャートである。 実施の形態8に係るUI装置の構成を示す機能ブロック図である。 実施の形態8に係るUI装置の依存関係抽出部の動作を示すフローチャートである。
以下、本発明をより詳細に説明するために、本発明を実施するための形態について、添付の図面に沿って説明する。
<実施の形態1>
図1は、この発明の実施の形態1におけるユーザインタフェース装置(UI装置)を示す構成図である。図1のように、当該UI装置は、入力部101、イベント取得部102、画面データ記憶部103、画面モデル構築部104、除外部品抽出部105、キャッシュ情報生成部106、描画情報キャッシュ部107、除外部品合成部108、描画処理部109、および表示部110を備える。
入力部101は、表示部110に表示されたUI画面に対して、ユーザが操作を行うための装置である。入力部101の具体例としては、マウス、タッチパネル、トラックボール、データグローブ、スタイラスといったポインティングデバイス、キーボード、マイクなどの音声入力装置、カメラなどの画像・映像入力装置、脳波による入力装置、モーションセンサなどのセンサ類、等がある。
入力部101では、あらゆる種類の操作をユーザ入力イベントとして表現し、イベント取得部102へ送信する。ユーザ入力イベントの例としては、入力部101がマウスの場合、マウスによるカーソルの移動、右ボタンまたは左ボタンのクリック開始および終了、ダブルクリック、ドラッグ、ホイール操作、特定表示要素へのカーソルの接近、特定表示要素上へのカーソルの移動、特定表示要素外へのカーソルの移動などがある。また、入力部101がタッチパネルである場合、タップ、ダブルタップ、ホールド、フリック、スワイプ、ピンチイン、ピンチアウト、ローテートなどの、1本ないし複数本の指を用いたジェスチャ操作、タッチパネル面への指示体(ユーザの指)の接近などがある。また、入力部101がキーボードの場合、キーの押下、リリース、複数キーの同時操作などがある。また、時間や速度、加速度、複数ユーザの組み合わせ、複数の入力装置の組み合わせなどにより、独自もしくは新たなユーザ入力イベントを定義してもよい。ここで挙げた例以外にも、ユーザの意図や意思に起因するあらゆる操作をユーザ入力イベントとして扱うことができる。
イベント取得部102は、表示部110に表示する画面の内容を変化させるきっかけとなるイベントを取得し、画面モデル構築部104へ送信する。そのようなイベントとしては、入力部101から送信されるユーザ入力イベントの他、ハードウェアやオペレーティングシステムから送信されるシステムイベント、一定周期に発生するタイマイベントなどがある。アニメーションなど連続的な画面更新を発生させるために、画面モデル自身が内部的に発生させるインターナルイベントを用意してもよい。
画面データ記憶部103は、表示部110に表示する画面の内容を決定するために必要な画面データを記憶している。画面データには、例えば、画面レイアウト、画面遷移チャート、画面制御プログラム、UI部品パラメータ値、アニメーション情報、データベース、画像、フォント、映像、音声などのデータが含まれる。その他、あらゆるタイプのデータを画面データとして画面データ記憶部103に記憶させてもよい。
画面モデル構築部104は、画面データ記憶部103から画面データを読み込み、画面モデルを構築する。画面モデルは、表示部110に表示している画面の内容を表したモデルであり、複数のUI部品(以下、単に「部品」ということもある)から構成される1層以上の階層構造を有するものとする。例えば、上記したシーングラフも、階層構造を有する画面モデルの一つである。
UI部品は、画面の構成要素となるものであり、例えば、文字列を描画するテキスト部品、画像を貼り付ける画像部品などである。その他にも、動画を貼り付ける部品、楕円を描画する部品、矩形を描画する部品、多角形を描画する部品、パネル部品などがある。さらには、アニメーション部品、画面遷移チャートなど、画面を制御するロジックをUI部品として扱ってもよい。
各UI部品は、その種類に応じたUI部品パラメータ値を保持している。UI部品の種類に依らず全てのUI部品が有するUI部品パラメータ値としては、部品ID、座標、幅、高さなどがある。特定の種類のUI部品のみが有するUI部品パラメータ値としては、テキスト部品が有する文字列、フォント、色などのパラメータ値、画像部品が有する画像ファイルパス、縮尺、回転角度などのパラメータ値等がある。実施の形態1においては、全てのUI部品が、少なくとも、キャッシュ対象か否かを示すUI部品パラメータ値と、除外部品か否かを示すUI部品パラメータ値を保持しているものとする。画面モデルの構造、および、画面モデルに含まれる各UI部品のUI部品パラメータ値は、画面モデル構築部104が画面モデルを構築する際に決定される。
また、画面モデル構築部104は、イベント取得部102が取得したイベント(表示部110に表示する画面の内容を変化させるきっかけとなるイベント)に基づいて、画面遷移チャートあるいは画面制御プログラムなどを実行して、画面モデルを更新する。そして、画面モデル構築部104は、更新後の画面モデルの内容を除外部品合成部108へ送信する。さらに、画面モデル構築部104は、各UI部品が有するキャッシュ対象か否かを示すUI部品パラメータ値に基づいて、更新後の画面モデルに含まれるキャッシュ対象部品群(キャッシュ対象部品群)を除外部品抽出部105へ送信する。
除外部品抽出部105は、画面モデル構築部104から受信したキャッシュ対象部品群に対し、各UI部品が有する除外部品か否かを示すUI部品パラメータ値に基づいて、除外部品を分離する処理を行う。また、除外部品抽出部105は、分離した除外部品を、除外部品合成部108へ送信し、除外部品が除かれたキャッシュ対象部品群(「除外部品除去後のキャッシュ対象部品群」ともいう)をキャッシュ情報生成部106へ送信する。
なお、もともと除外部品を含んでいないキャッシュ対象部品群については、除外部品を取り除く処理を行う必要がない。そのため、除外部品抽出部105は、除外部品を含んでいないキャッシュ対象部品群はそのまま除外部品抽出部105へ送信する。本明細書では、説明の便宜上、除外部品抽出部105が出力したキャッシュ対象部品群のことを「除外部品が除かれたキャッシュ対象部品群」または「除外部品除去後のキャッシュ対象部品群」と呼ぶが、その中にはもともと除外部品を含んでいなかったキャッシュ対象部品群も含まれている。
キャッシュ情報生成部106は、除外部品抽出部105から受信した除外部品除去後のキャッシュ対象部品群から、描画情報キャッシュ部107にキャッシュする描画情報(キャッシュ情報)を生成する。描画情報は、表示部110に表示する画面を決定するために必要な情報である。描画情報の具体例としては、画面モデルの全部または一部、画面モデルが保持するパラメータあるいはオブジェクト、画像などのテクスチャ等がある。その他、グラフィックスコマンド、フレームバッファオブジェクトなども描画情報として扱ってもよい。キャッシュ情報生成部106が生成した描画情報は、描画情報キャッシュ部107へと送信される。
描画情報キャッシュ部107は、キャッシュ情報生成部106から受信した描画情報を登録(キャッシュ)する。また、描画情報キャッシュ部107は、キャッシュされているキャッシュ対象部品群の描画情報を読み出して、除外部品合成部108へ送信する処理も行う。
除外部品合成部108は、画面モデル構築部104から受信した画面モデルの内容および除外部品抽出部105から受信した除外部品の内容に基づいて描画情報を生成し、その描画情報と描画情報キャッシュ部107から受信した描画情報とを組み合わせて、表示部110に表示する画面の完全な描画情報を生成する。除外部品合成部108は、完全な描画情報を描画処理部109へ送信する。
描画処理部109は、除外部品合成部108から受信した描画情報から、表示部110で表示可能な描画データを生成する。描画データの生成は、例えば、OpenGLやDirect3Dなどのグラフィックス・アプリケーション・プログラミング・インタフェースを用いて、描画情報の内容に応じたレンダリング処理をグラフィックスハードウェアに実行させることによって行われる。描画処理部109は、生成した描画データを表示部110へ送信する。
表示部110は、描画処理部109が生成した描画データに基づく画面を表示する装置であり、例えば、液晶表示装置やタッチパネルなどである。
図2は、本発明に係るUI装置を実現するハードウェア構成の一例を示す図である。図2のように、UI装置のハードウェア構成は、入力装置210、コンピュータ220および表示装置230を備えた構成となっている。
入力装置210は、例えばマウス、キーボード、タッチパッドなどであり、入力部101の機能は入力装置210によって実現される。表示装置230は、例えば液晶表示装置などであり、表示部110の機能は表示装置230によって実現される。
コンピュータ220は、CPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、DSPともいう)等の処理装置221と、メモリ等の記憶装置222とを含んでいる。メモリとは、例えば、RAM、ROM、フラッシュメモリー、EPROM、EEPROM等の、不揮発性または揮発性の半導体メモリや、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等が該当する。UI装置のイベント取得部102、画面モデル構築部104、除外部品抽出部105、キャッシュ情報生成部106、除外部品合成部108および描画処理部109の各機能は、処理装置221が記憶装置222に格納されたプログラムを実行することによって実現される。
処理装置221は、プログラムに基づく処理を実行するコアを複数含んでいてもよい。また、入力装置210および表示装置230は、入力部101と表示部110の両方の機能を兼ね備える1つの装置(例えばタッチパネル装置)として構成されていてもよい。また、入力装置210、表示装置230およびコンピュータ220が一体的な1つの装置(例えばスマートフォンやタブレット端末)を構成していてもよい。
図3は、本発明に係るUI装置が表示する画面の一例であり、アプリケーション(「アプリ」と略称する)の選択メニューを示す画面301(アプリメニュー画面)を示している。
画面301は、図4に示す複数のUI部品302〜315が階層的に組み合わさって構成されている。すなわち、アプリメニュー画面である画面301は、タイトルパネルの画像を描画するパネル部品302と、横線(バー)の画像を描画する画像部品303と、メインパネルの画像を描画するパネル部品304とから構成されているが、パネル部品302およびパネル部品304は、さらに下位のUI部品を組み合わせて構成されている(画像部品303は、1つのUI部品のみから構成されている)。
パネル部品302は、「アプリメニュー」の文字列を描画するテキスト部品305と、現在時刻を表す文字列を描画するテキスト部品306とから構成されている。パネル部品304は、ナビゲーション(「ナビ」と略称する)用アプリを選択するためのアイコン(ナビアイコン)を描画するアイコン部品307と、オーディオ用のアプリを選択するためのアイコン(オーディオアイコン)を描画するアイコン部品308と、テレビ用のアプリを選択するためのアイコン(テレビアイコン)を描画するアイコン部品309とから構成されている。
さらに、アイコン部品307は、自動車の画像を描画する画像部品310と、「ナビ」の文字列を描画するテキスト部品311とから構成されている。アイコン部品308は、光ディスクと音符の画像を描画する画像部品312と、「オーディオ」の文字列を描画するテキスト部品313とから構成されている。アイコン部品309は、テレビの画像を描画するテキスト部品315と、「テレビ」の文字列を描画するテキスト部品315とから構成されている。
図5は、画面301に対応する画面モデルの一例を示している。この画面モデルでは、画面301を構成するUI部品302〜315の階層関係をツリー構造で表したシーングラフである。なお、画面301の全体を1つのUI部品とみなし、画面301全体のUI部品を別の画面の描画に利用することもできる。また、図5の画面モデルはツリー構造のシーングラフであるが、網羅的に矛盾なくトラバースが可能であれば、シーングラフ内に閉路が存在してもよい。
図6は、キャッシュ対象部品群から除外部品を取り除いて描画情報キャッシュ部107にキャッシュする処理と、描画情報キャッシュ部107にキャッシュされているUI部品群(キャッシュ部品群)に除外部品を合成する処理の一例を示す図である。
例えば、画面301のパネル部品304がキャッシュ対象部品群であり、パネル部品304に含まれる「オーディオ」のテキスト部品313が動的変化部品であったとする。この場合、テキスト部品313が除外部品となる。除外部品抽出部105は、図6のように、パネル部品304を、除外部品であるテキスト部品313と、パネル部品304から除外部品(画像部品314)を除いたパネル部品304aとに分離する。また、キャッシュ情報生成部106は、除外部品が除かれたパネル部品304aの描画情報を生成し、それを描画情報キャッシュ部107にキャッシュする。
その後、描画情報キャッシュ部107にキャッシュされているパネル部品304a(キャッシュ部品群)を用いて、表示部110に画面301を表示させるときに、除外部品であるテキスト部品313の内容が「DVD」の文字列に変化していたとする。この場合、除外部品合成部108は、描画情報キャッシュ部107からパネル部品304aを読み出し、そのパネル部品304aと「DVD」のテキスト部品313とを合成して、「DVD」の文字列を含むパネル部品304bを生成する。描画処理部109は、除外部品合成部108が生成したパネル部品304bの描画情報を用いて、表示部110に表示させる画面301の描画データを生成する。
図6においては、パネル部品304のみがキャッシュ対象部品群であり、その中のテキスト部品313のみが除外部品である例を示したが、1つの画面内に複数のキャッシュ対象部品群が存在してもよいし、1つのキャッシュ対象部品群内に複数の除外部品が存在してもよい。
実施の形態1に係るUI装置は、イベント取得部102が、ユーザ入力イベントなど、表示部110に表示する画面の内容を変化させるきっかけとなるイベントを取得すると、画面モデルの更新処理と、それに応じた画面の描画処理とが実施される。以下、それらの処理の流れを説明する。
イベント取得部102が、表示部110に表示する画面の内容を変化させるきっかけとなるイベントを取得すると、画面モデル構築部104は、画面モデルが表す内容を更新し、更新後の画面モデルの中からキャッシュ対象部品群を抽出する処理を行う。以下、この処理の流れを、図7のフローチャートを参照して説明する。
画面モデル構築部104は、まず、他に処理すべきイベントがないかを確認する(ステップST701)。処理すべきイベントが残っている場合、画面モデル構築部104は、それらの処理を全て終えるまで、各イベントを処理する。その際、画面モデル構築部104は、各イベントの処理に対応する制御プログラムを実行することで、画面モデルの構造およびパラメータ値を更新する(ステップST702)。また、必要に応じて、画面データ記憶部103からデータを取得する。
イベント取得部102は、すべてのイベント処理が終了すると、更新後の画面モデルにキャッシュ対象となるUI部品(キャッシュ対象部品群)が含まれているかどうか確認する(ステップST703)。更新後の画面モデルにキャッシュ対象部品群が含まれていれば、イベント取得部102は、画面モデルの中からキャッシュ対象部品群を抽出する(ステップST704)。更新後の画面モデルにキャッシュ対象部品群が含まれていなければ、イベント取得部102はステップST704を行わずに処理を終了する。
除外部品抽出部105は、画面モデル構築部104が抽出したキャッシュ対象部品群から除外部品を分離する処理を行う。以下、この処理の流れを、図8のフローチャートを参照して説明する。
画面モデル構築部104は、まず、キャッシュ対象部品群に除外部品が含まれるか確認する(ステップST801)。キャッシュ対象部品群に除外部品が含まれていれば、画面モデル構築部104は、キャッシュ対象部品群を、除外部品とそれ以外のキャッシュ対象部品群とに分離する(ステップST802)。キャッシュ対象部品群に除外部品が含まれていなければ、画面モデル構築部104は、ステップST802を行わずに処理を終了する。
キャッシュ情報生成部106は、除外部品抽出部105によって除外部品が除かれたキャッシュ対象部品群(除外部品除去後のキャッシュ対象部品群)から、描画情報キャッシュ部107にキャッシュする描画情報を生成する。以下、この処理の流れを、図9のフローチャートを参照して説明する。
キャッシュ情報生成部106は、除外部品除去後のキャッシュ対象部品群を受信すると、当該キャッシュ対象部品群がすでに描画情報キャッシュ部107に登録(キャッシュ)されているか否かを確認する(ステップST901)。当該キャッシュ対象部品群が描画情報キャッシュ部107に登録されていない場合、当該キャッシュ対象部品群の描画情報を生成する(ステップST903)。また、当該キャッシュ対象部品群が描画情報キャッシュ部107に登録されていた場合でも、キャッシュ情報生成部106は、当該キャッシュ対象部品群の内容と描画情報キャッシュ部107に登録されているキャッシュ対象部品群(登録済みのキャッシュ対象部品群)の内容とを比較し、当該キャッシュ対象部品群の内容が、登録済みのキャッシュ対象部品群の内容に対して更新(変更)されているか否かを確認して(ステップST902)、更新されていれば、ステップST903を実施する。当該キャッシュ対象部品群の内容が更新されていなければ、キャッシュ情報生成部106は、ステップST903を行わずに処理を終了する。
描画情報キャッシュ部107は、キャッシュ情報生成部106が生成した描画情報を登録(キャッシュ)し、また、キャッシュされているキャッシュ対象部品群の描画情報を読み出して取得する。以下、この処理の流れを、図10のフローチャートを参照して説明する。
描画情報キャッシュ部107は、キャッシュ情報生成部106が、除外部品除去後のキャッシュ対象部品群の描画情報を生成したか否かを確認する(ステップST1001)。除外部品除去後のキャッシュ対象部品群の描画情報が生成された場合(すなわち、当該キャッシュ対象部品群の描画情報がまだ描画情報キャッシュ部107に登録されていない場合)は、その描画情報を描画情報キャッシュ部107にキャッシュする(ステップST1002)。また、除外部品除去後のキャッシュ対象部品群の描画情報が生成されなかった場合(すなわち、当該キャッシュ対象部品群の描画情報がすでに描画情報キャッシュ部107に登録されている場合)は、描画情報キャッシュ部107に登録されている当該キャッシュ対象部品群の描画情報を取得する(ステップST1003)。
除外部品合成部108は、キャッシュ対象部品群の描画情報と除外部品の描画情報とを合成し、表示部110に表示させる画面の完全な描画情報を生成する処理を行う。以下、この処理の流れを、図11のフローチャートを参照して説明する。
除外部品合成部108は、まず、更新後の画面モデルを構成するUI部品群のうち、キャッシュ対象部品群以外のUI部品群から、描画情報を生成する(ステップST1101)。次に、画面モデルにキャッシュ対象部品群が含まれているか否かを確認する(ステップST1102)。画面モデルにキャッシュ対象部品群が含まれていなければ、ステップST1101で生成した描画情報が画面の完全な描画情報となるので、除外部品合成部108は、そのまま処理を終了する。
一方、画面モデルにキャッシュ対象部品群が含まれていれば、除外部品合成部108は、さらに、そのキャッシュ対象部品群に除外部品が含まれるか否かを確認する(ステップST1103)。キャッシュ対象部品群に除外部品が含まれていなければ、除外部品合成部108は、キャッシュされているUI部品群の描画情報とステップST1101で生成した描画情報とを合成した1つの描画情報(画面の完全な描画情報)を生成して(ステップST1106)、処理を終了する。また、キャッシュ対象部品群に除外部品が含まれていれば、除外部品合成部108は、除外部品の描画情報を生成し(ステップST1104)、その除外部品の描画情報とキャッシュされているUI部品群の描画情報とを合成して1つの描画情報を生成し(ステップST1105)、さらに、ステップST1105で生成した描画情報とステップST1101で生成した描画情報とを合成した1つの描画情報(画面の完全な描画情報)へ生成して(ステップST1106)、処理を終了する。
除外部品合成部108によって画面の完全な描画情報が生成されると、描画処理部109が、その描画情報から描画データを生成して表示部110へ送信する。その結果、表示部110に表示される画面が更新される。
このように、実施の形態1に係るUI装置によれば、キャッシュ対象部品群の中に不確定部品や動的変化部品が含まれていた場合、除外部品抽出部105がそれらを除外部品としてキャッシュ対象部品群から取り除き、描画情報キャッシュ部107には除外部品が除かれたキャッシュ対象部品群の描画情報がキャッシュされる。そして、そのキャッシュ対象部品群を画面の表示に用いる際には、当該キャッシュ対象部品群に除外部品の現在の内容が合成される。それにより、不確定部品や動的変化部品を含むキャッシュ対象部品群についても効率的にキャッシュを利用できるようになる。その結果、キャッシュの利用率を高めて、UI装置の描画性能を向上させることができる。
<実施の形態2>
実施の形態1のUI装置では、除外部品が除かれたキャッシュ対象部品群から描画情報を生成する処理(図9)を行っているが、実施の形態2では、その処理に代えて、画面モデル構築部104が保持する画面モデルのキャッシュ対象部品群を、統合UI部品へ置き換える処理を行う構成のUI装置を示す。
図12は、実施の形態2に係るUI装置の構成図である。当該UI装置は、図1の構成に対し、キャッシュ情報生成部106に代えて、統合UI部品生成部1201を設けた構成となっている。
図13は、キャッシュ対象部品群を統合UI部品で置き換えた画面モデルの一例を示す図である。図13においては、図6の例のようにパネル部品304がキャッシュ対象部品群であり、テキスト部品313が除外部品であると仮定し、図5の画面モデルに対して、パネル部品304およびその下位のUI部品307〜315を1つの統合UI部品1301に置き換えている。ただし、除外部品であるテキスト部品313は統合UI部品1301に含まれず、統合UI部品1301の下位のUI部品として残される。この場合、除外部品合成部108は、統合UI部品1301と除外部品であるテキスト部品313とを合成することにより、パネル部品304の描画情報を生成することができる。
統合UI部品生成部1201は、除外部品抽出部105により除外部品が除かれたキャッシュ対象部品群から、描画情報キャッシュ部107に登録(キャッシュ)する描画情報を生成すると共に、その描画情報に対応する画像データである統合UI部品を生成する。すなわち、統合UI部品は、キャッシュ対象部品群の描画内容をまとめて1つの画像部品として扱ったものである。
以下、これらの処理の流れを、図14のフローチャートを参照して説明する。当該フローチャートは、図9におけるステップST903を、以下のステップST1401およびST1402に置き換えたものである。
ステップST1401では、統合UI部品生成部1201が、除外部品除去後のキャッシュ対象部品群から、描画情報キャッシュ部107に登録(キャッシュ)する統合UI部品を生成する。ステップST1402では、ステップST1401で生成した統合UI部品を画面モデル構築部104へ送信する。
また、画面モデル構築部104は、統合UI部品生成部1201が生成した統合UI部品を受信すると、画面モデルの中にあるキャッシュ対象部品群をその統合UI部品で置き換える処理を行う。キャッシュ対象部品群が統合UI部品に置き換えられた画面モデルは、画面を更新するイベント処理により当該キャッシュ対象部品群の内容が更新されるまで、構造が簡略化された画面モデルとして画面モデル構築部104に保持される。
また本実施の形態では、画面を更新するイベント処理により、統合UI部品に置き換えられたキャッシュ対象部品群の内容が更新されると、画面モデル構築部104は、統合UI部品を元の複数のUI部品に戻す処理を行う。以下、その処理の流れを、図15のフローチャートを参照して説明する。当該フローチャートは、図7に対し、ステップST702の前に、以下のステップST1501およびST1502が追加されたものとなっている。
画面モデル構築部104は、まず、他に処理すべきイベントがないかを確認する(ステップST701)。処理すべきイベントが残っている場合、画面モデル構築部104は、イベント処理によってキャッシュ対象部品群の内容が更新されるか否を確認する(ステップST1501)、キャッシュ対象部品群の内容が更新されないときは、そのままステップST702へ移行し、イベント処理に対応する制御プログラムを実行して、画面モデルを更新する更新する。
イベント処理によってキャッシュ対象部品群の内容が更新される場合、画面モデル構築部104は、そのキャッシュ対象部品群が統合UI部品に置き換えられているか否かを確認する(ステップST1502)。このとき、当該キャッシュ対象部品群が統合UI部品に置き換えられていなければ、そのままステップST702へ移行する。しかし、当該キャッシュ対象部品群が統合UI部品に置き換えられていなければ、画面モデル構築部104は、統合UI部品を元のキャッシュ対象部品群へ戻し(ステップST1503)、当該キャッシュ対象部品群の内容を更新できるようにしてから、ステップST702へ移行する。
なお、すべてのイベント処理が終了した後のイベント取得部102の動作は、実施の形態1(図7)と同様である。
このように、実施の形態2では、画面モデルを構成する一部のUI部品群を統合UI部品へ置き換えることで、画面モデル構築部104が保持する画面モデルを簡略化できる。それにより、実施の形態1の効果に加えて、キャッシュ対象部品群の中に不確定部品や動的変化部品が含まれていた場合でも、画面モデルから描画情報を生成するために実施するトラバース処理が高速化されるという効果が得られる。
<実施の形態3>
実施の形態1のUI装置では、除外部品が除かれたキャッシュ対象部品群から描画情報を生成する処理(図9)を行っていたが、実施の形態3では、その処理と共に、除外部品に対し、当該除外部品が除かれたキャッシュ対象部品群との重ねあわせに関するマスクを生成し、除外部品を合成する際にマスクを適用することができるUI装置を示す。マスクの具体例としては、アルファブレンド、ステンシル、シザー、ブラー、シャドウなどがある。特殊なエフェクト効果を適用するために、独自のマスクを生成してもよい。
図16は、実施の形態3に係るUI装置の構成図である。当該UI装置は、図1の構成に対し、マスク領域生成部1601およびマスク処理部1602を設けた構成となっている。
マスク領域生成部1601は、除外部品に対してマスク領域を生成する処理を行う。この処理の流れを、図17のフローチャートを参照して説明する。なお、マスク領域生成部1601が生成した除外部品のマスク領域の内容は、除外部品除去後のキャッシュ対象部品群の描画情報と共に、描画情報キャッシュ部107に登録(キャッシュ)されるものとする。
まず、マスク領域生成部1601は、キャッシュ対象部品群に除外部品が含まれるか否かを確認する(ステップST1701)。キャッシュ対象部品群に除外部品が含まれない場合、マスク領域生成部1601はマスク領域を生成せずに処理を終了する。
一方、キャッシュ対象部品群に除外部品が含まれる場合、その除外部品に対応するマスク領域の内容が、既に描画情報キャッシュ部107に登録済みのマスク領域の内容から更新(変更)されているか確認する(ST1702)。マスク領域が更新されていなければ、マスク領域生成部1601は、マスク領域を生成せずに終了する。マスク領域が更新されていれば、マスク領域生成部1601は、除外部品に対応するマスク領域を新たに生成する(ステップST1703)。1つの除外部品に対して2種類以上のマスクを同時に生成してもよい。
なお、ステップST1702におけるマスク領域の内容の更新の確認は、除外部品とそれを除いたキャッシュ対象部品群とのUI部品パラメータ値の比較などによって行うことができる。例えば、除外部品とそれを除いたキャッシュ対象部品群との相対位置が変更されている場合には、マスク領域が変化していると判断できる。
マスク処理部1602は、除外部品に対してマスク領域を適用する処理を行う。以下、この処理の流れを、図18のフローチャートを参照して説明する。
マスク処理部1602は、まず、キャッシュ対象部品群に除外部品が含まれるか確認する(ステップST1801)。キャッシュ対象部品群に除外部品が含まれない場合、マスク処理部1602は、除外部品にマスク領域を適用せずに、処理を終了する。一方、キャッシュ対象部品群に除外部品が含まれる場合、除外部品に対してマスク領域を適用する(ステップST1802)。1つの除外部品に対して2種類以上のマスクを適用してもよい。
実施の形態3では、イベント処理によって画面モデル構築部104が保持する画面モデルが更新されたとき、除外部品のマスク領域の内容が更新される場合と、除外部品を除いたキャッシュ対象部品群の描画情報が更新される場合とがある。マスク領域の内容が更新されるか否かを確認する処理は、マスク領域生成部1601が行うが(図17のステップST1702)、除外部品を除いたキャッシュ対象部品群の描画情報が更新されるか否かを確認する処理は、キャッシュ情報生成部106で実施される。
図19は、実施の形態2のキャッシュ情報生成部106の動作を示すフローチャートである。当該フローチャートは、図9のフローチャートに対し、ステップST1901を追加したものである。
ステップST1901は、除外部品抽出部105により除外部品が除かれたキャッシュ対象部品群の内容が、登録済みのキャッシュ対象部品群の内容に対して更新(変更)される場合に行われる。ステップST1901では、キャッシュ情報生成部106が、キャッシュ対象部品群の内容の更新が、マスク領域の内容のみの更新であるか否かを判断する。このとき、マスク領域の内容のみが更新される場合、キャッシュ情報生成部106は、ステップST903を実行せずに処理を終了する。また、マスク領域以外にも更新される内容がある場合には、ステップST903を実行する。なお、ステップST1901における更新の確認は、図17のステップST1702と同様に、更新の確認は、除外部品とそれを除いたキャッシュ対象部品群とのUI部品パラメータ値の比較などによって行うことができる。
このように、実施の形態3では、除外部品とそれを除いたキャッシュ対象部品群とが表示領域の重なりを持つ場合に、その重なり合う領域にマスクを適用することができる。よって、除外部品が除かれたキャッシュ対象部品群と除外部品との重ねあわせが存在する場合においても、画面内容の一貫性を維持しつつ、実施の形態1の効果を得ることができる。
<実施の形態4>
実施の形態1のUI装置では、画面モデル構築部104が保持する現在表示中の画面(以下、「現画面」という)の画面モデルに対応する描画情報を描画情報キャッシュ部107にキャッシュしていたが、実施の形態4では、次に表示する画面(以下、「次画面」という)を先読みしてその画面モデルを事前に構築し、次画面の画面モデルに対応する描画情報を描画情報キャッシュ部107にキャッシュする構成のUI装置を示す。
図20は、実施の形態4に係るUI装置の構成図である。当該UI装置は、図1の構成に対し、画面モデル事前生成部2001を追加した構成となっている。なお、図20では、画面モデル事前生成部2001が次画面の画面モデルを事前に構築し、描画情報キャッシュ部107にキャッシュするためのデータあるいは要求の流れ(図20の矢印)を記載しているが、図20に記載されていないデータあるいは要求の流れ(図1の矢印)を含んでいてもよい。
画面モデル事前生成部2001は、現画面から遷移する可能性のある次画面の画面モデルを事前に生成する処理を行う。以下、この処理の流れを、図21のフローチャートを参照して説明する。
まず、画面モデル事前生成部2001は、次画面の画面モデルの事前生成を実施できるか否かを確認する(ステップST2101)。例えば、画面モデル構築部104が画面モデルを更新すると、遷移可能な次画面の内容が変化するため、次画面の画面モデルの事前生成は、画面モデル構築部104の画面モデルの更新が完了した後に行う必要がある。また、画面更新処理による処理負荷状況や、UI装置が実行中のアプリケーションによる処理負荷状況を考慮に入れて、画面モデルの事前生成を実施できるか否かを判断してもよい。画面モデル事前生成部2001は、画面モデルの事前生成を実施できない状況と判断した場合は、そのまま処理を終了する。
また、画面モデル事前生成部2001は、画面モデルの事前生成を実施できると判断すると、画面モデル構築部104が保持している現画面の画面モデルのパラメータ値あるいは画面遷移チャートを参照し、現画面から遷移可能な1つ又は複数の次画面の中に、事前生成可能なもの(先読み可能なもの)が存在するか否かを確認する(ステップST2102)。次画面を先読み可能かどうかの判断は、例えば、画面を遷移させるイベント処理のプログラムの結果が静的に決定されるかどうかによって判断することができる。事前生成可能な次画面が存在しない場合、画面モデル事前生成部2001は、そのまま処理を終了する。
事前生成可能な次画面が存在する場合、画面モデル事前生成部2001は、どの次画面を事前生成するかを決定する(ステップST2103)。どの次画面を事前生成するかは、例えば、現画面の画面モデルにおける予め定められたパラメータ値から決定してもよい。あるいは、過去のイベントの発生履歴から傾向を分析し、頻繁に遷移している画面など、予め定められた条件に合致する次画面を事前生成するように決定してもよい。
事前生成する画面が決定すると、画面モデル事前生成部2001は、画面モデル構築部104が保持している現画面の画面モデルの複製を生成する(ステップST2104)。そして、複製した画面モデルに対して、画面遷移処理を実施することにより、次画面の画面モデルを生成する(ST2105)。画面モデルに対する画面遷移処理は、例えば、現画面から事前生成する次画面へ遷移するための仮想のイベントを発行することによって行われる。このとき、画面遷移処理は、画面モデルを構成する一部のUI部品に対してのみ行われてもよい。
なお、事前生成された次画面の画面モデルは、画面モデルの全体がキャッシュ対象部品群として扱われ、除外部品抽出部105へ送信される。以降、実施の形態1と同様のステップで描画情報キャッシュ部107にキャッシュされる。
また、実際に画面を次画面へ遷移させるイベントが生じた際、次画面の画面モデル全体が描画情報キャッシュ部107にキャッシュされていれば、画面モデル構築部104は、画面モデルを次画面の画面モデルに置き換え、次画面への遷移に関する残りのイベントの処理のうち省略できるものはスキップすればよい。その処理の流れを、図22のフローチャートを参照して説明する。図22のフローチャートは、図7のステップST701とステップST702との間に、以下のステップST2201〜ST2205の処理が追加されたものとなっている。
画面の内容を変化させるイベントが発生すると、画面モデル構築部104は、他に処理すべきイベントがないかを確認する(ステップST701)。このとき、処理すべきイベントが残っていた場合、当該イベントが、次画面の事前生成に関連する画面遷移イベントか否かを確認する(ステップST2201)。当該イベントが、次画面の事前生成に関連する画面遷移イベントでない場合、画面モデル構築部104は、ステップST702へ移行して当該イベントを処理する。
当該イベントが、次画面の事前生成に関連する画面遷移イベントであった場合、画面モデル構築部104は、遷移先である次画面の画面モデルが描画情報キャッシュ部107にキャッシュされているか否かを確認する(ステップST2202)。キャッシュされていなければ、画面モデル構築部104は、ステップST702を実行して当該イベントを処理する。
遷移先の画面モデルがキャッシュされている場合、画面モデル構築部104が保持する画面モデルが、すでにキャッシュされた画面モデルへ置き換えられているか確認する(ステップST2203)。置き換えられていない場合、画面モデル構築部104が保持する画面モデルを、描画情報キャッシュ部107にキャッシュしている次画面の画面モデルへ置き換え(ステップST2204)。すでに置き換えられている場合、ステップST2204は実行されない。
ステップST2203またはステップST2204の後、画面モデル構築部104は、当該イベントの処理が除外部品に関連するものか否かを確認する(ステップST2205)。当該イベントの処理が除外部品に関連するものであれば、除外部品の内容を更新するために、ステップST702へ移行して、当該イベントを処理する。当該イベントの処理が除外部品に関連するものでなければ、ステップST702をスキップして、ステップST701に戻る。
実施の形態4に係るUI装置によれば、不確定部品または動的変化部品など、実際に画面に表示を行う時点にならないと内容が定まらないUI部品を含む画面も含めて、次画面の画面モデルを構築してキャッシュすることできる。それにより、高速な画面遷移が可能なUI装置を実現できる。
<実施の形態5>
実施の形態1のUI装置では、除外部品か否かを示すUI部品パラメータ値をUI部品ごとに予め(例えば、画面の設計段階で)定めておくことで、そのUI部品が除外部品であるかを判断していたが、実施の形態5では、除外部品か否かを示すUI部品パラメータ値以外の情報、例えば、他の情報を示すUI部品パラメータ値や、発生したイベントの内容、その他の動的な情報などに基づいて、どのUI装置を除外部品にするかを決定するUI装置を示す。本実施の形態において、どのUI装置を除外部品にするかを決定するために用いる情報を、「除外部品決定情報」と称する。
図23は、実施の形態5に係るUI装置の構成図である。当該UI装置は、図1の構成に対し、画面モデル構築部104と除外部品抽出部105との間に、除外部品決定部2301を追加した構成となっている。
除外部品決定部2301は、キャッシュ対象部品群に含まれるUI部品のうちから、除外部品とするものを決定する処理を行う。以下、この処理の流れを、図24のフローチャートを参照して説明する。なお、本実施の形態では、各UI部品が有する除外部品か否かを示すUI部品パラメータ値は、初期値として「偽(FALSE)」(除外部品ではない)が設定されている。
除外部品決定部2301は、まず、キャッシュ対象部品群のすべてのUI部品をチェックしたか否かを確認する(ステップST2401)。すべてのUI部品のチェックが完了していれば、除外部品決定部2301は、そのまま処理を終了する。
チェックしていないUI部品が残っている場合、画面モデル構築部104からチェック対象のUI部品に関する除外部品決定情報を取得し、その除外部品決定情報に基づいて当該UI部品が除外部品であるか否かを判定する(ステップST2402)。除外部品決定情報は、除外部品の判定方法によって異なるが、例えば、UI部品パラメータ値、発生したイベントの内容、あるいは、その他のUI装置が保持する動的な情報などである。判定方法の例については後述する。
その後、除外部品決定部2301は、チェックしたUI部品が除外部品と判定されたか否かを確認する(ステップST2403)。当該UI部品が除外部品と判定されなかった場合、ステップST2401へ戻る(当該UI部品の除外部品か否かを示すUI部品パラメータ値は「偽」で維持される)。当該UI部品が除外部品と判定された場合は、当該UI部品における除外部品か否かを示すUI部品パラメータ値を「真(TRUE)」に設定してから(ステップST2404)、ステップST2401へ戻る。
ステップST2402における除外部品の判定方法としては、例えば、
(a)現在の画面モデルと過去の画面モデルと比較して、他のUI部品との相対位置が変化しているUI部品を除外部品として判断する
(b)連続的に表示内容が更新されるアニメーションイベントが設定または有効化がされているUI部品を除外部品として判断する
(c)タイマイベントあるいはジェスチャイベントなど、UI部品自身の表示内容を更新するイベントが設定あるいは有効化されているUI部品を除外部品とする
(d)時刻、温度、電波受信状況などのハードウェア情報あるいはアプリケーション情報が表示内容に含まれるUI部品を除外部品として判断する
などの方法が考えられる。
実施の形態5に係るUI装置によれば、画面の内容やアプリケーションの実行状況に応じて、動的に除外部品を変更することができる。また、除外部品か否かを示すUI部品パラメータ値を予め設定しておく必要がないため、画面の設計およびUI部品の管理が容易になる。
<実施の形態6>
実施の形態1のUI装置では、キャッシュ対象か否かを示すUI部品パラメータ値をUI部品ごとに予め(例えば、画面の設計段階で)定めておくことで、キャッシュ対象部品群を抽出できるようにしていたが、実施の形態6では、除外部品か否かを示すUI部品パラメータ値以外の情報、例えば、他の情報を示すUI部品パラメータ値や、発生したイベントの内容、その他の動的な情報などから「描画傾向」を算出し、それに基づいてキャッシュ対象部品群の抽出および除外部品の決定を行ってもよい。
ここで、「描画傾向」とは、過去に表示された画面およびUI部品の描画情報、あるいは、予め用意された描画情報に関する統計データに基づく、画面モデルまたはUI部品の構造的特徴ないしはUI部品パラメータ値の数値的特徴として定義される。例えば、過去の画面遷移において下位のUI部品(子UI部品)の構造が変化した回数をUI部品ごとに記録したマップと、過去にUI部品パラメータ値が変化した回数をUI部品ごとに記録したマップとを、描画傾向として算出する方法がある。また、イベント処理の履歴から、ユーザの利用履歴を表すマップ、各ハードウェアデバイスの負荷状況を表すマップ、アプリケーションの実行状況を表すマップ、あるいは、それらの組み合わせを描画傾向をとして算出してもよい。
さらに、描画傾向の算出方法としては、UI部品の構造変化やUI部品パラメータ値の変化回数を単純にカウントするのではなく、加重平均あるいは機械学習などの統計的手法を用いてもよい。機械学習の手法の1つであるディープラーニングなど、描画傾向を算出するために多くのハードウェアリソースが要求される場合、クラウドサービス上などUI装置以外の装置で算出処理を実施し、外部からネットワーク経由で処理結果を取得し、処理結果を描画傾向としてもよい。
図25は、実施の形態6におけるUI装置の構成図である。当該UI装置は、図23の構成に対し、さらに描画傾向推定部2501、描画傾向保持部2502およびキャッシュ対象部品決定部2503を設けた構成となっている。
描画傾向推定部2501は、画面モデル構築部104で更新された画面モデルの内容と、描画傾向保持部2502で保持されている描画傾向とから、現在の描画傾向を推定し、描画傾向保持部2502へ描画傾向を登録する処理を行う。以下、この処理の流れを、図26のフローチャートを参照して説明する。
描画傾向推定部2501は、まず、画面モデル構築部104から現在の画面モデルを取得し(ステップST2601)、当該画面モデルを構成するUI部品の描画傾向を描画傾向保持部2502から取得する(ステップST2602)。そして、描画傾向推定部2501は、取得した画面モデルとUI部品の描画傾向とから、新たな描画傾向を算出する(ステップST2603)。
例えば、子UI部品の構造の変化回数をUI部品ごとに記録したマップと、UI部品パラメータ値の変化回数をUI部品ごとに記録したマップとが描画傾向として用いられている場合、ステップST2503においては、前回の描画時の画面モデルと現在の画面モデルとを比較して、子UI部品の構造あるいはUI部品パラメータ値が変化したUI部品を抽出し、その変化回数に1を加算する処理が行われる。また、マップに存在しないUI部品の子UI部品の構造あるいはUI部品パラメータ値が変化しときは、そのUI部品に対応する要素をマップに追加される処理が行われる。
その後、描画傾向推定部2501は、算出した新たな描画傾向を描画傾向保持部2502へ送信する(ステップST2604)。
描画傾向保持部2502は、描画傾向を保持するためのキャッシュを持ち、描画傾向推定部2501から受信した描画傾向を登録して保持する処理を行う。以下、この処理の流れを、図27のフローチャートを用いて説明する。
描画傾向保持部2502は、まず、描画傾向推定部2501から受信したすべてのUI部品の描画傾向を登録したか確認する(ステップST2701)。すべてのUI部品の描画傾向の登録が完了していれば、描画傾向保持部2502はそのまま処理を終了する。登録すべき描画傾向が残っている場合、描画傾向保持部2502は、残りの描画傾向を登録する処理を行うが、このとき描画傾向を登録するUI部品と同じUI部品の描画傾向が既に登録されているか否かを確認する(ステップST2702)。同じUI部品の描画傾向が既に登録されていれば、登録されている描画傾向を最新の描画傾向に置き換える(ステップST2703)。同じUI部品の描画傾向が登録されていなければ、当該UI部品の描画情報を、新たなUI部品の描画傾向として登録する(ステップST2704)。
図27では、描画傾向保持部2502に、各UI部品の最新の描画傾向だけが登録されるようにしたが、最新の描画傾向だけでなく、過去の描画傾向も補助的な情報として登録しておき、必要に応じて、過去の描画傾向も描画傾向の算出に利用してもよい。
なお、描画傾向保持部2502は、描画傾向推定部2501、キャッシュ対象部品決定部2503または除外部品決定部2301からの要求に応じて、登録されている描画傾向を取得する処理も行う。このとき、取得したいUI部品の描画傾向が登録されていればその描画傾向を取得するが、取得したいUI部品の描画傾向がキャッシュに登録されていなければ、要求元へ登録されていない旨が通知される。
キャッシュ対象部品決定部2503は、画面モデル構築部104が保持する画面モデルに対して、描画傾向保持部2502に登録されている描画傾向からキャッシュ対象部品群を決定する処理を行う。以下、この処理を、図28のフローチャートを参照して説明する。
まず、キャッシュ対象部品決定部2503は、画面モデル構築部104から画面モデルを取得すると共に、当該画面モデルを構成するすべてのUI部品の描画傾向を描画傾向保持部2502から取得する(ステップST2801)。次に、キャッシュ対象部品決定部2503は、取得した画面モデルおよびUI部品の描画傾向とに基づいて、キャッシュ対象部品群を決定する(ステップST2802)。
キャッシュ対象部品群の決定方法としては、例えば、子UI部品の構造の変化回数をUI部品ごとに記録したマップと、UI部品パラメータ値の変化回数をUI部品ごとに記録したマップを参照し、画面モデルを構成する各UI部品の中で、変化回数が0回または変化回数が未登録の最も上位の階層に属するUI部品をルートとしたサブグラフを、キャッシュ対象部品群とする方法がある。
キャッシュ対象部品群が決定すると、キャッシュ対象部品決定部2503は、決定したキャッシュ対象部品群に含まれる各UI部品のUI部品パラメータ値を、当該UI部品がキャッシュ対象であることを示すように更新する(ステップST2803)。
ここで、実施の形態6の除外部品決定部2301は、キャッシュ対象部品決定部2503で決定したキャッシュ対象部品群の中から、除外部品を決定する。実施の形態5の除外部品決定部2301との動作の違いは、図24のステップST2401において、除外部品であるかどうかを判定するために必要な情報として描画傾向保持部2502に登録されている描画傾向を取得する点と、ステップST2403において、描画傾向を用いて除外部品を決定する点である。
例えば、除外部品の決定方法としては、例えば、子UI部品の構造の変化回数をUI部品ごとに記録したマップと、UI部品パラメータ値の変化回数をUI部品ごとに記録したマップを参照し、キャッシュ対象部品群の中から変化回数が予め定められた閾値以上のUI部品を除外部品に決定する方法がある。
実施の形態6に係るUI装置によれば、画面の内容やアプリケーションの実行状況に応じて、動的にキャッシュ対象部品群ないしは除外部品を変更することができる。また、キャッシュ対象部品群か否かを示すUI部品パラメータ値を予め設定しておく必要がないため、画面の設計およびUI部品の管理が容易になる。
<実施の形態7>
実施の形態1〜6では、1つのUI装置ですべての処理を実施することを想定していたが、キャッシュ情報生成部106、統合UI部品生成部1201、マスク領域生成部1601、画面モデル事前生成部2001、除外部品決定部2301、描画傾向推定部2501、キャッシュ対象部品決定部2503のうち、1つ以上の構成を、ネットワークで結合された外部の実行装置(以下「外部装置」という)で実施してもよい。特に、除外部品が除かれたキャッシュ対象部品群に関する処理は、動的あるいはリアルタイムに変動する情報を扱うことが少ないため、容易に外部装置へ処理を委託することが可能である。
図29は、実施の形態7に係るUI装置の構成図である。当該UI装置は、図1の構成に対し、代理実行判断部2901および代理実行委託部2902を追加した構成となっている。当該UI装置は、キャッシュ情報生成部106が行う処理、すなわちキャッシュ対象部品群から描画情報キャッシュ部107にキャッシュする描画情報(キャッシュ情報)を生成する処理を外部装置に代理実行させることが可能なように構成されている。
代理実行判断部2901は、除外部品抽出部105から受信したキャッシュ対象部品群からキャッシュ情報を生成する処理を、UI装置内のキャッシュ情報生成部106で実行するか、外部装置に代理実行させるかを判断する処理を行う。以下、この処理の流れを、図30のフローチャートを参照して説明する。
代理実行判断部2901は、まず、外部装置へ代理実行を委託可能かどうか確認する(ステップST3001)。外部装置へ代理実行を委託できない場合の例としては、外部処理と通信するネットワークが利用不可能な場合や、外部装置が他の処理を実施中である場合などがある。
外部装置へ代理実行を委託可能な場合、代理実行判断部2901は、処理内容が外部装置へ代理実行を委託すべき内容かどうかを判断する(ステップST3002)。この判断は、例えば、委託する処理の計算量、委託する処理のリアルタイム性、UI装置のハードウェア負荷状況などの情報に基づいて行われる。また、過去の統計情報や学習データから判断してもよい。図29のUI装置において、外部装置に委託する処理の計算量は、キャッシュ対象部品群からキャッシュ情報を生成する処理の計算量に対応する。この計算量の推定方法としては、例えば、UI部品の種類(画像部品、テキスト部品など)ごとに重み付けして計算した、キャッシュ対象部品群に含まれるUI部品の総数を計算量とする方法などが考えられる。
処理内容が外部装置へ委託すべきものであった場合、代理実行判断部2901は、代理実行判断部2901は、外部装置に当該処理の代理実行を委託すると判断する(ステップST3003)。この場合、代理実行判断部2901は、代理実行委託部2902へ、代理実行を実施する旨を通知して、代理実行に必要なデータを送信する。図29のUI装置においては、代理実行判断部2901から代理実行委託部2902へ、キャッシュ対象部品群が送信される。
一方、外部装置へ代理実行を委託可能な場合、および、処理内容が外部装置へ委託すべきものではなかった場合には、UI装置内で当該処理を実行すると判断する(ステップ3004)。この場合、実施の形態1と同様に、キャッシュ情報生成部106がキャッシュ情報を生成する。
代理実行委託部2902は、代理実行判断部2901において外部装置に処理を委託すると判断された場合に、外部装置へキャッシュ情報の生成処理を委託し、外部装置で生成されたキャッシュ情報を取得する処理を行う。以下、この処理の流れを、図31のフローチャートを参照して説明する。
代理実行委託部2902は、まず、代理実行の委託に必要なデータを外部装置へネットワーク経由で送信する(ステップST3101)。図29のUI装置において、外部装置へ送信するデータは、キャッシュ対象部品群である。その後、代理実行委託部2902は、外部装置から処理完了通知があるまで待機する(ステップST3102)。代理実行委託部2902は、外部装置から処理完了通知を受信すると、外部装置から処理結果を取得する(ステップST3103)。図29のUI装置では、代理実行委託部2902は、外部装置から、処理結果としてキャッシュ情報を取得する。
なお、ステップST3102においては、処理完了通知があるのを待つのではなく、代理実行委託部2902が一定間隔で処理が完了したかどうかを外部装置へ問い合わせる方法をとってもよい。あるは、ステップST3102とステップST3103を1つのステップとし、外部装置から送信される処理結果を処理完了通知とみなしてもよい。
図29では、キャッシュ情報生成部106の処理を外部装置に委託する構成のUI装置を示したが、実施の形態1〜6に示したキャッシュ情報生成部106、統合UI部品生成部1201、マスク領域生成部1601、画面モデル事前生成部2001、除外部品決定部2301、描画傾向推定部2501、キャッシュ対象部品決定部2503のうちの1つ以上の処理を外部装置に委託するようにしても。その場合も同様に、外部装置へ処理を委託したい要素(機能ブロック)の前に、代理実行判断部2901を配置し、当該要素と並列に代理実行委託部2902を配置すればよい。また、外部装置との間の通信路を流れるデータ量を抑えるために、画面データ記憶部103に記憶されている画面データなど、委託処理に必要なデータの複製を外部装置に配備してもよい。
実施の形態7に係るUI装置によれば、描画処理の一部を異なる外部装置で実行することで、UI装置における処理負荷を分散することができ、描画性能を向上することができる。
<実施の形態8>
実施の形態1における画面モデルの構築処理は、画面モデルを構成する各UI部品のUI部品パラメータ値の決定処理を、各UI部品は除外部品であるかどうかに関わらず、任意の順番で実行できると仮定した場合の例である。しかしながら、除外部品のUI部品パラメータ値に基づいて自身のUI部品パラメータ値を決定するUI部品が存在する場合、除外部品のUI部品パラメータ値が変化すれば、そのUI部品パラメータ値も変化するので、除外部品のUI部品パラメータ値の方を先に決定する必要がある。その場合、例えば、除外部品と依存関係のあるUI部品も除外部品であるとみなして扱うとよい。ここで、2つのUI部品(第1のUI部品および第2のUI部品とする)に依存関係がある場合とは、第1のUI部品が第2のUI部品のデータを参照する場合、あるいは、第2のUI部品における関数呼び出しなどの作用が第1のUI部品に及ぶ場合と定義される。
図32は、実施の形態8におけるUI装置を示す構成図である。当該UI装置は、図1の構成に対し、依存関係抽出部3201を追加した構成となっている。依存関係抽出部3201は、画面モデル構築部104が保持する画面モデルに対して、依存関係を抽出する処理を行う。以下、この処理の流れを、図33のフローチャートを参照して説明する。
依存関係抽出部3201は、まず、画面モデル構築部104に保持されている画面モデルの構造が更新されたか否かを確認する(ステップST3301)。画面モデルの構造が更新されていない場合、依存関係抽出部3201は、ステップST3302を実行せずに処理を終了する。
画面モデルの構造が更新された場合、依存関係抽出部3201は、画面モデルから各UI部品の依存関係を抽出する(ステップST3302)。依存関係の抽出方法としては、例えば、動的プログラム解析やユーザの入力予測などによって、依存グラフを作成する方法がある。あるいは、画面モデルの階層構造において親子関係(上位、下位の関係)にあるUI部品同士にのみ依存関係を認めるように制約し、依存関係を容易に抽出できるようにしてもよい。
図32のUI部品における除外部品抽出部105は、実施の形態1と同様の方法で抽出した除外部品(除外部品であることを示すUI部品パラメータ値を持つUI部品)に加えて、その除外部品に依存するUI部品も除外部品として抽出する。この処理は、依存関係抽出部3201が抽出したUI部品同士の依存関係に基づいて行われる。
実施の形態8に係るUI装置によれば、除外部品に依存するUI部品も除外部品として指定することで、描画内容の不整合を引き起こすことなく、除外部品とそれ以外のキャッシュ対象部品群とを分離することができる。
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
この発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、この発明がそれに限定されるものではない。例示されていない無数の変形例が、この発明の範囲から外れることなく想定され得るものと解される。
101 入力部、102 イベント取得部、103 画面データ記憶部、104 画面モデル構築部、105 除外部品抽出部、106 キャッシュ情報生成部、107 描画情報キャッシュ部、108 除外部品合成部、109 描画処理部、110 表示部、210 入力装置、220 コンピュータ、221 処理装置、222 記憶装置、230 表示装置、1201 統合UI部品生成部、1601 マスク領域生成部、1602 マスク処理部、2001 画面モデル事前生成部、2301 除外部品決定部、2501 描画傾向推定部、2502 描画傾向保持部、2503 キャッシュ対象部品決定部、2901 代理実行判断部、2902 代理実行委託部、3201 依存関係抽出部。

Claims (9)

  1. UI(ユーザインタフェース)の画面を構成する複数のUI部品のうちのキャッシュ対象部品群から、発生するイベントの内容に基づいて、不確定部品または動的変化部品を除外部品として取り除く除外部品抽出部と
    前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を生成するキャッシュ情報生成部と
    前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報が登録される描画情報キャッシュ部と
    前記描画情報キャッシュ部に登録されている前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を用いた画面の描画が実施される際、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報に、前記除外部品に対応する描画情報を合成する除外部品合成部と、を備える
    ことを特徴とするユーザインタフェース装置。
  2. 前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報に対応する統合UI部品を生成し、前記統合UI部品の描画情報を前記描画情報キャッシュ部に登録する統合UI部品生成部をさらに備える
    請求項1に記載のユーザインタフェース装置。
  3. 前記除外部品と当該除外部品が取り除かれたUI部品群との重なり領域に対応するマスク領域を生成し、前記マスク領域を前記描画情報キャッシュ部に登録するマスク領域生成部と
    前記描画情報キャッシュ部に登録されている前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を用いた画面の描画が実施される際、前記除外部品に対応する描画情報に対し、前記描画情報キャッシュ部に登録されている前記マスク領域を適用するマスク処理部と、をさらに備える
    請求項1または請求項2に記載のユーザインタフェース装置。
  4. 現画面から遷移可能な画面の描画情報を事前に生成し、前記描画情報キャッシュ部に登録する画面モデル事前生成部をさらに備える
    請求項1または請求項2に記載のユーザインタフェース装置。
  5. 前記キャッシュ対象部品群が保持するパラメータ値に基づいて、前記除外部品を決定する除外部品決定部をさらに備える
    請求項1または請求項2に記載のユーザインタフェース装置。
  6. 画面モデルまたはUI部品の構造的特徴ないしはUI部品パラメータ値の数値的特徴である描画傾向が登録される描画傾向保持部と、
    前記描画傾向を推定して、前記描画傾向保持部に登録する描画傾向推定部と、
    前記描画傾向に基づいて前記キャッシュ対象部品群を決定するキャッシュ対象部品決定部と、
    前記描画傾向に基づいて前記除外部品を決定する除外部品決定部と、をさらに備える
    請求項1または請求項2に記載のユーザインタフェース装置。
  7. 処理の一部の代理実行を外部装置に委託するかどうかを判断する代理実行判断部と、
    前記代理実行判断部が外部装置に代理実行を委託する判断をしたときに、外部装置へ当該代理実行を委託する代理実行委託部をさらに備える
    請求項1または請求項2に記載のユーザインタフェース装置。
  8. 前記除外部品と当該除外部品が取り除かれた前記キャッシュ対象部品群との間の依存関係を抽出する依存関係抽出部をさらに備え、
    前記キャッシュ対象部品群のうち前記除外部品に依存するUI部品は、前記除外部品と判断される
    請求項1または請求項2に記載のユーザインタフェース装置。
  9. ユーザインタフェース装置の画面表示方法であって、
    前記ユーザインタフェース装置の除外部品抽出部が、画面を構成する複数のUI部品のうちのキャッシュ対象部品群から、発生するイベントの内容に基づいて、不確定部品または動的変化部品を除外部品として取り除き、
    前記ユーザインタフェース装置のキャッシュ情報生成部が、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を生成し、
    前記ユーザインタフェース装置の描画情報キャッシュ部が、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を登録し、
    前記描画情報キャッシュ部に登録されている前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報を用いた画面の描画が実施される際、前記ユーザインタフェース装置の除外部品合成部が、前記除外部品が取り除かれた前記キャッシュ対象部品群の描画情報に、前記除外部品に対応する描画情報を合成する
    ことを特徴とするユーザインタフェース装置の画面表示方法。
JP2015551888A 2015-05-19 2015-05-19 ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法 Active JP5866085B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/064246 WO2016185551A1 (ja) 2015-05-19 2015-05-19 ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法

Publications (2)

Publication Number Publication Date
JP5866085B1 true JP5866085B1 (ja) 2016-02-17
JPWO2016185551A1 JPWO2016185551A1 (ja) 2017-06-01

Family

ID=55347016

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015551888A Active JP5866085B1 (ja) 2015-05-19 2015-05-19 ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法

Country Status (5)

Country Link
US (1) US20180143747A1 (ja)
JP (1) JP5866085B1 (ja)
CN (1) CN107615229B (ja)
DE (1) DE112015006547T5 (ja)
WO (1) WO2016185551A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110221898A (zh) * 2019-06-19 2019-09-10 北京小米移动软件有限公司 息屏画面的显示方法、装置、设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6620614B2 (ja) * 2016-03-10 2019-12-18 コニカミノルタ株式会社 表示装置、画面表示方法、画面表示プログラム及び画像処理装置
US10853347B2 (en) * 2017-03-31 2020-12-01 Microsoft Technology Licensing, Llc Dependency-based metadata retrieval and update

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001258888A (ja) * 2000-03-15 2001-09-25 Toshiba Corp 超音波診断の装置及びその方法、画像診断のシステム及びその方法、並びに課金方法
JP2010026051A (ja) * 2008-07-16 2010-02-04 Seiko Epson Corp 画像表示装置および画像表示装置制御用のプログラム
JP2011187051A (ja) * 2010-02-15 2011-09-22 Canon Inc 情報処理装置およびその制御方法
JP2013083822A (ja) * 2011-10-11 2013-05-09 Canon Inc 情報処理装置、及びその制御方法
JP2014147047A (ja) * 2013-01-30 2014-08-14 Fujitsu Semiconductor Ltd 画像処理装置、方法、及びプログラム、並びに撮像装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6606746B1 (en) * 1997-10-16 2003-08-12 Opentv, Inc. Interactive television system and method for displaying a graphical user interface using insert pictures
JP4032641B2 (ja) * 2000-12-08 2008-01-16 富士ゼロックス株式会社 Gui装置およびgui画面表示プログラムを記録したコンピュータ読み取り可能な記憶媒体
US6919891B2 (en) * 2001-10-18 2005-07-19 Microsoft Corporation Generic parameterization for a scene graph
US7441047B2 (en) * 2002-06-17 2008-10-21 Microsoft Corporation Device specific pagination of dynamically rendered data
US20040012627A1 (en) * 2002-07-17 2004-01-22 Sany Zakharia Configurable browser for adapting content to diverse display types
EP1629377A2 (en) * 2003-06-05 2006-03-01 Swiss Reinsurance Company Method and terminal for generating uniform device-independent graphical user interfaces
US8645848B2 (en) * 2004-06-02 2014-02-04 Open Text S.A. Systems and methods for dynamic menus
US7750924B2 (en) * 2005-03-15 2010-07-06 Microsoft Corporation Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
US20070210937A1 (en) * 2005-04-21 2007-09-13 Microsoft Corporation Dynamic rendering of map information
US7743334B2 (en) * 2006-03-02 2010-06-22 Microsoft Corporation Dynamically configuring a web page
US9037974B2 (en) * 2007-12-28 2015-05-19 Microsoft Technology Licensing, Llc Creating and editing dynamic graphics via a web interface
US9418171B2 (en) * 2008-03-04 2016-08-16 Apple Inc. Acceleration of rendering of web-based content
WO2012068520A2 (en) * 2010-11-18 2012-05-24 Google Inc. On-demand auto-fill
CN102081650A (zh) * 2010-12-29 2011-06-01 上海网达软件有限公司 嵌入式平台用户界面加速显示的方法
US20130093764A1 (en) * 2011-10-18 2013-04-18 Research In Motion Limited Method of animating a rearrangement of ui elements on a display screen of an electronic device
US10229222B2 (en) * 2012-03-26 2019-03-12 Greyheller, Llc Dynamically optimized content display
EP3099081B1 (en) * 2015-05-28 2020-04-29 Samsung Electronics Co., Ltd. Display apparatus and control method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001258888A (ja) * 2000-03-15 2001-09-25 Toshiba Corp 超音波診断の装置及びその方法、画像診断のシステム及びその方法、並びに課金方法
JP2010026051A (ja) * 2008-07-16 2010-02-04 Seiko Epson Corp 画像表示装置および画像表示装置制御用のプログラム
JP2011187051A (ja) * 2010-02-15 2011-09-22 Canon Inc 情報処理装置およびその制御方法
JP2013083822A (ja) * 2011-10-11 2013-05-09 Canon Inc 情報処理装置、及びその制御方法
JP2014147047A (ja) * 2013-01-30 2014-08-14 Fujitsu Semiconductor Ltd 画像処理装置、方法、及びプログラム、並びに撮像装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110221898A (zh) * 2019-06-19 2019-09-10 北京小米移动软件有限公司 息屏画面的显示方法、装置、设备及存储介质
CN110221898B (zh) * 2019-06-19 2024-04-30 北京小米移动软件有限公司 息屏画面的显示方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN107615229B (zh) 2020-12-29
CN107615229A (zh) 2018-01-19
JPWO2016185551A1 (ja) 2017-06-01
DE112015006547T5 (de) 2018-02-15
WO2016185551A1 (ja) 2016-11-24
US20180143747A1 (en) 2018-05-24

Similar Documents

Publication Publication Date Title
JP6659644B2 (ja) 応用素子の代替的グラフィック表示の事前の生成による入力に対する低レイテンシの視覚的応答およびグラフィック処理ユニットの入力処理
KR101511819B1 (ko) 영상 센서에 기반한 인간 기계장치 인터페이스를 제공하는 방법 시스템 및 소프트웨어
US8810576B2 (en) Manipulation and management of links and nodes in large graphs
KR102108583B1 (ko) 인스턴스화가능한 제스처 객체
US20110258534A1 (en) Declarative definition of complex user interface state changes
CN102937861B (zh) 用于显示环境的共享边缘
KR20160003683A (ko) 시각화된 데이터를 상호작용에 기초하여 자동으로 조작하는 기법
KR102205283B1 (ko) 적어도 하나의 어플리케이션을 실행하는 전자 장치 및 그 제어 방법
JP2018509686A (ja) インクストロークの編集および操作
JP5866085B1 (ja) ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法
CN105359104B (zh) 状态信息的同步点
KR20200048606A (ko) 사용자 입력의 패턴 분석을 이용한 후속 사용자 입력 추천 방법
JP2016528612A5 (ja)
JP2016528612A (ja) 定義されたクロス制御挙動による制御応答レイテンシの短縮
CN110727383A (zh) 基于小程序的触控交互方法、装置、电子设备与存储介质
US20170364248A1 (en) Segment eraser
US11586803B2 (en) Pre-children in a user interface tree
CN108885556A (zh) 控制数字输入
US11586338B2 (en) Systems and methods for animated computer generated display
US11379194B2 (en) Systems and methods for automatic code generation
CN104267954A (zh) 一种用户界面中所包含的部件的生成方法和装置
JP6624767B1 (ja) 情報処理システム及び情報処理方法
AU2017418322B2 (en) Rules based user interface generation
CN105210019A (zh) 对异步操纵的用户界面响应
US9733783B1 (en) Controlling a user interface

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151228

R150 Certificate of patent or registration of utility model

Ref document number: 5866085

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250