(57)【特許請求の範囲】
【請求項１】
３次元空間を２次元画面の表示領域上に設定し、その表示領域上に３次元折れ線グラフを表示する３次元折れ線グラフ視点制御装置であって、
視点および視点距離の初期値の入力を受け付ける入力部と、
前記３次元折れ線グラフを描画するためのデータを格納するデータ格納部と、
前記入力部から視点および視点距離の初期値のデータを、前記データ格納部から前記３次元折れ線グラフのデータをそれぞれ取り込み、初期値として与えられた任意の視点の座標と視角を用いて前記３次元折れ線グラフが視認できる量を表す情報量を数値化したものである視点のエントロピー式を用いて前記情報量が最大となる視点の座標と視角を算出する演算部と、
前記演算部によって算出された視点の座標と視角に基づいて前記３次元折れ線グラフを表示する表示部とを
備える３次元折れ線グラフ視点制御装置。
【請求項２】
前記３次元折れ線グラフが複数個の系列から成り、前記系列が一つの軸方向へ繋がる一連のデータから成り、
E：情報量
V：与える視点
Ai ：前記複数個の系列が２次元画面の表示領域上に描画される際、前方系列により系列iが見えている量
S：各系列の積分の和
m：系列数
であるとき、
前記エントロピー式は、
【数１】
0006444826.tif 000004
である請求項１に記載の３次元折れ線グラフ視点制御装置。
【請求項３】
２次元領域の表示領域を表すＸＹ平行面枠に表示される前記系列が、Ｚ軸方向に位置する或る視点から見て前方に位置している前方系列によって見え隠れする場合に、或る視点から見えている面積と或る視点から見えていない面積に基づき、前記系列が見えている量を、前方系列とＸＹ平行面枠となる面積の和とする請求項２に記載の３次元折れ線グラフ視点制御装置。
【請求項４】
視点の移動単位は、πラジアン／１２とする請求項３に記載の３次元折れ線グラフ視点制御装置。
【請求項５】
視点の選択に際して、視点とグラフ中心点との距離を延ばして調整する請求項４に記載の３次元折れ線グラフ視点制御装置。
【請求項６】
前記グラフ中心点に視線方向を合わせて視点を平行円上で回転させる請求項５に記載の３次元折れ線グラフ視点制御装置。
【請求項７】
複数の視点が選択された場合に、ユーザによる選択を受け付け可能とする請求項６に記載の３次元折れ線グラフ視点制御装置。
【請求項８】
３次元空間を２次元画面の表示領域上に設定し、その表示領域上に３次元折れ線グラフを表示する３次元折れ線グラフ視点制御装置に、
視点および視点距離の初期値の入力を受け付ける機能と、
前記３次元折れ線グラフを描画するためのデータを取り込む機能と、
前記視点および視点距離の初期値のデータ、前記３次元折れ線グラフのデータに基づいて、初期値として与えられた任意の視点の座標と視角を用いて前記３次元折れ線グラフが視認できる量を表す情報量を数値化したものである視点のエントロピー式を用いて前記情報量が最大となる視点の座標と視角を算出する機能と、
前記算出された視点の座標と視角に基づいて前記３次元折れ線グラフを前記表示領域上に表示させる機能とを
を実現させるための３次元折れ線グラフ視点制御プログラム。
【請求項９】
前記３次元折れ線グラフが複数個の系列から成り、前記系列が一つの軸方向へ繋がる一連のデータから成り、
E：情報量
V：与える視点
Ai ：前記複数個の系列が２次元画面の表示領域上に描画される際、前方系列により系列iが見えている量
S：各系列の積分の和
m：系列数
であるとき、
前記エントロピー式は、
【数２】
0006444826.tif 000005
である請求項８に記載の３次元折れ線グラフ視点制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、３次元折れ線グラフ視点制御装置および３次元折れ線グラフ視点制御プログラムに関する。
【背景技術】
【０００２】
モデリングされた３次元形状に対して、例えば、写実性を高める等の観点から、視点と光源の位置や向きを考慮して、２次元スクリーンに描画するレンダリング処理が施されている。
【０００３】
３次元モデルのうち、物体については、レンダリングの際にその可視面積を表す情報量を最大化する最適な視点を算出するアルゴリズムが提案されている。
【０００４】
しかしながら、３次元折れ線グラフについては、３次元グラフのデータがプロットされている様子が手前の系列で重なってしまう場合があり、当該アルゴリズムをそのまま適用することはできなかった。
【０００５】
３次元折れ線グラフは物体と異なり、真上から見ても殆ど意味をなさないように、最適な視点を求めるために全方位で視点を回転する必要がない。このことは、３次元折れ線グラフを見やすく描画するには、視点を管理しユーザ操作による回転範囲を限定する仕組みが必要であることを意味している。    
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】「Automatic View Selection Using Viewpoint Entropy and its Application to Image-Based Modelling」Pere-Pau Vazquez, Miquel Feixas, Mateu Sbert and Wolfgang Heidrich COMPUTER GRAPHICS Forum Volume 22, Issue 4,  pages 689-700, December 2003
【非特許文献２】「Previewing Volume Decomposition Through Optimal Viewpoints」S. Takahashi, I. Fujishiro, Y. Takeshima, and C. Bi, Dagstuhl Follow-Up Seminar Book "Scientific Visualization: Interactions, Features, Metaphors", in Scientific Visualization: Interactions, Features, Metaphors 2011, (H. Hagen ed.) Dagstuhl Follow-Ups Series, Vol. 2, Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik, pp. 346-359, November, 2011.
【特許文献】
【０００７】
【特許文献１】特開平９−８１７７４号公報
【特許文献２】特開２００４−３６１１１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明が解決しようとする課題は、３次元空間にプロットした情報をもつ折れ線グラフを２次元画面の表示領域上に描画させるのに最適な視点と視角を算出することのできる３次元折れ線グラフ視点制御装置および３次元折れ線グラフ視点制御プログラムを提供することである。
【課題を解決するための手段】
【０００９】
実施形態の３次元折れ線グラフ視点制御装置は、３次元空間を２次元画面の表示領域上に設定し、その表示領域上に３次元折れ線グラフを表示する３次元折れ線グラフ視点制御装置であって、視点および視点距離の初期値の入力を受け付ける入力部と、前記３次元折れ線グラフを描画するためのデータを格納するデータ格納部と、前記入力部から視点および視点距離の初期値のデータを、前記データ格納部から前記３次元折れ線グラフのデータをそれぞれ取り込み、初期値として与えられた任意の視点の座標と視角を用いて前記３次元折れ線グラフが視認できる量を表す情報量を数値化したものである視点のエントロピー式を用いて前記情報量が最大となる視点の座標と視角を算出する演算部と、前記演算部によって算出された視点の座標と視角に基づいて前記３次元折れ線グラフを表示する表示部とを備える。
【００１０】
実施形態の３次元折れ線グラフ視点制御プログラムは、３次元空間を２次元画面の表示領域上に設定し、その表示領域上に３次元折れ線グラフを表示する３次元折れ線グラフ視点制御装置に、視点および視点距離の初期値の入力を受け付ける機能と、前記３次元折れ線グラフを描画するためのデータを取り込む機能と、前記視点および視点距離の初期値のデータ、前記３次元折れ線グラフのデータに基づいて、初期値として与えられた任意の視点の座標と視角を用いて前記３次元折れ線グラフが視認できる量を表す情報量を数値化したものである視点のエントロピー式を用いて前記情報量が最大となる視点の座標と視角を算出する機能と、前記算出された視点の座標と視角に基づいて前記３次元折れ線グラフを前記表示領域上に表示させる機能とを実現させる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る３次元折れ線グラフ視点制御装置の概略構成を示すブロック図である。
【図２】３次元折れ線グラフと視点との関係を説明する図である。
【図３】単一の視点を選択する処理の流れを示すフローチャートである。
【図４】複数の視点を選択する処理の流れを示すフローチャートである。
【図５】視点とグラフ領域空間の中心点の関係を説明する図である。
【図６】視点とグラフ中心点間の距離の調整を説明する図である。
【図７】視点の移動を説明する図である。
【図８】回転する視点を説明する図である。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施の形態について、図面を参照して説明する。尚、各図において同一箇所については同一の符号を付すとともに、重複した説明は省略する。
【００１３】
まず、本実施形態で用いる主要な用語について説明する。
【００１４】
「表示領域」とは、画面内で３次元空間を表示している２次元領域をいう。表示領域には、３次元空間を空間中のある視点から見た目を２次元平面に投影した内容が描画される。どのような投影方法で２次元平面に投影するのかは、アプリケーションによって異なる。
【００１５】
「投影面」とは、３次元モデル（グラフ）を画面に投影する２次元の平面をいう。
【００１６】
「視点」とは、空間をどの位置でどの方向に見るかを決めるものをいう。視点の位置と視点の方向（視線方向）を変えると、３次元空間にある物体を異なる角度から見ることができる。視点は、視点の座標（ｘ、ｙ、ｚ）および視線方向（ｖｘ、ｖｙ、ｖｚ、θ）で定義される。視線方向（視線軸）は、基準視線（０、０、−１）を任意の回転軸（ｖｘ、ｖｙ、ｖｚ）の周りにθラジアン回転させたものである。（１、０、０、θ）は上下方向の視線移動、（０、１、０、θ）は左右方向の視線移動、（０、０、１、θ）は視軸を回転させることを表す。視点は、３次元空間内に複数個設定することができる。
【００１７】
「視角（FOV :Field of View）」とは、視点と投影面の端を結んだ二つの直線からなる角度をいう。水平視角と垂直視角がある。本実施形態では、垂直視角を用いる。
【００１８】
「３次元折れ線グラフ」とは、X, Y, Z軸で表示される3次元空間のなかで、３種類の情報を持つ一連のデータをプロットし、線で繋いだ結果をいう。
【００１９】
「系列」とは、一つの軸方向へ繋がる２又は３種類の情報を持つ一連のデータをいう。
【００２０】
「グラフ中心点」とは、グラフ領域空間の中心に相当する座標値をいう。
【００２１】
本実施形態においては、３次元折れ線グラフを２次元画面の表示領域（投影面）上に描画するのに最適な視点と視角（又は視線とグラフ中心点間の距離）を求める。ここで、視点は、３次元折れ線グラフ表示のＺ軸の視線方向を指し示すものであり、３次元折れ線グラフが視認できる（見えている）量を表す情報量が最大化になる座標と視線方向とで特定される。また、視角（又は視線とグラフ中心点間の距離）は、３次元折れ線グラフが投影面のなかに収まる範囲の視角である。本実施形態においては、３次元折れ線グラフの形状、例えばグラフ間の並び具合（間隔等）を考慮して、情報量が多い視点を算出する。
【００２２】
図１は、本発明の実施形態に係る３次元折れ線グラフ視点制御装置の概略構成を示すブロック図である。この装置は汎用のコンピュータ（例えばパーソナルコンピュータ（ＰＣ）等）と、同コンピュータ上で動作するソフトウェアおよびクラウド又はＷｅｂ上で動作するソフトウェアとを用いて実現される。コンピュータとしては、ＣＡＤ（Computer Aided Design）やＣＡＥ（Computer Aided Engineering）に好適なエンジニアリングワークステーション（ＥＷＳ）等も含む。本実施形態はこのようなコンピュータにおいて、３次元空間を２次元画面の表示領域上に設定し、その表示領域上に３次元折れ線グラフを表示する３次元折れ線グラフ視点制御装置に、視点および視点距離の初期値の入力を受け付ける機能と、３次元折れ線グラフを描画するためのデータを取り込む機能と、視点および視点距離の初期値のデータ、３次元折れ線グラフのデータに基づいて、３次元折れ線グラフが視認できる量を表す情報量を数値化したものである視点のエントロピー式を用いて視点の座標と視角を算出する機能と、算出された視点の座標と視角に基づいて３次元折れ線グラフを表示領域上に表示させる機能とを実現させるプログラムとして実施することもできる。
【００２３】
図１に示すように、本実施形態に係る３次元折れ線グラフ視点制御装置１は、主として、入力部１０と、演算処理部２０と、表示部３０と、データ格納部４０から構成されている。
【００２４】
入力部１０は、視点や視点距離の初期値の入力を受け付けるものである。入力した視点や視点距離の初期値は、演算処理部２０に送られる。
【００２５】
データ格納部４０は、３次元折れ線グラフを描画するためのデータを格納するものである。３次元折れ線グラフは、X, Y, Z軸上の３種の情報を持つ一連のデータをプロットし、線で繋いだ結果である。３次元折れ線グラフは複数の系列、例えばｍ個の系列から成っている。系列は、X, Y, Z軸のいずれか一つの軸方向へ繋がる２又は３種の情報を持つ一連のデータである。
【００２６】
演算処理部２０は、入力部１０から視点や視点距離の初期値のデータを、データ格納部４０からは３次元折れ線グラフのデータをそれぞれ取り込み、３次元折れ線グラフが見える（視認できる）量を表す情報量が最大となる最適な視点と視角を算出する。算出手法の詳細は、後述する。
【００２７】
表示部３０は、X, Y, Z軸で表示される３次元空間を、例えばX, Y軸で表示される２次元画面の表示領域上に設定し、その領域上に３次元折れ線グラフを表示するものである。本実施形態では、表示部３０には、予め、データ格納部４０にデータが格納されている３次元折れ線グラフが表示されている。表示部３０は、演算処理部２０で算出した最適な視点と視角に基づいた３次元折れ線グラフを表示する。
【００２８】
演算処理部２０によって算出された最適な視点と視角を、ユーザに対して表示させる。
【００２９】
次に、以上のように構成された３次元折れ線グラフ視点制御装置１における、最適な視点の算出処理について詳述する。
【００３０】
＜最適な視点＞
図２は、３次元折れ線グラフと視点との関係を説明する図である。図２に示すように、２次元表示領域を表すＸＹ平行面枠に複数の系列が表示されている。
【００３１】
図２に示す例では、ｍ個の系列が描画されている。Ｚ軸方向に位置している視点からは、それぞれの形状を呈した複数の系列が等間隔あるいは異なる間隔で描画されていることから、全ての系列を見ることはできない。すなわち、ある系列は、視点から見て前方に位置している系列（これを、前方系列と呼ぶ）の形状によって、見え隠れする。
【００３２】
本実施形態では、最適な視点の算出にあたり、３次元折れ線グラフが見える情報量を数値化したものである視点のエントロピー式を用いて算出する。図２に示す例では、系列ｉは、前方系列によって見え隠れしている。両者を重ね合わせた場合に、視点から見えている面積をプラス（＋）、視点から見えていない面積をマイナス（−）とする。換言すれば、系列iが見えている情報量は、前方系列とＸＹ平行面枠となる面積の和となる。
【数１】
0006444826.tif 000002
【００３３】
ここで、
E：情報量
V：与える視点
Ai ：系列iが見えている量  
S：各系列の積分の和
m：系列数
である。上記のAiは、例えば、前方系列とＸＹ平行面枠となる面積の和が好適である。
【００３４】
＜単一視点選択＞
図３は、単一の視点を選択する処理の流れを示すフローチャートである。
【００３５】
まず、初期視点、初期視点距離を設定する（ステップＳ３１）。
【００３６】
次に、３次元折れ線グラフの見える情報量の最大値をゼロとする（ステップＳ３２）。
【００３７】
次に、視点をＸＺ平行円において、視点移動単位分移動させる（ステップＳ３３）。ここで、視点の移動単位は、例えば、１度とか５度とかの単位で移動させても、情報量の増減はわずかである。そこで、１８０度＝πラジアンとする弧度法単位で、例えばπ／１２＝１５度とするのが好適である。さらに、視点移動の方向（向き）として、−Ｙ方向への移動は、例えば、グラフ領域の高さ分の範囲内での移動とする。
【００３８】
続いて、３次元折れ線グラフの全体が表示されているか否かを判定する（ステップＳ３４）。
【００３９】
３次元折れ線グラフの全体が表示されていなければ（ステップＳ３４でＮｏ）、視点とグラフ中心点との距離を延ばし（ステップＳ３５）た後、ステップＳ３４に戻る。
【００４０】
一方、３次元折れ線グラフの全体が表示されていれば（ステップＳ３４でＹｅｓ）、上述したエントロピーの式によりグラフ情報量を算出してＥと置く（ステップＳ３６）。
【００４１】
次に、グラフ情報量Ｅが最大値よりも大きいか否かを判定する（ステップＳ３７）。
【００４２】
グラフ情報量Ｅが最大値よりも大きければ（ステップＳ３７でＹｅｓ）、最大値＝Ｅと置き（ステップＳ３８）、移動距離が２πラジアンよりも大きいか否かを判定する（ステップＳ３９）。
【００４３】
一方、グラフ情報量Ｅが最大値よりも大きくなければ（ステップＳ３７でＮｏ）、ステップＳ３９に移行する。
【００４４】
次に、移動距離が２πラジアンよりも大きくなければ（ステップＳ３９でＮｏ）、ステップＳ３３に戻る。
【００４５】
一方、移動距離が２πラジアンよりも大きければ（ステップＳ３９でＹｅｓ）、一回りしたことになるので、単一の視点を選択する処理を終了する。
【００４６】
＜複数視点選択＞
次に、複数の視点を選択する処理について説明する。図４は、複数の視点を選択する処理の流れを示すフローチャートである。
【００４７】
まず、初期視点、初期視点距離を設定する（ステップＳ４０１）。
【００４８】
次に、３次元折れ線グラフの見える情報量の最大値をゼロとする（ステップＳ４０２）。ここでは、２個の視点を選択する例として、一方の視点の情報量の最大値Max1、および他方の視点の情報量の最大値Max2をそれぞれゼロとする。
【００４９】
次に、視点をＸＺ平行円において、視点移動単位分移動させる（ステップＳ４０３）。ここで、視点の移動単位は、例えば、π／１２＝１５度とするのが好適である。さらに、視点移動の方向（向き）として、−Ｙ方向への移動は、例えば、グラフ領域の高さ分の範囲内での移動とする。
【００５０】
続いて、３次元折れ線グラフの全体が表示されているか否かを判定する（ステップＳ４０４）。
【００５１】
３次元折れ線グラフの全体が表示されていなければ（ステップＳ４０４でＮｏ）、視点とグラフ中心点との距離を延ばし（ステップＳ４０５）た後、ステップＳ４０４に戻る。
【００５２】
一方、３次元折れ線グラフの全体が表示されていれば（ステップＳ４０４でＹｅｓ）、上述したエントロピーの式によりグラフ情報量を算出してＥと置く（ステップＳ４０６）。
【００５３】
次に、グラフ情報量Ｅが最大値Max1よりも大きいか否かを判定する（ステップＳ４０７）。
【００５４】
グラフ情報量Ｅが最大値Max1よりも大きければ（ステップＳ４０７でＹｅｓ）、最大値Max1＝Ｅと置き（ステップＳ４０８）、ステップＳ４１１に移行する。
【００５５】
グラフ情報量Ｅが最大値Max1よりも大きくなければ（ステップＳ４０７でＮｏ）、グラフ情報量Ｅが最大値Max2よりも大きいか否かを判定する（ステップＳ４０９）。
【００５６】
グラフ情報量Ｅが最大値Max2よりも大きければ（ステップＳ４０９でＹｅｓ）、最大値Max2＝Ｅと置く（ステップＳ４１０）。一方、グラフ情報量Ｅが最大値Max2よりも大きくなければ（ステップＳ４０９でＮｏ）、ステップＳ４１１に移行する。
【００５７】
続いて、移動距離が２πラジアンよりも大きいか否かを判定する（ステップＳ４１１）。
【００５８】
次に、移動距離が２πラジアンよりも大きくなければ（ステップＳ４１１でＮｏ）、ステップＳ４０３に戻る。
【００５９】
一方、移動距離が２πラジアンよりも大きければ（ステップＳ４１１でＹｅｓ）、一回りしたことになるので、複数の視点を選択する処理を終了する。
【００６０】
＜視点・視線方向の初期値の設定＞
視点・視線方向の初期値は、ユーザが任意に設定することができる。例えば、３次元コンピュータグラフィックスを表現するためのファイルフォーマットであるＸ３Ｄアプリケーションソフトによれば、以下のように初期値を記述することができる。
【００６１】
<Viewpoint position=“0 0 10” orientation=“0 0 0 １” field Of View=“π/4” >
<Transform translation=“…”>
また、グラフ領域空間の中心点（グラフ中心点）は、図５に示すように設定することができる。
【００６２】
Ｘ：n of X / 2 
Y： Max(y(x,z)) /2  
Ｚ：n of Z /2
n : データの総数、 y(x,z)>0である。ここで、データは、Ｘ軸、Ｚ軸の刻みを指し、例えば、Ｘ軸の刻みが２４であれば、Ｘ軸のｎ＝２４、Ｚ軸の刻みが１２であれば、Ｚ軸のｎ＝１２である。
【００６３】
＜視点とグラフ中心点間の距離＞
図６は、視点とグラフ中心点間の距離の調整を説明する図である。図６に示すように、視点とグラフ中心点間の距離を延ばすには、視角を大きくすることによって同等の処理結果を得ることができる。
【００６４】
＜視点の移動＞
図７は、視点の移動を説明する図である。図７に示す例では、視点はＸＺ平行円上を単位分移動する。平行円のＹは グラフ中心点のＹである。視点の最大移動距離は２πラジアンで、２πラジアン移動すると初期点に戻る。
【００６５】
尚、ＸＺ平行円をＹ軸に沿ってずらして複数設けることも可能である。
【００６６】
＜回転する視点＞
図８は、回転する視点を説明する図である。例えば、ユーザによるキー操作（周知技術が適用できるので、ここでは詳述しない）の受け付けを可能とし、図８に示すように、ＸＺ平行円上においてグラフ中心点に視線方向（視線軸）を合わせ、キー操作で選択された視点を変えることができる。
【００６７】
［実施例］
次に、本実施形態の実施例として、上記した情報量Ｅの計算例について説明する。ここでは、計算を容易にするため、系列数ｍを１２、系列ｉが見えている量Ａｉを一律に３０、各系列の積分の和Ｓを全部５０とする。これらを上式にあてはめると、
【数２】
0006444826.tif 000003
【００６８】
Ｅは約１．５９７となる。
【００６９】
（本実施形態の変形例１）
次に、本実施形態の変形例１について説明する。上記の視点を複数求めて、その複数の視点をユーザ操作で選択する。選択した視点から情報量が最大になるレイアウトに変更可能とし、３次元グラフの情報量が最大になる各軸のグリッド間隔とするのが好適である。
【００７０】
（本実施形態の変形例２）
次に、本実施形態の変形例２について説明する。図８に示す例において、各（１）〜（５）からの各視点に対して、左目と右目視差間の差分視点間を交互に表示するアニメーションにすることができる。このようにして、ユーザが３次元折れ線グラフとして認識するための視差を表示可能とすることもできる。
【００７１】
以上説明したように、本実施形態によれば、３次元折れ線グラフを描画する際に、視認することのできる情報量を最大化した最適な視点を求めることができる。また、情報量が大きい複数の視点を、ユーザの視点変更操作として用いることができる。
【００７２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７３】
１・・・３次元折れ線グラフ視点制御装置
１０・・・入力部
２０・・・演算処理部
３０・・・表示部
４０・・・データ格納部
【図１】
0006444826.tif 000006
【図２】
0006444826.tif 000007
【図３】
0006444826.tif 000008
【図４】
0006444826.tif 000009
【図５】
0006444826.tif 000010
【図６】
0006444826.tif 000011
【図７】
0006444826.tif 000012
【図８】
0006444826.tif 000013