【解決手段】複数の素材図形を組み合わせて出力図形を生成する情報処理システムが、前記素材図形の間に働く引力と斥力のバランス、前記素材図形の大きさのばらつき及び前記素材図形の種類を示す図形パラメータを取得する取得部と、前記取得部が取得する前記図形パラメータに応じた前記素材図形を取得する素材図形取得部と、前記取得手順で取得する前記図形パラメータに応じて、前記素材図形を複数配置して前記出力図形を生成する出力図形生成部とを含む。
前記取得部は、前記素材図形の数、前記素材図形の大きさに応じて働く斥力の強さ、前記素材図形が向く基本となる角度を示す基本角、前記素材図形が向く角度のばらつき及び前記素材図形の色の少なくとも1つを前記図形パラメータとして更に取得する請求項1に記載の情報処理システム。
前記取得部は、前記出力図形における中心から前記素材図形までの距離に応じた素材図形の角度を前記図形パラメータとして更に取得する請求項1乃至3のいずれか1項に記載の情報処理システム。
前記素材図形取得部は、前記素材図形が重なる場合において重なった部分が見える透明度の前記素材図形を取得する請求項1乃至5のいずれか1項に記載の情報処理システム。
【発明を実施するための形態】
【0009】
以下、本発明の好適な実施形態の具体例を示して説明する。
【0010】
<全体構成例>
図1は、情報処理システムの全体構成例を示す概要図である。図示するように、情報処理システム1は、1以上の情報処理装置を有する。具体的には、情報処理システム1は、情報処理装置の例であるサーバ2と、情報処理装置の例であるPC(Personal Computer)3とを有する。
【0011】
図示するように、サーバ2と、PC3とは、ネットワーク等によって接続され、相互にデータを送受信することができる。
【0012】
なお、サーバ2と、PC3とは、一体となる構成、すなわち、情報処理システム1は、1つの情報処理装置で構成されてもよい。一方で、情報処理システム1は、3以上の情報処理装置を有してもよい。以下、図示する全体構成を例に説明する。
【0013】
<ハードウェア構成例>
図2は、情報処理装置のハードウェア構成例を示すブロック図である。例えば、サーバ2及びPC3は、同一のハードウェア構成である。以下、サーバ2を例に説明し、PC3の説明を省略する。
【0014】
サーバ2は、CPU(Central Processing Unit)2H01と、記憶装置2H02と、入力装置2H03と、出力装置2H04と、インタフェース(interface)2H05とを有する。各ハードウェア資源は、バス(bus)で接続され、相互にデータを送受信する。
【0015】
CPU2H01は、演算装置及び制御装置の例である。記憶装置2H02は、主記憶装置等である。また、記憶装置2H02は、SSD(Solid State Drive)又はハードディスク等の補助記憶装置があってもよい。入力装置2H03は、ユーザURから操作を入力する装置である。例えば、入力装置2H03は、キーボード、マウス又はこれらの組み合わせ等である。出力装置2H04は、ユーザURに処理結果等を表示する装置である。例えば、出力装置2H04は、ディスプレイ等である。インタフェース2H05は、外部装置とデータを入出力する装置である。例えば、インタフェース2H05は、コネクタ又は通信装置等である。
【0016】
なお、ハードウェア構成は、図示する構成に限られない。例えば、ハードウェア構成は、演算装置又は制御装置等が内部又は外部に更にある構成等でもよい。
【0017】
<全体処理例>
図3は、全体処理例を示すフローチャートである。
【0018】
<図形パラメータの取得例>
ステップS01では、情報処理システム1は、図形パラメータPARをUI(User Interface)によってユーザURに入力させ、図形パラメータPARを取得する。なお、図形パラメータPARの詳細は、後述する。
【0019】
図形パラメータPARは、例えば、PC3が表示する入力画面等に対してユーザURが操作を行うと、情報処理システム1に入力できる。なお、図形パラメータPARは、他のパラメータから変換されて取得されてもよい。また、図形パラメータPARは、UI以外で取得されてもよい。
【0020】
<図形パラメータに応じた素材図形の取得例>
ステップS02では、情報処理システム1は、取得された図形パラメータPARに応じた素材図形CMAを取得する。具体的には、
図1に示す全体構成では、情報処理システム1は、データベースWBSにあらかじめ記憶される素材図形のうち、図形パラメータPARに合う素材図形CMAを選び、取得する。なお、素材図形CMAは、インターネット上等のデータでもよいし、素材図形CMAは、生成されてもよい。
【0021】
<ボイド(Boid)法等による出力図形の生成例>
ステップS03では、情報処理システム1は、取得された素材図形CMAを組み合わせて出力図形COUTを生成する。例えば、出力図形COUTは、アイコン(icon)等である。なお、出力図形COUTは、アイコン以外の形式で生成されてもよい。例えば、出力図形COUTは、背景画像、シール又はスタンプ等の形式で生成されてもよい。
【0022】
また、ボイド法は、例えば、"Craig Reynolds. Flocks, herds and schools:A distributed behavioral model. In SIGRAPH'87: Proc. 14th Annual Conf. on Computer Graphics and Interactive Techniques, pages 25−34. ACM, 1987. ISBN 0‐89791‐227‐6."に記載されている方法である。具体的には、ボイド法は、以下のようなソースコードで実現される。
【0023】
図4は、出力図形を生成するためのソースコードの一例である。例えば、図示するソースコードでは、「k
s」、「θ」、「m
θ」、「f
d」、「s」、「c」及び「t」等の図形パラメータPARが定まると、処理が実行でき、情報処理システム1は、素材図形CMAを配置して出力図形COUTを生成できる。
【0024】
<素材パラメータの例>
<素材図形の数>(N:Number of agents)
図5は、素材図形の数の一例を説明する図である。
【0025】
素材図形CMAの数は、出力図形COUTに用いられる素材図形CMAの数を示す図形パラメータである。具体的には、図示するように、「N=1」と設定されると、出力図形COUTは、素材図形CMAが1個で構成される。一方で、「N=3」と設定されると、出力図形COUTは、素材図形CMAが3個で構成される。また、「N=10」と設定されると、出力図形COUTは、素材図形CMAが10個で構成される。
【0026】
<素材図形の間に働く引力と斥力のバランス>(k
s:Coefficient of separation force)
図6は、素材図形の間に働く引力と斥力のバランスの一例を説明する図である。
【0027】
素材図形の間に働く引力と斥力のバランスは、図示するように、素材図形CMAの間に働く引力と、斥力との強弱関係を設定する図形パラメータである。例えば、「k
s」に「k
s=0.1」のような小さい値が設定されると、引力が斥力より強くなる。このような設定であると、出力図形COUT21は、素材図形CMAが中心に集まる図形となる。
【0028】
一方で、例えば、「k
s」に「k
s=5」のような大きい値に設定されると、斥力が引力より強くなる。このような設定であると、素材図形CMAが中心から外側に離れ、出力図形COUT22は、素材図形CMAが中心から分散した図形となる。
【0029】
なお、図示する例は、「k
s」の最小値を「0」とする例である。すなわち、この例では、「k
s=0」と設定されると、各素材図形が中心で完全に一致する出力図形が生成される。「k
s」のような図形パラメータがあると、素材図形CMAの大きさがばらつく場合、すなわち、後述する「v
s」が「0」でない場合又は円形以外の多角形の素材図形CMAを用いる場合であって、素材図形CMAが向く角度がばらつく場合には、素材図形CMAは、同心円状に配置されるため、位置が離れているのとは異なる表現をすることができる。
【0030】
また、「k
s」の最大値は、「5」以上でもよい。
【0031】
<素材図形の大きさのばらつき>(V
s:Size difference ratio)
図7は、素材図形の大きさのばらつきの一例を説明する図である。
【0032】
素材図形の大きさのばらつきは、図示するように、出力図形COUTを構成する素材図形の大きさをどの程度ばらつかせるかを設定する図形パラメータである。例えば、「v
s」に「v
s=0」のような小さい値が設定されると、大きさのばらつきが小さくなり、各素材図形の大きさは、均一になる。したがって、このような設定であると、出力図形COUT31は、同一の大きさである複数の素材図形CMAで構成される図形となる。
【0033】
一方で、例えば、「v
s」に「v
s=1.0」のような大きい値に設定されると、大きさのばらつきが大きくなり、各素材図形の大きさは、ばらつく。具体的には、図示するように、出力図形COUT31は、小さい素材図形CMAS及び大きい素材図形CMAB等の様々な大きさの素材図形で構成される図形となる。
【0034】
図8は、素材図形の大きさのばらつきを変化させた場合の一例を説明する図である。なお、図は、横軸を「玉ID(Identification)」、すなわち、各素材図形の通し番号等、縦軸を各素材図形の大きさ(例えば、素材図形が円形の場合には、素材図形の直径等である。)とする。
【0035】
例えば、「v
s」を「0」、「0.5」及び「1.0」と設定した場合、素材図形の大きさのばらつきは、設定に応じて、図示するように変化する。図示するように、「v
s=0」であると、素材図形の大きさは、すべて同じ大きさとなり、素材図形の大きさのばらつきがない状態となる。
【0036】
一方で、「v
s」を「0.5」及び「1.0」のように大きい値にしていくと、最小サイズの素材図形と、最大サイズの素材図形とのサイズ差が大きくなり、素材図形の大きさのばらつきが大きくなる。
【0037】
つまり、図示する例では、素材図形の大きさのばらつき、すなわち、「v
s」は、図における傾きとなる。
【0038】
なお、上記の例では、「v
s」の最小値を「0」とし、「v
s」の最大値を「1」とした例である。すなわち、「v
s=1.0」の設定であると、上記の例は、素材図形の大きさが、最もばらつく例である。なお、最大値及び最小値は、上記以外の値であってもよい。
【0039】
<素材図形の大きさに応じて働く斥力の強さ>(f
d:Separation force difference between small agent big agent)
図9は、素材図形の大きさに応じて働く斥力の強さの一例を説明する図である。
【0040】
素材図形の大きさに応じて働く斥力の強さは、各素材図形の大きさに応じて、斥力をどの程度とするかを設定する図形パラメータである。例えば、「f
d」に「f
d=−1」のような値が設定されると、小さい素材図形CMASほど斥力が強くなり、一方で、大きい素材図形CMABほど斥力が弱くなる。したがって、出力図形COUT41は、大きい素材図形CMABが内側となり、小さい素材図形CMASが外側となる配置の図形となる。
【0041】
また、例えば、「f
d」に「f
d=0」のような値が設定されると、素材図形の大きさに係わらず、各素材図形に働く斥力が等しい。したがって、出力図形COUT42は、大きい素材図形CMABと、小さい素材図形CMASとが中心からほぼ均一の距離となるように配置される図形となる。
【0042】
さらに、例えば、「f
d」に「f
d=1」のような値が設定されると、大きい素材図形CMABほど斥力が強くなり、一方で、小さい素材図形CMASほど斥力が弱くなる。したがって、出力図形COUT43は、小さい素材図形CMASが内側となり、大きい素材図形CMABが外側となる配置の図形となる。
【0043】
<素材図形の基本となる角度(以下「基本角」という。)>(θ
b:Basic angle)
基本角は、各素材図形が基本的に向く角度を設定する図形パラメータである。
【0044】
図10は、素材図形の基本となる角度の一例を説明する図である。以下、垂直軸VAX(図面では、上方向となる。)を角度の基準(0°となる。)として説明する。また、図示する例は、素材図形CMAがすべて基本角を向く設定の例である。
【0045】
例えば、「θ
b」に「θ
b=0」のような値が設定されると、すべての素材図形CMAは、垂直軸VAXと一致する角度を向く。
【0046】
一方で、「θ
b」に「θ
b=0.5」のような値が設定されると、すべての素材図形CMAは、垂直軸VAXに対して所定の角度ANGなる角度を向く。
【0047】
なお、図示する例は、「θ
b」を「rad(ラジアン)値×多角形の辺の数」とした例である。したがって、「θ
b÷多角形の辺の数」が「rad値」となる。このような値とすると、三角形の素材図形CMAにおける「90°」向きと、四角形の素材図形CMAにおける「90°」向きとで、見た目の意味が異なり、この差異を吸収することができる。
【0048】
また、単なる角度(単位が「°」等である。)を用いると、「0°」、「60°」及び「120°」が設定されても、素材図形CMAの見え方が同一になる。そこで、上記のような「θ
b」とすると、同じ見え方になる数値が1つなり、「θ
b」と、見え方とを1対1の関係にできる。
【0049】
<素材図形が向く角度のばらつき>(m
θ:Coefficient of angle separation moment)
素材図形が向く角度のばらつきは、それぞれの素材図形CMAが向く角度が基本角に対して、どの程度ばらつくかを設定する図形パラメータである。以下、基本角が「θ
b=0」であって、基本角が垂直軸VAXと一致する角度であるとする。
【0050】
図11は、素材図形が向く角度のばらつきの一例を説明する図である。
【0051】
例えば、図示するように、「m
θ」に「m
θ=0」のような値が設定されると、素材図形CMAが向くそれぞれの角度のばらつきがなくなる。具体的には、図示するように、素材図形群M0のすべての素材図形CMAは、垂直軸VAXと一致する角度を向く。
【0052】
一方で、「m
θ」に「m
θ=1」のような値が設定されると、素材図形CMAが向くそれぞれの角度がばらつく。具体的には、図示するように、素材図形群M1の素材図形CMAは、角度が基本角に対して角度ANG1となる素材図形もあり、角度が基本角に対して角度ANG2又は角度ANG3となる素材図形もある。
【0053】
<素材図形の種類及び縦横比>
素材図形の種類は、素材図形の形状を特定できる図形パラメータである。
【0054】
図12は、素材図形の種類及び縦横比の一例を説明する図である。
【0055】
例えば、図示するように、「s」に素材図形の種類を特定できる値が設定される。具体的には、「s=10」と設定されると、素材図形CMA10は、円形となる。ほかにも、「s=3」と設定されると、素材図形CMA3は、三角形となる。同様に、「s=4」と設定されると、素材図形CMA4は、四角形となる。
【0056】
なお、図形パラメータとして、縦横比が設定されてもよい。例えば、素材図形が三角形である場合には、縦R1及び横R2の比が設定され、図示するように、素材図形は、二等辺三角形等の正三角形以外の形状となってもよい。
【0057】
また、素材図形は、図示する以外の図形でもよい。例えば、素材図形は、五角形以上の多角形でもよい。
【0058】
<素材図形の色>
素材図形の色は、素材図形CMAの色を特定できる図形パラメータである。
【0059】
図13は、素材図形の色の一例を説明する図である。
【0060】
例えば、素材図形の色CLRは、「c(h,s,v)」のように、HSV値で入力される。なお、色の入力形式は、HSV値に限られず、RGB値又は色名等を入力する形式でもよい。また、透明度が、図形パラメータとして更に設定されるのが望ましい。
【0061】
図示するように、素材図形CMAは、設定された色と同一又は類似の色となる。なお、出力図形COUTを構成する素材図形CMAは、同じ色が用いられるのが望ましい。異なる色の素材図形が重なると、補色同士が重なる場合がある。一方で、すべて同一又は類似の色の素材図形であると、補色同士が重なるのを防ぐことができる。
【0062】
また、素材図形の色は、透明度が高い色であるのが望ましい。図示するように、複数の素材図形CMAを用いる場合、重複部分OVLが発生する場合が多い。そこで、素材図形の色は、素材図形が重なる場合において、重なった部分が見える程度に、透明度が高いのが望ましい。具体的には、透明度は、「50%」以上であると、元の色味を損なわず、かつ、複数の素材図形CMAが重なっていることを表現できる。このように透明度が高いと、図示するように、重複部分OVLにおいて、どのように図形が重なっているか等の様子が分かる。一方で、透明度が低いと、重なって下になっている部分の様子が見えなくなる。
【0063】
したがって、高い透明度の色が用いられると、重なっている状態等が表現でき、多彩な表現が可能となる。
【0064】
<中心からの距離に応じた角度>
中心からの距離に応じた角度が、図形パラメータとして更に入力されるのが望ましい。中心からの距離に応じた角度は、それぞれの素材図形CMAの中心からの距離、すなわち、それぞれの素材図形CMAが配置される位置に応じて、それぞれの素材図形CMAの角度がどのようになるか設定できるのが望ましい。
【0065】
図14は、中心からの距離に応じた素材図形の角度の一例を説明する図である。例えば、図示するように、図形パラメータによって設定できてもよい。具体的には、図示する例では、中心CENに対して近距離D1に配置された素材図形と、中心CENに対して遠距離D2に配置された素材図形とで異なる向きとなるように設定されている。
【0066】
近距離D1に配置された素材図形は、外側を向く設定である。一方で、遠距離D2に配置された素材図形は、内側(中心CENがある方向)を向く設定である。このように、中心CENからの距離が近距離D1であるか遠距離D2であるかによって、素材図形が向く角度の傾向が異なるように設定できてもよい。
【0067】
<機能構成例>
図1に示すように、情報処理システム1は、取得部F1、素材図形取得部F2及び出力図形生成部F3を含む機能構成である。
【0068】
取得部F1は、上記に説明した図形パラメータPARを取得する取得手順を行う。例えば、取得部F1は、入力装置2H03等によって実現される。
【0069】
素材図形取得部F2は、取得部F1が取得する図形パラメータPARに合う素材図形CMAを取得する素材図形取得手順を行う。なお、素材図形CMAを示すデータは、他の装置等から取得されてもよいし、情報処理システム1が生成してもよい。例えば、素材図形取得部F2は、CPU2H01等によって実現される。
【0070】
出力図形生成部F3は、素材図形CMAを組み合わせて出力図形COUTを生成する出力図形生成手順を行う。例えば、出力図形生成部F3は、CPU2H01等によって実現される。
【0071】
以上のようにして、情報処理システム1は、まず、図形パラメータPARを取得する。上記に説明する図形パラメータPARのうち、少なくとも、図形の種類、引力と斥力のバランス及び図形の大きさのばらつきが定まると、出力図形COUTは、ほぼ一義的に定まる。つまり、図形パラメータPARと、出力図形COUTとは、ほぼ「1:1」の関係である。したがって、情報処理システム1は、複数の図形パラメータPARを組み合わせて、素材図形を生成及び配置することで、出力図形COUTを生成することで一貫性及び規則性のある図形を生成できる。したがって、情報処理システム1は、図形パラメータPARに基づいて規則性があって、人間が見て美しい図形を生成することができる。
【0072】
なお、図形パラメータPARとして、素材図形の数、素材図形の大きさに応じて働く斥力の強さ、素材図形が向く基本となる角度を示す基本角、素材図形が向く角度のばらつき、素材図形の色、縦横比、中心から素材図形までの距離に応じた素材図形の角度及び透明度が取得されるのが望ましいが、必須ではない。
【0073】
<他の実施形態>
なお、全体処理は、図示する順序に限られない。例えば、各処理の一部又は全部は、並列又は図示する順序とは異なる順序で行われてもよい。また、各処理は、複数の情報処理装置によって、冗長、分散、並列、仮想化又はこれらを組み合わせて実行されてもよい。
【0074】
なお、本発明に係る情報処理方法は、プログラムによって実現されてもよい。すなわち、プログラムは、1以上の情報処理装置を含む情報処理システム等であるコンピュータに各処理を実行させるためのコンピュータプログラムである。
【0075】
したがって、プログラムに基づいて情報処理方法が実行されると、コンピュータが有する演算装置及び制御装置は、各処理を実行するため、プログラムに基づいて演算及び制御を行う。また、コンピュータが有する記憶装置は、各処理を実行するため、プログラムに基づいて、処理に用いられるデータを記憶する。
【0076】
また、プログラムは、コンピュータが読み取り可能な記録媒体に記録されて頒布することができる。なお、記録媒体は、磁気テープ、フラッシュメモリ、光ディスク、光磁気ディスク又は磁気ディスク等のメディアである。また、記録媒体は、補助記憶装置等でもよい。さらに、プログラムは、電気通信回線を通じて頒布することができる。
【0077】
以上、本発明の好ましい実施形態の具体例について詳述したが、本発明は、図面に記載された実施形態等に限定されない。すなわち、特許請求の範囲に記載された本発明の広範な要旨の範囲内において、種々の変形又は変更が可能である。