JP5972509B1 - 描画装置 - Google Patents

描画装置 Download PDF

Info

Publication number
JP5972509B1
JP5972509B1 JP2016524554A JP2016524554A JP5972509B1 JP 5972509 B1 JP5972509 B1 JP 5972509B1 JP 2016524554 A JP2016524554 A JP 2016524554A JP 2016524554 A JP2016524554 A JP 2016524554A JP 5972509 B1 JP5972509 B1 JP 5972509B1
Authority
JP
Japan
Prior art keywords
container
processing unit
containers
drawing object
tree structure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2016524554A
Other languages
English (en)
Other versions
JPWO2017009901A1 (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 JP5972509B1 publication Critical patent/JP5972509B1/ja
Publication of JPWO2017009901A1 publication Critical patent/JPWO2017009901A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

描画処理部1は、描画オブジェクトコンテナ4を用いて描画データ5を処理する。描画オブジェクトコンテナ4は、同じ描画オブジェクトを統一して操作可能に構成されている。クリッピング処理部2は、描画処理部1が描画データの処理を行う際に、描画オブジェクトコンテナ4内の領域に占める同じ描画オブジェクトをクリッピング処理する。描画実行部3は、描画処理部1で処理された描画データに対して、クリッピング処理された描画オブジェクトコンテナ4を配置して描画を行う。

Description

本発明は、ディスプレイリストをツリー構造で管理する描画装置に関するものである。
多くの描画処理系(例えば、OpenGL(登録商標)やAdobe Flash(登録商標)など)においては、描画オブジェクト・描画コマンドをディスプレイリストと呼ばれるデータ構造に保存し、まとめて描画処理を実行することで、高速な処理を実現する機能が備えられている。その中でも、2次元描画処理系においては、ディスプレイリストをツリー構造で管理している処理系が多く(例えばAdobe Flash)、このツリーの構造によって描画オブジェクトの重なり順を制御している。
図8にツリー構造で描画オブジェクトを管理する例を示す。この図では、角丸四角形、三角形、四角形がツリー801上に管理されており、ツリー801の左側が奥、右側が手前になるように設定されている場合、描画結果802が得られることを示している。
ここで、描画プログラムを作成する際には、Adobe Flashなどの描画処理系のAPI(Application Programming Interface)経由で、所望の重なり順で描画オブジェクトが並ぶように、このツリー構造を操作することになる。また、各描画オブジェクトは、ディスプレイリストの仕組み上、ツリーの中のある一箇所にのみにしか存在することができないという制約がある。そのため、プログラム作成者はこのようなツリー構造とその制約を理解し、考慮に入れながらプログラムを作成しなければならない。
例えば、従来、特許文献1では、描画オブジェクトの重なり順の制御について開示されている。また、特許文献2〜4では、ディスプレイリストがツリー構造で描画オブジェクトを管理していることを活かした描画の高速化に関する技術が開示されている。
特開平09−128556号公報 特開2014−016869号公報 特開2002−032750号公報 特開2010−274534号公報
しかしながら、上記特許文献1に記載されたような従来の装置では、ディスプレイリストのツリー構造を意識したものではなかった。また、特許文献2〜4に記載されている従来技術では、ツリー構造の特徴を活かした描画高速化手法が提供されているが、ツリー構造で重なり順を制御している都合上、ある描画オブジェクトがツリー構造中の異なるサブツリーの中間をすり抜けるような動きをするといった描画オブジェクトを配置することは非常に困難であった。
例えば、図9では、三角形と四角形があるルールによって配置されており、それぞれの組がサブツリーを作るようなツリー構造901となっている。この状態で、描画結果902のように四角形と三角形の間をすり抜けるような動きのアニメーションが適用される描画オブジェクト903を追加したい場合、ツリー構造による重なり順制御を考慮すると、ツリー構造中の描画オブジェクト904を置くべき箇所を簡単には定めることができず、所望の動作を実装することは困難である。仮に三角形Aと四角形Aの間に描画オブジェクト904を置いた場合には、そのサブツリー内に描画オブジェクト904が置かれているときには問題ないが、Bの描画オブジェクトが含まれるサブツリー内に描画オブジェクト904が移動したときには三角形Bと四角形Bの後ろ側に描画オブジェクトが表示されてしまい、所望の結果は得られない。同様にBのサブツリー内に描画オブジェクト904を置くことも考えられるが、そのときは常に三角形Aと四角形Aの手前に描画オブジェクト904が表示されてしまい、やはり所望の結果が得られない。
この発明は、かかる問題を解決するためになされたもので、自由な表現が可能な描画装置を得ることを目的とする。
この発明に係る描画装置は、それぞれが同じ任意の形状の描画オブジェクトを統一して操作可能な任意の形状の複数のコンテナを用いて2次元描画座標系の描画データを処理する描画処理部と、描画処理部が描画データの処理を行う際に、複数のコンテナの各コンテナの領域に占める同じ描画オブジェクトをクリッピング処理するクリッピング処理部と、描画処理部で処理された描画データに対して、クリッピング処理された複数のコンテナを予め定めた任意の位置に配置して描画を行う描画実行部とを備えたものである。
この発明に係る描画装置は、それぞれが同じ任意の形状の描画オブジェクトを統一して操作可能な任意の形状の複数のコンテナを用い、これらコンテナ内の描画オブジェクトをクリッピング処理して予め定めた任意の位置に配置するようにしたものである。これにより、自由な表現が可能な描画装置を得ることができる。
この発明の実施の形態1の描画装置の構成図である。 この発明の実施の形態1の描画装置のハードウェア構成図である。 この発明の実施の形態1の描画装置の動作を示す説明図である。 この発明の実施の形態1の描画装置の描画オブジェクトコンテナの処理の流れを示す説明図である。 この発明の実施の形態1の描画装置の動作を示すフローチャートである。 この発明の実施の形態2の描画装置のGUI上のリスト部品を示す説明図である。 この発明の実施の形態2の描画装置のディスプレイリストのツリー構造を示す説明図である。 ツリー構造で描画オブジェクトを管理する例を示す説明図である。 四角形と三角形の間をすり抜けるような動きのアニメーションが適用される描画オブジェクトを追加する場合の例を示す説明図である。
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
図1は、本実施の形態による描画装置の構成図である。
図示のように、本実施の形態による描画装置は、描画処理部1、クリッピング処理部2、描画実行部3を備える。描画処理部1は、描画オブジェクトコンテナ4を用いて2次元描画座標系の描画データ5を処理し、その処理結果を描画実行部3に渡す処理部であり、描画処理系のAPIを用いて構成されている。また、描画オブジェクトコンテナ4は、同じ描画オブジェクトのコピーを統一して操作可能なコンテナであり、複数個が設けられている。クリッピング処理部2は、描画処理部1が描画データ処理を行う際、描画オブジェクトコンテナ4内のコピーをクリッピング処理するための処理部である。描画実行部3は、描画処理部1で処理された描画データに対して、クリッピング処理部2でクリッピング処理された複数の描画オブジェクトコンテナ4を並べて配置して描画する処理部である。
図2に、実施の形態1の描画装置を実現するためのハードウェア構成図を示す。
この構成例では、計算機10と入力装置20と出力装置30とを有している。計算機10は、例えばパーソナルコンピュータからなり、処理装置11と記憶装置12を備える。処理装置11は、CPU(中央処理装置)を主体として構成され、記憶装置12は、ROMやRAMあるいはハードディスク装置からなる。入力装置20は、キーボードやマウスといったユーザが入力操作を行うためのデバイスであり、出力装置30は、ディスプレイやプリンタといった計算機10の処理結果を出力するデバイスである。また、図1の描画データ5は記憶装置12に格納され、描画処理部1、クリッピング処理部2及び描画実行部3は、それぞれの機能に対応したソフトウェアが記憶装置12に格納され、これらのソフトウェアを処理装置11が実行することにより実現されている。
本実施の形態の描画装置は、図9のような状況において、異なるサブツリーの中間をすり抜けるような動きをする描画オブジェクトを定義するための特殊コンテナを用意したものである。この特殊コンテナが描画オブジェクトコンテナ4であり、この描画オブジェクトコンテナ4は各サブツリーの任意の箇所にそれぞれ置くことができ、各描画オブジェクトコンテナ4が協調して動作することで、図9に示す描画オブジェクト903のような動きのアニメーションを実現することができる。以下、このような動作について詳細に説明する。
図3は、実施の形態1の描画装置の動作を示す説明図である。また、図4は、描画オブジェクトコンテナ4の処理の流れを示す説明図である。
本実施の形態の描画装置では、描画オブジェクトコンテナ4は、ツリー構造301のように、各サブツリーの任意の位置に配置することができるとする。図3においては、点線の角丸四角形が描画オブジェクトコンテナ4を表しており、図3中では描画オブジェクト302である。その状態で、描画オブジェクトコンテナ4(図4中では描画オブジェクト411)には同じ部品が対応しているが、実態としてはそれぞれが同じ部品のコピー(図4中の描画オブジェクト412)を持っており、そのコピーは全て統一して操作することができる(図4中の状態401)。ここで、統一して操作できるとは、例えば、アニメーション時の位置制御やサイズ制御などが同時になされることを指しており、描画オブジェクトに関する操作であれば他の操作でもよい。次に表示される際には、描画オブジェクトコンテナ4によって内部の部品は各描画オブジェクトコンテナ4の境界によってクリッピング表示される(図4中の状態402)。最後に、描画オブジェクトコンテナ4同士を並べて表示することで、あたかも単一の部品がそこに存在しているかのように見せることができる(図4中の状態403)。ここでは、分かりやすさのために、描画オブジェクトコンテナ4を隙間を空けずに水平方向に並べて表示しているが、描画オブジェクトコンテナ4間には任意の大きさの隙間があってもよく、また、その配置も整列の必要はなく任意の配置でよい。このように処理される描画オブジェクトコンテナ4をツリー構造301のように配置することで、描画結果304のように、異なるサブツリーに配置される描画オブジェクト間をすり抜けるような描画オブジェクト303を配置することができる。
図5は、実施の形態1の描画装置の動作を示すフローチャートである。
描画処理部1は、描画データ5に対して、描画オブジェクトコンテナ4を図3のツリー構造301のように配置し、データ処理を行う(ステップST1)。また、クリッピング処理部2は、図4の状態402に示すようなクリッピング処理を行う(ステップST2)。これにより、描画実行部3は、図4の状態403に示すように描画オブジェクトコンテナ4を連結して表示し(ステップST3)、図3の描画結果304を得る。
なお、上記説明では、一つの描画オブジェクトコンテナ4に含まれるコピーは一種類であったが、コピーは複数種類のものが含まれてもよい。
また、描画オブジェクトコンテナ4に含まれるコピーが描画オブジェクトコンテナ4の領域外にあるとき、描画実行部3は描画オブジェクトコンテナ4の描画処理そのものを省略することによって描画処理の高速化を行ってもよい。
このように、実施の形態1の描画装置では、描画オブジェクトコンテナ4という特殊コンテナを用いることによって、ディスプレイリストのツリー構造の各サブツリー間の各描画オブジェクトをすり抜けるような描画を簡単に実現することができる。さらに、状態402のクリッピング処理は一般的に高速に処理される描画処理であることと、描画実行部3による描画処理省略による高速化処理も可能であることを考慮すると、本発明を用いないときと比べて処理負荷もそれほどは大きくならない。
以上説明したように、実施の形態1の描画装置によれば、それぞれが同じ描画オブジェクトを統一して操作可能な複数のコンテナを用いて2次元描画座標系の描画データを処理する描画処理部と、描画処理部が描画データの処理を行う際に、複数のコンテナの各コンテナの領域に占める同じ描画オブジェクトをクリッピング処理するクリッピング処理部と、描画処理部で処理された描画データに対して、クリッピング処理された複数のコンテナを配置して描画を行う描画実行部とを備えたので、複数のコンテナが占める領域からのみ観察可能な単一の部品がそこに存在するように描画することができ、自由な表現が可能となる。
また、実施の形態1の描画装置によれば、描画処理部は、ツリー構造で描画オブジェクトを管理し、複数のコンテナの各コンテナをツリー構造のサブツリーの任意の位置に配置するようにしたので、例えば、サブツリーをまたがって他の描画オブジェクトの間をすり抜けるような描画オブジェクトを描画する、といった、ツリー構造の制約に縛られない自由な表現を行うことができる。
また、実施の形態1の描画装置によれば、複数のコンテナの各コンテナは、同じ描画オブジェクトを複数統一して操作するようにしたので、さらに自由な表現を可能とすることができる。
また、実施の形態1の描画装置によれば、描画実行部は、同じ描画オブジェクトがコンテナの領域外に位置するとき、コンテナの描画処理を省略するようにしたので、描画処理を高速化することができる。
実施の形態2.
実施の形態1では、描画装置として一般的な使用例について述べたが、実施の形態2では、Graphical User Interface(GUI)上のリスト部品に本発明の描画装置を適用した例を説明する。なお、実施の形態2における描画装置の構成は図1に示した実施の形態1の構成と同様であるため、ここでの説明は省略する。
図6は、GUI上のリスト部品を示しており、リスト601の各アイテムは文字列(例えば部品602)と背景模様(例えば部品603)を含んでいる。また、このリスト601はリスト中の選択されているアイテムをグレーのカーソル604によって示す機能を持っており、カーソルキー操作などによってカーソル604は滑らかにアニメーションする(状態611→612→613のようなアニメーション)。ここで、デザインの都合上、カーソル604は各アイテムの文字列と背景模様の間をすり抜けるように移動することになっている。すなわち、カーソル604は各サブツリーの複数の描画オブジェクト間をすり抜ける描画オブジェクトとなっている。
また、3番目のアイテム605(CCCC表示のアイテム)は薄く表示されているが、これはアイテムが無効状態であることを示しており、この場合にはカーソル604は文字列よりさらに手前を通過するというデザインである(状態614→615→616のようなアニメーション)。すなわち、アイテム605と他のアイテムではサブツリー内でカーソル604がすり抜ける位置が異なるということである。
このようなデザインのリストを実現しようとしたとき、上述したように従来技術では実現することは非常に困難である。そこで、本発明の描画装置の特殊コンテナである描画オブジェクトコンテナ4を各サブツリーに配置し、通常は文字列と背景模様の間に、無効状態になったときには文字列より手前に特殊コンテナの位置を設定することで、所望の見た目を実現できる。
図7には、このときのディスプレイリストのツリー構造701を示している。図3と同様、描画オブジェクトコンテナ4は点線の角丸四角形で示している。図7に示す通り、サブツリー702、703、705、706、707では、カーソル604(図6参照)は文字列と背景模様の間をすり抜けなければならないため、描画オブジェクトコンテナ4はツリー構造701上の中間位置に配置されている。一方で、サブツリー704では、アイテム605は無効状態であり、カーソル604は文字列よりも手前をすり抜ける必要があるため、ツリー構造701上では描画オブジェクトコンテナ4は右位置(手前位置)に配置されている。
また、なんらかのきっかけによって無効状態が切り替わった際には、描画処理部1は、描画オブジェクトコンテナ4のツリー構造701上の位置を変えればよいことになる。
以上のように、サブツリーごとに、描画オブジェクトのすり抜ける位置が異なるデザインであっても、描画オブジェクトコンテナ4を置く位置を適切に設定することで簡単に所望の描画を実現することができる。さらに、描画オブジェクトコンテナ4のサブツリー内での位置を変更することによって、動的にすり抜ける描画オブジェクトのすり抜け方を変化させることも簡単に実現することができる。
以上説明したように、実施の形態2の描画装置によれば、描画処理部は、各コンテナのサブツリー内での位置を動的に変更するようにしたので、表示内容を動的に変更することができる。
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
以上のように、この発明に係る描画装置は、ディスプレイリストをツリー構造で管理し、描画オブジェクトの重なり順を管理する構成に関するものであり、2次元描画処理系で同じサブツリーに属するオブジェクト間の重なり順制御を行うのに適している。
1 描画処理部、2 クリッピング処理部、3 描画実行部、4 描画オブジェクトコンテナ、5 描画データ。

Claims (5)

  1. それぞれが同じ任意の形状の描画オブジェクトを統一して操作可能な任意の形状の複数のコンテナを用いて2次元描画座標系の描画データを処理する描画処理部と、
    前記描画処理部が前記描画データの処理を行う際に、前記複数のコンテナの各コンテナの領域に占める前記同じ任意の形状の描画オブジェクトをクリッピング処理するクリッピング処理部と、
    前記描画処理部で処理された描画データに対して、前記クリッピング処理された複数のコンテナを予め定めた任意の位置に配置して描画を行う描画実行部とを備えた描画装置。
  2. 前記描画処理部は、ツリー構造で描画オブジェクトを管理し、前記複数のコンテナの各コンテナを前記ツリー構造のサブツリーの任意の位置に配置することを特徴とする請求項1記載の描画装置。
  3. 前記複数のコンテナの各コンテナは、前記同じ描画オブジェクトを複数統一して操作することを特徴とする請求項1記載の描画装置。
  4. 前記描画実行部は、前記同じ描画オブジェクトがコンテナの領域外に位置するとき、当該コンテナの描画処理を省略することを特徴とする請求項1記載の描画装置。
  5. 前記描画処理部は、前記各コンテナの前記サブツリー内での位置を動的に変更することを特徴とする請求項2記載の描画装置。
JP2016524554A 2015-07-10 2015-07-10 描画装置 Expired - Fee Related JP5972509B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/069917 WO2017009901A1 (ja) 2015-07-10 2015-07-10 描画装置

Publications (2)

Publication Number Publication Date
JP5972509B1 true JP5972509B1 (ja) 2016-08-17
JPWO2017009901A1 JPWO2017009901A1 (ja) 2017-07-13

Family

ID=56701713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016524554A Expired - Fee Related JP5972509B1 (ja) 2015-07-10 2015-07-10 描画装置

Country Status (2)

Country Link
JP (1) JP5972509B1 (ja)
WO (1) WO2017009901A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0798771A (ja) * 1993-09-29 1995-04-11 Fujitsu Ltd アニメーション作成装置
JP2006243807A (ja) * 2005-02-28 2006-09-14 Canon Inc 画像処理装置及び画像処理方法並びにプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0798771A (ja) * 1993-09-29 1995-04-11 Fujitsu Ltd アニメーション作成装置
JP2006243807A (ja) * 2005-02-28 2006-09-14 Canon Inc 画像処理装置及び画像処理方法並びにプログラム

Also Published As

Publication number Publication date
WO2017009901A1 (ja) 2017-01-19
JPWO2017009901A1 (ja) 2017-07-13

Similar Documents

Publication Publication Date Title
US10157593B2 (en) Cross-platform rendering engine
CN108027708B (zh) 促成针对图形元素的属性值的选择
US9196075B2 (en) Animation of computer-generated display components of user interfaces and content items
US9354707B2 (en) Combination color and pen palette for electronic drawings
US20120216150A1 (en) System and method for manipulating objects in a graphical user interface
US20110258534A1 (en) Declarative definition of complex user interface state changes
US10372290B2 (en) Comparing 3D modeled objects
CN109074225B (zh) 墨水效果
US10553001B2 (en) Master page overlay
US10120659B2 (en) Adaptive user interfaces
JP5972509B1 (ja) 描画装置
JP5866085B1 (ja) ユーザインタフェース装置およびユーザインタフェース装置の画面表示方法
KR101532846B1 (ko) 컨텐츠 보존 와프를 이용한 인터페이스들의 재형상화
JP5417185B2 (ja) オブジェクト処理装置およびオブジェクト選択方法
US20140375572A1 (en) Parametric motion curves and manipulable content
JP7480076B2 (ja) コンテンツ作成システム及び方法
Napier et al. IOS 7 Programming Pushing the Limits: Develop Advance Applications for Apple IPhone, IPad, and IPod Touch
KR102245042B1 (ko) 단말기, 이의 제어 방법 및 상기 방법을 구현하기 위한 프로그램을 기록한 기록 매체
JP2020149329A (ja) 情報処理装置及びプログラム
KR101689636B1 (ko) Gui 방식을 이용하는 3d 컴퓨터 지원 설계 시스템
KR102553661B1 (ko) 단말기, 이의 제어 방법 및 상기 방법을 구현하기 위한 프로그램을 기록한 기록 매체
Brendel et al. Exploring the immediate mode GUI concept for graphical user interfaces in mixed reality applications
CN110785740A (zh) 基于规则的用户界面生成
US20120169736A1 (en) Methods, apparatuses and computer program products for providing a true resolution of graphics displayed on devices
Wellman jQuery 1.4 Animation Techniques: Beginners Guide

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160607

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160712

R150 Certificate of patent or registration of utility model

Ref document number: 5972509

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees