(57)【要約】【課題】  樹木などのランダムオブジェクトを３次元地図の指定された配置範囲内に偏りなく、かつランダムに配置する。【解決手段】  ３次元地図においてオペレータの指示により、樹木を配置する配置範囲Ａの指定を受け付ける。３次元地図データ生成システムは、指定された配置範囲ＡをカバーするグリッドＧを設定し、配置範囲Ａをいくつかの格子に分割する。そして、乱数ｒｘ、ｒｙを発生させ、これに基づいて格子ごとに樹木Ｔｐの配置をランダムに設定する。こうした処理を、指定された配置密度に至るまで、繰り返す。こうすることにより、各格子に樹木が存在するため、樹木を偏りなく配置でき、かつランダムに配置させることができる。この結果、樹木などについて自然な配置を実現した３次元地図を出力することが可能となる。【選択図】  図４
2015007932.tif 000002
【特許請求の範囲】
【請求項１】
地物を３次元的に表した３次元地図を描画するための地図データを生成する３次元地図データ生成システムであって、
前記３次元地図中にランダムな配置で描画されるオブジェクトであるランダムオブジェクトを配置すべき配置範囲を設定する配置条件設定部と、
前記配置範囲を複数の区域に分割する区域設定部と、
前記ランダムオブジェクトの配置をそれぞれの前記区域内でランダムに決定するランダムオブジェクト配置部と、
前記地物とともに前記決定された配置で前記ランダムオブジェクトを描画するための地図データを生成する地図データ生成部とを備える３次元地図データ生成システム。
【請求項２】
請求項１記載の３次元地図データ生成システムであって、
前記配置条件設定部は、さらに、前記配置範囲におけるランダムオブジェクトの配置密度を設定し、
前記区域設定部は、前記配置密度に応じて前記区域の大きさを変更する３次元地図データ生成システム。
【請求項３】
請求項１または２記載の３次元地図データ生成システムであって、
前記ランダムオブジェクト配置部は、さらに、配置すべきランダムオブジェクトの大きさおよび種類の少なくとも一方も、前記配置とともに変化させる３次元地図データ生成システム。
【請求項４】
請求項１〜３いずれか記載の３次元地図データ生成システムであって、
前記区域設定部は、隣接する区域間に、重複区域を設ける３次元地図データ生成システム。
【請求項５】
請求項１〜４いずれか記載の３次元地図データ生成システムであって、
前記配置範囲は、線状の範囲であり、
前記ランダムオブジェクト配置部は、前記配置範囲を規定する線上からの逸脱も許容して、前記配置を決定する３次元地図データ生成システム。
【請求項６】
請求項１〜４いずれか記載の３次元地図データ生成システムであって、
前記配置範囲は、面状の範囲であり、
前記ランダムオブジェクト配置部は、前記配置範囲を規定する面からはみ出さないという条件下で前記配置を決定する３次元地図データ生成システム。
【請求項７】
コンピュータによって、地物を３次元的に表した３次元地図を描画するための地図データを生成する３次元地図データ生成方法であって、
前記コンピュータが実行するステップとして、
前記３次元地図中にランダムな配置で描画されるオブジェクトであるランダムオブジェクトを配置すべき配置範囲を設定するステップと、
前記配置範囲を複数の区域に分割するステップと、
前記ランダムオブジェクトの配置をそれぞれの前記区域内でランダムに決定するステップと、
前記地物とともに前記決定された配置で前記ランダムオブジェクトを描画するための地図データを生成するステップとを備える３次元地図データ生成方法。
【請求項８】
コンピュータによって、地物を３次元的に表した３次元地図を描画するための地図データを生成するためのコンピュータプログラムであって、
前記３次元地図中にランダムな配置で描画されるオブジェクトであるランダムオブジェクトを配置すべき配置範囲を設定する機能と、
前記配置範囲を複数の区域に分割する機能と、
前記ランダムオブジェクトの配置をそれぞれの前記区域内でランダムに決定する機能と、
前記地物とともに前記決定された配置で前記ランダムオブジェクトを描画するための地図データを生成する機能とをコンピュータに実点させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元地図内にランダムに配置されるオブジェクトを描画する方法に関する。
【背景技術】
【０００２】
建造物や道路などの地物を３次元的に表示した３次元地図が普及している。かかる３次元地図では、リアリティ向上のため、建物等だけでなく、樹木などの自然地物も３次元的に表現している。樹木などをリアリティ高く表示させるためには、１つ１つのモデルのリアリティを向上させるだけでなく、それらのモデルをランダムに配置することが好ましい。
特許文献１は、草のオブジェクトを、設定された配置範囲に、設定された密度になるようにランダムに配置する技術を開示する。特許文献２は、落ち葉のオブジェクトをランダムに配置する際に、既に配置済みのオブジェクトとの配置間隔が所定の最小距離以上になるようにすることで、リアリティを向上させる技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２９３４７０号公報
【特許文献２】特開２００７−１１７２６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、乱数によってオブジェクトをランダムに配置させようとしても、配置密度が低い場合や、配置すべき範囲が広い場合などには、配置に偏りが生じてしまい、山などを描くと、樹木の配置にムラが生じ、かえって不自然になることがあった。
３次元地図においてランダムに配置されるべきオブジェクトは、樹木に限らず、夜景における街の明かりなど、種々のものが考えられる。そして、ランダムに配置しようとしても、偏りが生じるという課題は、いずれのオブジェクトにおいても共通であった。
本発明は、かかる課題に鑑み、３次元地図中にランダムに配置されるべきオブジェクトについて、極端な偏りなくランダムに配置可能とすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、地物を３次元的に表した３次元地図を描画するための地図データを生成する３次元地図データ生成システムであって、
前記３次元地図中にランダムな配置で描画されるオブジェクトであるランダムオブジェクトを配置すべき配置範囲を設定する配置条件設定部と、
前記配置範囲を複数の区域に分割する区域設定部と、
前記ランダムオブジェクトの配置をそれぞれの前記区域内でランダムに決定するランダムオブジェクト配置部と、
前記地物とともに前記決定された配置で前記ランダムオブジェクトを描画するための地図データを生成する地図データ生成部とを備える３次元地図データ生成システムとして構成することができる。
【０００６】
配置範囲としては、直線、折れ線、曲線などで指定される線状の範囲、閉図形で指定される面状の範囲などが挙げられる。線状の配置範囲の場合は、これを分割した区域も線状となる。面状の配置範囲の場合は、これを分割した区域も面状となる。区域は、矩形形状その他任意の形状とすることができ、配置範囲全体で不統一の形状としてもよい。
【０００７】
本発明によれば、配置範囲を複数の区域に分割し、区域ごとにランダムオブジェクトをランダムに配置する。このように区域を活用することにより、区域単位で規則性を確保することによって極端な偏りを抑制しつつ、区域内でランダムな配置を実現することができる。この結果、配置範囲全体として見たときに、ランダムオブジェクトを、ランダムかつ偏りなく配置することが可能となる。
【０００８】
本発明において、ランダムオブジェクトとしては、例えば、樹木、草、雲などの自然界に存在する自然地物が挙げられる。また、住宅街の明かり、道路上の車両のように人工的なものであってもよい。
ランダムオブジェクトは、予め用意された３次元モデルを用いて描画させるようにしてもよいし、球体など３次元モデル無しで描画可能な単純な形状を用いて表すようにしてもよい。
区域の設定は、配置範囲を所定数に分割する方法、所定のサイズに分割する方法、不統一なサイズの区域に分割する方法など種々の方法をとることができる。
【０００９】
本発明の３次元地図データ生成システムにおいては、
前記配置条件設定部は、さらに、前記配置範囲におけるランダムオブジェクトの配置密度を設定し、
前記区域設定部は、前記配置密度に応じて前記区域の大きさを変更するものとしてもよい。
ランダムに配置させたときの偏りの発生は、配置範囲の大きさと配置密度に依存する。本発明においても、配置密度によっては、分割された区域内でのランダムオブジェクトの配置に偏りが生じる場合もある。また、区域の大きさに対して配置密度が過剰に高い場合には、区域内のランダムさよりも、区域に分割したことによる規則性が目立つようになり、全体として規則的に配置しているかのような印象を与えることもある。
上記態様によれば、区域の大きさを配置密度に応じて変更するため、こうした弊害を回避し、偏りの解消と、ランダム性の確保という両面をバランスよく実現することが可能となる。定性的には、配置密度が高いほど、区域を大きくすることが好ましいと言えるが、区域の大きさは、ランダムオブジェクトの種類や配置密度などの具体的条件に応じて、調整すればよい。
区域の設定方法は、例えば、予め配置密度と区域の大きさとの関係を関数またはテーブル等で設定しておくようにしてもよい。また、規定の初期サイズで区域を設定し、ランダムオブジェクトを配置した後、その配置の分布によって偏り具合を評価し、その結果に応じて区域の大きさを変更するという処理を繰り返して、最終的な大きさを決めるようにしてもよい。
【００１０】
本発明の３次元地図データ生成システムにおいては、
前記ランダムオブジェクト配置部は、さらに、配置すべきランダムオブジェクトの大きさおよび種類の少なくとも一方も、前記配置とともに変化させるものとしてもよい。
こうすることによって、よりランダム性およびリアリティを向上させることができる。
ランダムオブジェクトの大きさおよび種類は、ランダムに変化させてもよいし、規則的に変化させてもよい。配置をランダムに決定するため、大きさおよび種類を規則的に変化させても、全体としてのランダム性を損なうおそれは小さいからである。
【００１１】
本発明においては、
前記区域設定部は、隣接する区域間に、重複区域を設けるものとしてもよい。
区域に分割した上でランダムオブジェクトを配置すると、区域の境界部分が不自然に視認されることが生じ得る。これに対し、区域間に重複区域を設けると、境界部分の不自然さを緩和することができ、リアリティを向上させることができる。
重複区域の大きさは任意に設定可能である。また、重複区域は、必ずしも全ての隣接する区域間に設ける必要はなく、一部だけに設けるようにしてもよい。
【００１２】
先に説明した通り、本発明において配置範囲は線状の場合と面状の場合とがある。
ここで、前記配置範囲が、線状の範囲である場合には、
前記ランダムオブジェクト配置部は、前記配置範囲を規定する線上からの逸脱も許容して、前記配置を決定するものとしてもよい。
こうすることにより、配置のランダム性をより高めることができる。線上から逸脱させる量は、ランダムに決定してもよいし、規則的に変化させてもよい。また、全体として、規定された線を基準に配置されているように視認させるため、線の両側に逸脱させることが好ましい。
【００１３】
本発明において、
前記配置範囲は、面状の範囲である場合には、
前記ランダムオブジェクト配置部は、前記配置範囲を規定する面からはみ出さないという条件下で前記配置を決定するものとしてもよい。
こうすることにより、指定された面の境界を明瞭にすることができる。しかも、配置範囲が面で指定されている場合には、ランダムオブジェクトを面内にランダムに配置することができるから、ランダム性も十分に確保することができる。
【００１４】
本発明は、その他、コンピュータによって３次元地図データを生成する生成方法として構成してもよいし、これをコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また、かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。
本発明は、さらに、生成された３次元地図データを用いて３次元地図を描画する３次元地図描画システム、３次元地図描画方法、３次元描画をコンピュータに実現させるためのコンピュータプログラム、および該プログラムを記録した記録媒体などの態様で構成することも可能である。
【図面の簡単な説明】
【００１５】
【図１】実施例における３次元地図データ生成システムの構成を示す説明図である。
【図２】樹木データ生成処理のフローチャートである。
【図３】樹木２次元配置処理のフローチャートである。
【図４】グリッドの配置例を示す説明図である。
【図５】樹木ライン配置処理のフローチャートである。
【図６】出力例を示す説明図である。
【図７】配置範囲の変形例を示す説明図である。
【発明を実施するための形態】
【実施例１】
【００１６】
以下、本発明の実施例について、３次元地図を表示するための地図データベースを生成する３次元地図データ生成システムとしての例を説明する。このシステムは、建物、道路、山など地物の３次元モデルを格納した原地図データベースに対し、３次元地図中にランダムに配置されるランダムオブジェクトの３次元モデルを追加するシステムである。実施例では、ランダムオブジェクトの一例として樹木を生成する例を示す。
本実施例では、原地図データベースに対して追加される樹木の３次元モデルを、樹木データと呼ぶ。また、原地図データベースに対してランダムオブジェクトを追加したデータを、地図データベースと呼ぶ。
このシステムで生成された地図データベースは、経路探索システム、その他の３次元地図を表示、印刷等する種々の３次元地図出力システムに利用可能である。また、以下で説明する３次元地図データ生成システムの構成を経路探索システム等の３次元地図出力システムに組み込み、地図データの生成を行いながら、３次元地図を出力する構成とすることも可能である。
【００１７】
Ａ．システム構成：
図１は、実施例における３次元地図データ生成システム１００の構成を示す説明図である。３次元地図データ生成システム１００は、ＣＰＵ、ＲＡＭ、ＲＯＭを備えるコンピュータに、図示する種々の機能ブロックを実現するためのコンピュータプログラムをインストールすることによって実現される。本実施例では、３次元地図データ生成システム１００は、スタンドアロンで稼働する装置例を示したが、複数のサーバ等をネットワークで接続した分散システムによって実現してもよい。また、各機能ブロックは、ハードウェア的に構成することも可能である。
【００１８】
原地図データベース１３０は、３次元地図に表される建物、道路、山など各種地物の３次元モデルを格納したデータベースである。原地図データベース１３０は、ランダムオブジェクトの配置前のデータである。従って、樹木を表示するためのデータは格納されていない。
樹木モデルデータベース１３２は、１本の樹木を表示するための複数の３次元モデル（以下、「樹木モデル」ということもある）を格納している。樹木モデルは、１種類であっても構わない。樹木は、３次元地図内にランダムに配置されるランダムオブジェクトの一つである。実施例では、樹木モデルデータベース１３２に格納されている樹木モデルをランダムに配置することで、樹木データを生成する。
【００１９】
コマンド入力部１０２は、オペレータからのコマンドを入力する。コマンドとしては、樹木をランダムに配置すべき配置範囲の指定など、樹木データの生成に関するものが含まれる。
地図表示部１０４は、原地図データベース１３０を用いて、３次元地図を表示する。３次元地図は、上述した配置範囲の指定などに活用することができる。
配置条件設定部１０６は、オペレータからの入力等に基づき、樹木の配置範囲、配置密度などの配置条件を設定する。
グリッド配置部１０８は、設定された配置条件に従って、地図上にグリッドを設定する。本実施例では、後述する通り、指定された配置範囲を予め所定のグリッドに分割し、各グリッドに樹木をランダムに配置する方法をとる。グリッド配置部１０８は、このように樹木の配置決定の前処理として、グリッドを設定するのである。
樹木配置部１２０は、上述のグリッドを利用して、樹木をランダムに配置する。本実施例では、樹木の配置は２次元配置、ライン配置の２通りの方法で行うことができる。２次元配置部１２２は、配置範囲が閉図形で指定されているときに、その面内に樹木をランダムに配置する。ライン配置部１２４は、配置範囲が線で指定されているときに、その線を基準として樹木をランダムに配置する。いずれの方法においても、樹木の配置を決定するためには、乱数発生部１１０で発生される乱数が用いられる。
樹木データ出力部１２６は、樹木モデルデータベース１３２に格納された樹木モデルと、樹木配置部１２０で決定された配置結果に基づいて、樹木をランダムに表示するための地図データ、即ち樹木データを生成する。この樹木データは、原地図データ１３０に反映され、地図データベースとなる。
【００２０】
Ｂ．樹木データ生成処理：
図２は、樹木データ生成処理のフローチャートである。
３次元地図データ生成システム１００は、まずオペレータの指示に従って配置範囲など図中に示す種々の樹木配置条件の設定を行う（ステップＳ１０）。配置範囲とは、樹木をランダムに配置すべき領域の指定であり、閉図形で範囲を指定する領域（２次元）設定、線で範囲を指定するライン設定の２通りがある。配置範囲が、領域（２次元）設定されている場合には、樹木配置条件として、その領域内の樹木の配置密度を設定し、ライン設定されている場合には、配置線密度を設定する。配置線密度とは、単位長さ当たりの樹木の本数である。配置密度および配置線密度のいずれも、樹木の配置を決める際の目標値である。本実施例では、樹木はランダムに配置されるため、設定された配置密度および配置線密度を、配置範囲の全ての箇所で実現することは不可能であり、ある程度の過不足は許容される。
樹木種別は、ランダムに配置されるべき樹木の種類である。樹木モデルデータベース１３２に格納されている樹木モデルの中から、１種類または複数種類を選択することになる。
樹木高さ範囲は、ランダムに樹木を配置する際の高さの範囲の指定である。本実施例では、後述する通り、樹木の高さも変化させながら、配置を行う。樹木高さ範囲は、この配置の際に、樹木の高さ変化させ得る範囲を規制するものである。このように規制範囲を設けることにより、極端に低い樹木、高い樹木が発生することを回避できる。
【００２１】
３次元地図データ生成システム１００は、次に、設定された配置範囲の中から、未処理のものを処理対象として選択する（ステップＳ１２）。そして、選択した配置範囲が、領域（２次元）設定の場合には（ステップＳ１４）、樹木２次元配置処理を実行する（ステップＳ１６）。樹木２次元配置処理とは、２次元の配置範囲内で、樹木をランダムに配置するための処理である。一方、選択した配置範囲が、ライン設定の場合には（ステップＳ１４）、樹木ライン配置処理を実行する(ステップＳ１８)。樹木ライン配置処理とは、配置範囲として指定された線を基準として樹木をランダムに配置するための処理である。各処理の内容は後述する。
３次元地図データ生成システム１００は、以上の処理を、全ての配置範囲について実行し(ステップＳ２０)、樹木データ生成処理を終える。
【００２２】
Ｂ１．樹木２次元配置処理：
図３は、樹木２次元配置処理のフローチャートである。樹木データ生成処理（図２）のステップＳ１６に相当する処理である。
この処理を開始すると、３次元地図データ生成システム１００は、配置範囲および配置密度を読み込む（ステップＳ５０）。そして、配置密度に基づいてグリッドサイズを設定し（ステップＳ５２）、グリッドを配置する（ステップＳ５４）。
ここで、グリッドサイズの設定および配置について、図４を用いて説明する。
【００２３】
図４は、グリッドの配置例を示す説明図である。図中の土地Ｌの中に、点Ｐ１〜Ｐ４で樹木の配置範囲Ａが指定されているとする。樹木は、配置範囲Ａ内にランダムに配置される。
ただし、本実施例では、樹木の偏りを抑制するため、グリッドＧを設定することで、予め配置範囲Ａを分割し、グリッドを構成する各格子に樹木を配置するものとした。グリッドＧの間隔Ｇｘ，Ｇｙは、任意に設定可能であるが、本実施例では、配置密度が高いほどグリッドの間隔Ｇｘ、Ｇｙが大きくなるよう定めている。配置密度が高い場合には、比較的広いグリッドであっても、樹木の極端な偏りが生じにくく、逆に、狭いグリッドを用いると、グリッドの影響で樹木が規則的に配置されているように視認されるからである。具体的なグリッドの間隔は、こうした視覚的効果を踏まえて、配置密度に応じて設定することになる。予め配置密度とグリッドとの関係を、関数またはテーブル等で設定しておくことにより、樹木２次元配置処理の過程では、自動的にグリッドの感覚を決定することができる。
グリッドの間隔Ｇｘ、Ｇｙは、配置密度に依らず一定値としても差し支えない。
【００２４】
また、グリッドの配置方向も任意に設定可能である。図４の例では、土地Ｌまたは配置範囲Ａのいずれかの辺に沿う方向にグリッドを配置してもよい。
グリッドの目的は、配置範囲を予め分割しておくことにあるから、必ずしも矩形の格子状とする必要もなく、グリッドとして、配置範囲を辺に対する平行線、配置範囲の対角線などを利用した分割形状など、種々の形状を利用することができる。
【００２５】
図４中の×は、樹木の配置例を示している。樹木の位置は、格子ごとに乱数に基づいて決定される。図中のハッチングを付した格子ＰＧ１について、右上に樹木の配置例を示した。樹木Ｔｐの位置は、格子ＰＧ１にされた相対座標ｘ１，ｙにおいて、２組の乱数ｒｘ、ｒｙに対応する位置に決定される。
配置範囲Ａ内の各格子に対し、個別に乱数を発生させるものとしてもよいし、一つの乱数を複数の格子で流用しても良い。流用する場合には、例えば、（ｒｘ、ｒｙ）に対し、（ｒｙ、ｒｘ）のように縦横の座標を入れ替えたり、乱数ｒｘ、ｒｙを用いた演算によって他の乱数を生成するようにしてもよい。
実施例で設定されるグリッドＧの格子には、格子ＰＧ２のように、配置範囲Ａから部分的にはみ出すものも存在する。かかる格子ＰＧ２では、乱数で樹木の配置を決定すると、図示するように配置範囲Ａからはみ出すことがある。このようにはみ出した樹木については、格子ＰＧ２には配置せず、次の乱数を発生させるものとしている。こうすることで、配置範囲Ａからはみ出さずに樹木を配置することができ、配置範囲Ａの境界が不明瞭になることを回避できる。
【００２６】
図３に戻り、樹木２次元配置処理について説明する。
グリッドの配置が完了すると、３次元地図データ生成システム１００は、乱数を発生し、樹木の配置位置を決定する（ステップＳ５６）。図４で説明した通り、格子ごとに乱数に応じた位置を配置位置とする。また、配置範囲をはみ出している格子については、樹木は配置せず、その乱数を無視する。
また、３次元地図データ生成システム１００は、乱数を発生し、樹木高さおよび樹木サイズを決定する（ステップＳ５８）。本実施例では、樹木を配置する際に、樹木高さや樹木サイズも変化させるものとしている。樹木高さは、図２のステップＳ１０で指定された範囲内で乱数に応じて変化させる。例えば、指定された最低高さをＨｍｉｎ、最高高さをＨｍａｘとし、乱数ｒを０〜１．０の範囲で発生させる場合には、樹木高さは次の式で求めることができる。
樹木高さ＝（Ｈｍａｘ−Ｈｍｉｎ）×ｒ＋Ｈｍｉｎ
樹木サイズも同様に乱数に応じて変化させる。樹木高さが縦方向の拡大、縮小を意味するのに対し、樹木サイズは横方向の拡大縮小を意味する。樹木サイズについても、高さと同様、変化させる範囲を規定してもよい。
本実施例では、樹木高さ、樹木サイズに分けて拡大縮小を行っているが、両者を分けず、元の樹木モデルの縦横比を保ったままで拡大縮小してもよい。
【００２７】
以上の処理で樹木の配置、樹木高さ、樹木サイズが決定されると、３次元地図データ生成システム１００は、これらに基づいて樹木データを生成する（ステップＳ６０）。樹木データに格納される情報としては、樹木が配置される位置座標（ｘ、ｙ）、樹木種別、樹木高さ、樹木サイズが挙げられる。樹木種別は、樹木配置条件で（図２のステップＳ１０参照）指定されているものを格納することになる。複数の種別が指定されている場合には、これらの中から規則的またはランダムに選択してもよい。樹木データとして、樹木の配置位置ごとに個別に樹木モデルを格納する方法も可能ではあるが、データ容量抑制のため、樹木モデルの所在を示すインデックスを「樹木種別」として格納することにより、単一の樹木モデルを複数の配置で共有可能とすることが好ましい。
【００２８】
３次元地図データ生成システム１００は、以上の処理を樹木が指定された配置密度になるまで繰り返し実行する（ステップＳ６２）。配置密度の評価は、例えば、配置範囲Ａ内に発生した樹木の本数を求め、これを配置範囲Ａの面積で除することで求められる。この値が、指定された配置密度を超えるまで、ステップＳ５６〜Ｓ６０の処理を繰り返し実行すればよい。配置密度は、格子単位で評価してもよい。
【００２９】
Ｂ２．樹木ライン配置処理：
図５は、樹木ライン配置処理のフローチャートである。樹木データ生成処理（図２）のステップＳ１８に相当する処理である。
この処理を開始すると、３次元地図データ生成システム１００は、配置範囲および配置線密度を読み込む（ステップＳ８０）。そして、配置線密度に基づいて区間間隔Ｄを設定し（ステップＳ８２）、ラインを区間に分割する（ステップＳ８４）。
図中に分割の例を示した。
ライン配置の場合には、図中に示すラインＬＬのように、配置範囲として、樹木を配置する基準線が指定されている。基準線は直線、折れ線、曲線のいずれであってもよい。
ステップＳ８４の処理では、この基準線に沿う距離が、設定された区間間隔Ｄとなるように、区間１、区間２のように分割するのである。この区間への分割は、樹木２次元配置処理（図３）におけるグリッドの設定に相当する処理である。
区間間隔Ｄは、樹木２次元配置処理のグリッドと同様、配置線密度に基づいて決定する。例えば、配置線密度、即ち単位長さ当たりの樹木の本数が高いほど、区間間隔Ｄが大きくなるような設定とすることができる。また、区間間隔Ｄは、配置範囲全体で一定とする必要はなく、区間ごとに変化させてもよい。
【００３０】
こうして区間への分割が完了すると、３次元地図データ生成システム１００は、乱数を発生し、樹木の配置位置を決定する（ステップＳ８６）。樹木の配置は、区間上でラインに沿う方向の位置と、ラインに交差する方向のオフセットの２つで決定する。図中に区間１を例にとって位置の決定方法を示した。
区間に沿う方向の位置は、区間１の端点から乱数に応じた距離ｒｄの位置とすることができる。ラインに直交する方向のオフセットＯＳＴについても、同様に乱数で決定する方法も可能ではあるが、本実施例では、図の右側に示した表に従って規則的に変化させるものとした。オフセットＯＳＴについて、ラインの左側をプラス、右側をマイナスで表すとき、１本目のオフセットＯＳＴはプラス方向に所定値、２本目はマイナス方向に所定値、３本目は０とし、４本目以降は、この繰り返しでオフセットを決めるのである。オフセット値自体を規則的に変化させたとしても、樹木の配置がランダムに決定される結果、全体としてオフセットの規則性は失われ、違和感のない配置を実現することができる。オフセットＯＳＴの設定を３通りよりも増やせば、さらに違和感を低減させることが可能である。
オフセットＯＳＴは、必ずしも必要ではなく、樹木を必ずライン上に配置するようにしてもよい。この場合、ラインを予め波線状のように複雑な形状に変化させておいてもよい。こうすることでオフセットＯＳＴを設定したのと同様の視覚的効果を得ることができる。
【００３１】
樹木の配置が決定すると、３次元地図データ生成システム１００は、乱数を発生し、樹木高さおよび樹木サイズを決定し（ステップＳ８８）、樹木データを生成する（ステップＳ９０）。これらの処理は、樹木２次元配置処理（図３）のステップＳ５８、Ｓ６０と同様である。
３次元地図データ生成システム１００は、以上の処理を樹木が指定された配置線密度になるまで繰り返し実行する（ステップＳ９２）。配置線密度の評価は、配置範囲内に発生した樹木の本数を求め、これを配置範囲としてのラインの長さで除することで求められる。この値が、指定された配置線密度を超えるまで、ステップＳ８６〜Ｓ９０の処理を繰り返し実行すればよい。配置密度は、区間単位で評価してもよい。  
【００３２】
Ｃ．出力例：
図６は、出力例を示す説明図である。地図中の土地内に樹木を表示させた例を示した。
図中において、領域Ａａ〜Ａｅは、それぞれ閉図形で樹木の配置範囲を指定している。従って、これらの領域内では、樹木２次元配置処理（図３，４）に従って、樹木が配置されている。一方、配置範囲Ａｆは、線で指定されている。従って、配置範囲Ａｆについては、樹木ライン配置処理（図５）によって樹木が配置されている。
本実施例の方法によれば、いずれの場合においても、配置範囲を区域に分割した上で、ランダムに樹木の配置範囲を決定するため、配置範囲内で樹木を偏りなく配置することができる。この結果、配置範囲内で偏りがないという配置の一様性と、ランダム性の双方を実現することができる。
【００３３】
Ｄ．変形例：
図７は、配置範囲の変形例を示す説明図である。図７（ａ）には樹木２次元配置処理におけるグリッドの例を示した。実施例と異なり、この例では、格子Ｇ１〜Ｇ４を、相互に重複させて設定する。図中の領域Ｇ１２は、格子Ｇ１、Ｇ２の重複部分を示している。他の格子についても同様である。
かかる格子を用いるものの、樹木の配置は、それぞれの格子ごとに設定する。例えば、格子Ｇ３については、その左下の点Ｏ３を基準とする座標ｘ３、ｙ３で配置を決め、格子Ｇ４については、左下の点Ｏ４を基準とする座標ｘ４，ｙ４で配置を決める。この結果、両者の重複領域では、格子Ｇ３についての樹木と、Ｇ４についての樹木の双方が混在することになる。
【００３４】
図７（ｂ）には樹木ライン配置処理におけるグリッドの例を示した。この例でも、同様に区間１、区間２を重複させて設定する。図中の区間Ｄ１２は、区間１、区間２の重複部分を示している。他の区間についても同様に、相互に重複区間を設けておく。
かかる区間を用いるものの、樹木の配置は、それぞれの区間ごとに設定する。つまり、区間１、区間２の左端を基準とする座標値で配置を決定する。両者の重複区間Ｄ１２については、区間１、区間２の樹木が混在することになる。
【００３５】
変形例の配置範囲を用いれば、グリッドの格子または区間の境界を重複させることにより、樹木をランダムに配置したときに、樹木の分布に応じて境界部分が不自然に視認されることを緩和することができ、リアリティを向上させることができる。
【００３６】
以上で説明した実施例の３次元地図データ生成システムによれば、配置範囲内に樹木を偏りなく、かつランダムに配置することができ、違和感のない３次元地図を実現することができる。
本発明は、実施例で説明した種々の特徴を全て備えている必要はなく、適宜、一部を省略したり組み合わせたりして構成することも可能である。また、本発明は、３次元データ生成システムとしての構成の他、こうして生成された３次元地図データを用いて３次元地図を出力する３次元地図出力システムとして構成してもよい。この場合は、予め生成された３次元地図データを格納しておき、３次元地図の出力を行うものとしてもよいし、３次元地図の出力時に３次元地図データを生成するようにしてもよい。
配置範囲の分割方法についても、例えば、実施例と変形例とを組み合わせ、重複領域を設ける部分とそうでない部分とを混在させるようにしてもよい。
【００３７】
実施例では、樹木の配置を例にとって説明したが、本発明は、３次元地図中にランダムに配置される種々のランダムオブジェクトを対象として構成することができる。
【産業上の利用可能性】
【００３８】
本発明は、３次元地図内にランダムに配置されるオブジェクトを描画する地図データの生成に利用可能である。
【符号の説明】
【００３９】
１００…３次元地図データ生成システム
１０２…コマンド入力部
１０４…地図表示部
１０６…配置条件設定部
１０８…グリッド配置部
１１０…乱数発生部
１２０…樹木配置部
１２２…２次元配置部
１２４…ライン配置部
１２６…樹木データ出力部
１３０…原地図データベース
１３２…樹木モデルデータベース
【図１】
2015007932.tif 000003
【図２】
2015007932.tif 000004
【図３】
2015007932.tif 000005
【図４】
2015007932.tif 000006
【図５】
2015007932.tif 000007
【図７】
2015007932.tif 000008
【図６】
2015007932.tif 000009