JP5883817B2 - 描画データ生成装置および描画装置 - Google Patents
描画データ生成装置および描画装置 Download PDFInfo
- Publication number
- JP5883817B2 JP5883817B2 JP2013057496A JP2013057496A JP5883817B2 JP 5883817 B2 JP5883817 B2 JP 5883817B2 JP 2013057496 A JP2013057496 A JP 2013057496A JP 2013057496 A JP2013057496 A JP 2013057496A JP 5883817 B2 JP5883817 B2 JP 5883817B2
- Authority
- JP
- Japan
- Prior art keywords
- line
- data
- line data
- original
- function
- 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
Links
- 230000010354 integration Effects 0.000 claims description 51
- 238000000034 method Methods 0.000 claims description 48
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 49
- 230000008569 process Effects 0.000 description 37
- 230000005540 biological transmission Effects 0.000 description 7
- 238000002156 mixing Methods 0.000 description 5
- 239000000203 mixture Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/3867—Geometry of map features, e.g. shape points, polygons or for simplified maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/44—Browsing; Visualisation therefor
- G06F16/444—Spatial browsing, e.g. 2D maps, 3D or virtual spaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/10—Map spot or coordinate position indicators; Map reading aids
- G09B29/106—Map spot or coordinate position indicators; Map reading aids using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Educational Administration (AREA)
- Business, Economics & Management (AREA)
- Educational Technology (AREA)
- Mathematical Physics (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Instructional Devices (AREA)
- Image Generation (AREA)
Description
一方、グラフィックスライブラリには、それぞれ利用する際の制約があり、必ずしも描画対象となるポリゴンデータが、こうした制約を満足しているとは限らない。かかる場合には、ポリゴンデータを、グラフィックスライブラリの制約に適合するように加工する必要が生じる。特許文献1は、かかる加工の一例として、グラフィックスライブラリが取り扱い可能な頂点数に上限値がある場合、ポリゴンを描画する際に、上限値に基づいてポリゴンを分割して描画する技術を開示している。
また、描画すべきポリゴンデータが、地図データのように多数のポリゴンからなる大容量のデータの場合には、描画速度を速めるため、データ量を削減する処理も行われる。特許文献2は、かかる処理の一例として、ポリゴンを描画する際に、辺間の角度が大きい場合には、頂点数を間引くことによって、ポリゴンの描画速度を速める技術を開示している。
描画速度の向上は、電子地図に限った課題ではなく、画像の描画に共通の課題である。本発明は、グラフィックスライブラリを用いる場合に、画像の描画速度の向上を図ることを目的とする。
グラフィックスライブラリを用いて画像を描画するための描画データを生成する描画データ生成装置であって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記描画データ生成装置は、
前記描画すべき原データを格納する原データベースと、
前記原データのうち、複数の前記ラインデータを一本のラインデータに統合するラインデータ統合部とを有しており、
前記ラインデータ統合部は、
前記原データに含まれるラインデータのうち、前記ライン関数を共通の設定で用いて描画されるべき複数のラインデータを抽出し、
前記抽出された複数のラインデータを連結して一本のラインデータに統合するように、前記ラインデータの端点のうち空間的に離れている端点間を、非表示のラインで連結するデータを生成する描画データ生成装置として構成することができる。
これに対し、本発明によれば、複数のラインデータを非表示のラインで連結することで一本のラインデータに統合することができる。従って、統合化されたラインデータを描画するためには、ライン関数を1回読み出せば足りるため、描画に要する所要時間を短縮することができる。もっとも、ラインを統合する分、1回のライン関数で描画すべきラインデータを構成する頂点数は統合前よりも増大するため、処理時間を増大させる要素とはなり得る。しかし、かかる増大要素よりも、ライン関数の呼び出し回数を減らすことによる所要時間の短縮効果の方が大きいため、全体として処理時間を短縮することが可能となるのである。
グラフィックスライブラリを用いて描画を行う場合、頂点間の区間ごとにラインの表示/非表示は容易に切り換えることができる。従って、ラインデータの間を非表示のラインで連結するのは、ラインデータ間に新たなラインを定義するとともに、当該区間を非表示と設定することにより、容易に実現することができる。
統合の対象となるラインデータは、ライン関数を共通の設定で用いて描画できるものである。例えば、ラインの太さ・線種等が共通のラインなどが対象となり得る。どのようなラインが統合の対象となるかは、利用するグラフィックスライブラリに応じて定まることになる。
前記ライン関数が、ラインの一方の頂点に指定された第1の表示態様から、他方の頂点に指定された第2の表示態様に、表示態様を順次変化させながら該ラインを描画する機能を有している場合、
前記描画データ生成装置は、さらに、
前記統合の際に、前記非表示のラインで連結すべき端点に重ねて、新たに連結で用いるためのダミー点を追加するダミー点追加部を備え、
前記ラインデータ統合部は、前記ダミー点間を非表示のラインで連結するものとしてもよい。
このようなライン関数の場合、原データに存在する第1のラインの端点(第1の端点と呼ぶ)と、第2のラインの端点(第2の端点と呼ぶ)とを非表示のラインで連結しようとすると、第1のライン、および第2のライン自体が、それぞれ第1の端点、第2の端点に向けて徐々に透明に描かれる自体も生じ得る。
これに対し、本発明によれば、第1の端点、第2の端点にダミー点をそれぞれ追加した上で、これらのダミー点の間を非表示のラインで連結するため、第1のライン、第2のラインは、非表示のラインの影響を受けることなく適正に描画される。
前記ラインデータ統合部は、前記空間的に離れている端点のうち、距離が近い端点同士を連結するものとしてもよい。
こうすることにより、統合したラインの全体の距離を短くすることができ、ラインの描画時間をより短縮することが可能となる。
前記原データベースは、前記各ラインデータに固有の原インデックス情報が、それぞれラインデータに関連づけて格納されており、
前記ラインデータ統合部は、前記原インデックス情報とは別に、前記統合されたラインデータの形状、属性を示す固有の統合インデックス情報を生成するものとしてもよい。
ラインを統合した後でも、原データのラインと、統合化のために追加された非表示のラインとは区別可能としておく必要がある。また、原データにおいて、ラインデータごとに、色、線種などの属性が設定されていることがあり、こうした情報は、参照可能な状態で保持しておく必要がある。
上記態様によれば、ラインに関連づけられた原インデックス情報は保持されているため、原データのラインに付されていた形状や属性も参照可能となる。また、これと同時に、統合化されたライン全体のインデックス情報も生成されるため、統合化された後のライン全体としての取り扱いも容易となる利点がある。
グラフィックスライブラリを用いて画像を描画する描画装置であって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記描画装置は、
所定サイズのメッシュに区切って生成された前記描画すべき原データを格納する原データベースと、
前記描画の対象となるメッシュが複数あるとき、異なるメッシュに存在する前記ラインデータの端点同士を仮想的に連結して一本のラインデータに統合するライン描画データ設定部と、
前記統合されたラインデータに基づいて前記ライン関数を呼び出すことによって描画を行う描画部とを備える描画装置とする態様である。
上記描画装置によれば、メッシュ間でラインを連結して描画することにより、ライン関数の呼び出し回数を減少させることができ、描画の所要時間短縮を図ることができる。
さらに、前記メッシュごとに、該メッシュ内の複数のラインデータを統合するために、先に説明したいずれかの描画データ生成装置を備え、
前記ライン描画データ設定部は、前記メッシュごとに統合されたラインデータを対象として前記統合を行うものとしてもよい。
こうすることにより、メッシュ内のラインも統合化し、かつ、メッシュ間でも統合化することができるから、より一層、ライン関数の呼び出し回数を減少させることができる。
本発明は、さらに、コンピュータによって描画データを生成する生成方法または画像を描画する描画方法として構成してもよい。また、描画データの生成や画像の描画をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また、かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。
本発明の描画対象は、地図に限られるものではないから、本発明は、経路案内システムとしての態様に限らず、グラフィックスライブラリを用いて画像を描画する種々の描画装置に適用可能である。
図1は、経路案内システムの構成を示す説明図である。経路案内システムは、サーバ200から提供されるデータに基づいて、端末300において地図を表示しながら、ユーザが指定した出発地から目的地までの経路を案内するシステムである。サーバ200と端末300とはインターネットなどのネットワークNE2で接続されている。本実施例では、端末300としては、CPU、RAM、ROMを備えるスマートフォンを利用したが、携帯電話、パーソナルコンピュータ、タブレット端末など、電子地図を表示可能な種々の装置を利用することができる。
図1には、さらに、地図を効率的に描画するための描画データを生成する描画データ生成装置100も併せて示した。描画データ生成装置100は、CPU、RAM、ROMを備えるパーソナルコンピュータを利用して構成されており、原地図データベース104から、描画用地図データベースを生成する装置である。描画データ生成装置100は、ネットワークNE1でサーバ200に接続されており、生成された描画用地図データベースは、サーバ200に格納される。
描画データ生成装置100、サーバ200、端末300には、それぞれ図示する機能ブロックが備えられている。本実施例では、これらの機能ブロックは、それぞれの機能を実現するためのコンピュータプログラムをインストールすることによってソフトウェア的に構成したが、これらをハードウェア的に構成することも可能である。
また、本実施例で示した描画データ生成装置100、サーバ200、端末300が備える機能は、一例に過ぎず、全ての機能を1台で実現するスタンドアロンの装置として構成することも可能である。また、図示したよりも多数のサーバ等からなる分散システムとして構成してもよい。
以下、各装置ごとに構成を説明する。
原地図データベース104は、地図で描画されるべき地物の形状等を表すポリゴンデータ、ラインデータを格納したデータベースである。本実施例では、3次元の形状を表す3次元地図データを格納するものとした。原地図データベース104を、そのまま用いて透視投影等によって3次元地図を描画することも可能なデータである。本実施例では、描画速度を向上させるため、描画データ生成装置100で、加工し、描画用地図データベース103を生成するのである。
コマンド入力部101は、原地図データベース104に対する加工について、オペレータからの指示等を入力する。
ラインデータ統合部102は、上述した加工として、原地図データベース104に含まれる複数のラインを表すラインデータを連結し、1本のラインデータにする処理を行う。以下では、この処理を、統合化と呼ぶこともある。
ダミー点追加部106は、加工の対象となるラインデータの端点に重ねて、連結用にダミーの点を生成する。ダミーの点を生成する理由については、統合化の処理概要とともに後述する。
描画用地図データベース103は、ラインデータ統合部102によって加工され、描画の処理速度向上を図った描画用の地図データを格納する。
送受信部105は、サーバ200との間でデータの送受信を行う。本実施例では、描画用地図データベース103に格納された地図データは、送受信部105により、ネットワークNE1経由でサーバ200に送信される。
地図データベース210には、描画用地図データベース211およびネットワークデータ213が格納されている。描画用地図データベース210は、描画データ生成装置100で生成された地図データであり、地物の形状を表すポリゴンデータ、ラインデータおよび文字データが格納されている。ネットワークデータ213は、道路をリンクおよびノードで表した経路探索用のデータである。
データベース管理部202は、地図データベース210のデータの入出力を管理する。本実施例では、描画データ生成装置100で生成された描画用地図データベース211のアップデートを行ったり、地図表示時に必要な地図データを地図データベース210から読み出したりする。
経路探索部203は、ネットワークデータ213を利用して、端末300のユーザから指定された出発地から目的地までの経路を探索する。経路探索は、ダイクストラ法など周知の方法によって行うことができる。
送受信部201は、ネットワークNE1、NE2を介して、描画データ生成装置100および端末300との間で、種々のデータやコマンドの送受信を行う。
主制御部304は、端末300に備えられた各機能ブロックの動作を統合制御する。
送受信部301は、ネットワークNE2を介してサーバ200との間で、データやコマンドの送受信を行う。
コマンド入力部302は、ユーザからの経路案内等に関する指示などを入力する。指示としては、例えば、経路案内の出発地、目的地の指定、地図表示時の表示スケールの指定などが挙げられる。
位置・通行情報取得部303は、GPS(Global Positioning System)等のセンサから端末300の現在位置を取得したり、ネットワークNE2経由で、交通渋滞や通行規制の情報を取得する。
地図情報記憶部305は、地図を表示する際に、サーバ200から取得した描画用地図データベース211を一時的に記憶する。本実施例では、端末300は、予め全ての地図データを記憶しておくのではなく、地図の表示範囲に応じて必要となる地図データを適宜、サーバ200から取得する。地図情報記憶部305は、こうして取得された地図データを記憶している。また、併せて、経路探索の結果も記憶する。
表示制御部306は、地図情報記憶部305に記憶されている地図データを用いて、端末300のディスプレイ300dへの地図表示を行う。表示制御部306には、ポリゴンやラインを描画するためのグラフィックスライブラリが備えられており、描画は、適宜、グラフィックスライブラリの関数を呼び出すことで実行される。グラフィックスライブラリとしては、例えば、OpenGLやDirectXを用いることができる。
ライン描画データ設定部307は、表示制御部306による描画速度を向上させるため、地図データの加工を行う。先に説明した通り、本実施例では、地図データには、描画データ生成装置100によって、描画速度を向上させるための加工が予め施されている。ただし、地図の表示範囲が定まっていない状態では、加工できる範囲にも制限がある。そこで、ライン描画データ設定部307は、地図を表示する時点で改めて実現可能な加工を施すのである。
図2は、原地図データベースのデータ構造を示す説明図である。原地図データベースは、複数のレベル、即ち詳細度に分けて格納されている。図の上側にレベルの概要を示した。レベルnは、詳細度の高いデータであり、所定サイズの矩形形状からなるメッシュ単位でデータが格納されている。レベルn−1は、レベルnよりも粗いデータであり、主要な道路、建物等のデータを格納する。レベルn−1もメッシュ単位でデータが格納されるが、メッシュのサイズは、レベルnよりも広い。レベルn−2は、さらに粗く、広いメッシュ単位で格納された地図データである。
レベルnのデータを例にとって、地図データの構成を説明する。
「属性」としては、ラインデータが表す地物の「名称」、道路種別など地物の「種別」、ラインを描画する際の「線種」、「線色」、「線幅」、および表示/非表示の指定などが設定されている。
文字データは、地図中に表示される文字を表すデータである。文字データにも、固有のインデックス情報である「ID」が付されて管理されている。「文字列」は“○○市”のように地図中に記載される文字を表し、「位置」は文字を表示すべき位置の座標値(XC,YC,ZC)を表している。また、文字を表示する際のフォント、サイズ、色なども併せて指定されている。
ポリゴンデータは、建物その他の地物の形状を表すデータである。ポリゴンデータも、地物単位で生成されており、固有のインデックス情報である「ID」によって管理されている。ポリゴン形状は、頂点1(XP1,YP1,ZP1)、点2(XP2,YP2,ZP2)のように、ポリゴンを規定する頂点の座標の集合で表される。「属性」としては、ポリゴンが表す地物の「名称」、建物や池などの「種別」等が指定されている。
図2では、原地図データベースのデータ構造を例示したが、描画用地図データベースの構造も同様である。本実施例における描画用地図データベースは、データ構造自体を大きく変更するものではなく、ラインデータに対して、付加的な情報を付すことによって、描画処理速度の向上を図るものである。
図3は、ラインデータの統合処理の概要を示す説明図である。図3(a)に、統合化前のラインデータの様子を示した。図の例では、地図中には、街中の細い道路のように細線で描かれるラインL1、L3と、国道などの主要な道路のように太線で描かれるラインL2、L4、L5がある。図の右側には、これらのラインに対応するラインデータの格納状況を示した。この例では、各ラインを構成する頂点は、ラインデータ(図2)におけるIDや属性とは別のメモリ領域にまとめて格納されているものとする。ラインデータには、頂点の座標列として、頂点が格納されたメモリ領域を特定するポインタが格納されることになる。
頂点記憶用のメモリ領域には、ラインL1については頂点P11、P12が記憶される。次に、ラインL2を構成する頂点P21、P22が記憶される。同様に、ラインL3、L4、L5を構成する頂点P31〜P33、P41〜P42、P51〜P52がそれぞれ記憶される。このように、ラインデータ内では、各ラインL1〜L5は個別のものとして扱われているため、頂点もラインごとに格納されている。
細線で描かれるラインL1、L3を統合化する場合、ラインL1の一方の端点P12と、ラインL3の一方の端点P31を非表示のラインLA1で連結する。非表示のラインLA1の線の太さは、ラインL1、L3と同じである。
非表示のラインLA1は、ラインL1の端点P11、P12、およびラインL3の端点P31,P33のいずれの間を連結してもよいが、本実施例では、連結の距離が最も短くなるよう端点P12と端点P31という組み合わせを選択した。ラインLA1は、端点P12と端点P31とを直接、連結するものとしてもよいが、本実施例では、端点P12に重ねてダミー点PA11、端点P31に重ねてダミー点PA12を生成し、ダミー点PA11、PA12を連結して非表示ラインLA1を定義した。
ダミー点PA11、PA12を設ける理由は、次の通りである。
これに対し、ダミー点PA11、PA12を追加しておけば、ラインLA1を非表示にする場合でも、頂点P11、P12の間、および頂点P31、P32の間は、その影響を受けることなく適正に描画される。厳密な意味では、頂点P12からダミー点PA11に向けてブレンドが行われることになるが、両者は同一の位置にある点なので、ブレンドの結果は、描画されたラインで視認することはできない。
この結果、統合化の前は、ラインL1〜L5を描くために、ライン関数を5回、呼び出す必要があるのに対し、統合化の後は、細線を描くために1回、太線を描くために1回の合計2回、ライン関数を呼び出せば済むこととなり、ライン関数の呼び出し回数を減少させることができ、処理時間の短縮を図ることができる。
ライン関数においては、区間ごとにラインの表示/非表示を制御できるから、それぞれ非表示ラインLA1、LA2、LA3を非表示として描画することにより、ラインL1〜L5を個別に描画する場合と同じ描画結果を得ることができるのである。
統合化した後は、図3(c)に示すように、細線のラインについては、これを1つのライン関数で描画するためには、ラインL1の頂点、非表示のラインLA3の頂点、ラインL3の頂点というようにまとめて格納しておくことが好ましい。また、太線のラインについては、1つのライン関数で描画するため、ラインL2の頂点、非表示のラインLA2の頂点、ラインL4の頂点、非表示のラインLA3の頂点、ラインL5の頂点というようにまとめて格納しておくことが好ましい。
しかし、統合化処理において、このようにデータの格納先を変更していては、処理負荷が多大となる。そこで、本実施例では、図示する通り、頂点の格納先を示すポインタ等を利用するものとした。
図の右側には、統合化した後のラインの線種別インデックスを示した。実施例では、細線で描画されるライン、太線で描画されるラインをそれぞれ統合化したため、2種類の線種別インデックスが生成されることになる。
まず、統合化されたラインに固有の「ID」が付される。
その後、統合化されたラインの形状がポインタによって指示される。細線の場合には、まず、端点となる頂点P11のポインタが格納される。データ点数は、格納されたポインタから連続して読み出すべき頂点数を表す。例えば、細線を形成するラインL1、LA1、L3のデータが連続した領域に格納されている場合には、頂点P11から、7つの頂点を読み出せばよいから、データ点数として7が格納されることになる。
一方、非表示のラインLA1、ラインL3の頂点が、ラインL1の頂点P11、P12と連続した領域と異なる領域に格納されている場合には、それぞれ非表示のラインLA1の頂点PA11を表すポインタ、ラインL3の頂点P31を表すポインタも格納されることになる。
太線の場合も同様に、「ID」に対し、太線の端点となる頂点P21のポインタおよびデータ点数が格納される。太線を構成するラインL2、LA2、L4、L5の頂点が連続していない領域に格納されている場合には、それぞれの頂点を表すポインタも併せて格納されることになる。
図4は、ラインデータ統合処理のフローチャートである。描画データ生成装置100のラインデータ統合部102、およびダミー点追加部106が実行する処理であり、ハードウェア的には、描画データ生成装置100のCPUが実行する処理である。
図4(a)にはフローチャートを示し,図4(b)には処理の例を示した。ここでは、統合化前の原データに存在するラインを実線で表し、統合化する過程で生成される非表示のラインを破線で表している。
図4(b)の例では、メッシュ境界上の頂点P1がスタートポイントとして選択されている。
図4(b)の例では、スタートポイントP1からラインデータをたどり、端点P2が特定される。端点P2の近傍にある他の端点としては、端点P3,P5、P6が存在する。CPUは、端点P2と端点P3、P5、P6との距離をそれぞれ計算し、端点P2から最短の距離にある端点P3を選択する。この端点P3が非表示のラインで結合すべき端点となる。
図4(b)の例では、端点P2にダミー点PA1、端点P3にダミー点PA2を追加し、両者間を破線で示した非表示ラインで連結している。
図4(b)の例では、CPUは、端点P3からラインデータをたどり端点P5にたどり着くと、端点P5から最短距離にある端点P6を選択する(ステップS13)。そして、端点P5にダミー点PA3、端点P6にダミー点P4を追加し、両者間を非表示のラインで結合する。
さらに、CPUは、端点P6からラインデータをたどり端点P7にたどり着くと、端点P7から最短距離にある端点P8を選択する(ステップS13)。そして、端点P7にダミー点PA5、端点P8にダミー点PA6を追加し、両者間を非表示のラインで結合する。この結果、全ラインが1つに結合されたことになるから、ステップS15までの処理が完了することになる。
こうして、ラインデータについては、メッシュ内で、線種、線幅ごとに、一本のラインに統合化されており、ライン関数を線種、線幅ごとに1回読み出すだけで描画できる状態となっている。
次に、描画用地図データを活用して地図表示を行う例として、経路案内処理について示す。経路案内処理は、経路探索によって得られた経路を地図表示しながら案内する処理である。経路探索は、経路案内に先立ってサーバ200においてなされている。
図5は、経路案内処理のフローチャートである。これは、主として端末300の表示制御部306、ライン描画データ設定部307によって行われる処理であり、ハードウェア的には端末300のCPUによって行われる処理である。
処理を開始すると、端末300は、経路探索結果、現在位置、渋滞情報、地図表示サイズを入力する(ステップS20)。経路探索結果は、サーバ200から取得することができる。現在位置は、GPSなどのセンサを利用して検出することができる。渋滞情報は、インターネット等を介して取得できる。地図表示サイズは、ユーザからの指定を受け付ける。
そして、端末300は、地図表示に必要となる地図データを読み込む(ステップS21)。本実施例では、端末300は、まず地図情報記憶部305に格納されているデータを読み込む、そして地図を表示するために地図データが不足している場合には、不足分をサーバ200から取得する。
図中に処理の概要を示した。頂点P1、P2、P3を通る道路において、頂点P1、P2の間が、探索された経路または渋滞している道路に該当し、色を変更する必要があるものとする。
中段には、ダミー点を追加せずに色の設定を行った場合を例示した。ライン関数のブレンド機能により、頂点P1、P2に表示色を設定すると、頂点P2、P3の間でグラデーションがかかった表示となってしまうのである。例えば、本来、頂点P1、P2、P3を通る道路が赤で表示されるべき道路である場合において、探索された経路であることを表すために、頂点P1、P2間を青に設定したとする。この場合、頂点P1、P2間が青で表示されるのに伴い、頂点P2、P3間では、頂点P2から頂点P3に向けて青から徐々に赤になるように表示されてしまう。
下段には、ダミー点を追加した状態を例示した。原データの頂点P2と同じ位置にダミー点PAを追加し、色の設定を行う。例えば、頂点P1、P2間は青で、頂点PA,P3間は赤で表示するように設定する。こうすることにより、頂点P1、P2間の表示色の影響を受けることなく、頂点PA、P3間を表示することができる。厳密に言えば、頂点P2、PA間でブレンドが行われることになるが、両者は同一の位置にある点であるため、このブレンドは視認されないのである。
図中に処理の概要を示した。ラインデータ統合処理(図4)によって、各メッシュ内では、線種、線幅が同じラインは、一本に統合化されている。メッシュ1、2内の各ラインは、それぞれメッシュ内で統合化された結果を表している。統合化されたラインには、線種別インデックス1,2が用意され、ラインを構成する頂点は、ポインタによって特定されている。
地図を表示する際には、メッシュをまたがって地図データを利用する場合がある。本実施例では、このような場合に、さらに描画の高速化を図るため、メッシュ間で線種、線幅が共通のライン同士を結合するのである。この処理は、メッシュ内の統合化と同様の方法によって行うことができる。即ち、異なるメッシュに存在する統合化されたラインを線種、線幅に基づいてグループ化し、これらの端点のうち、最短距離にあるもの同士を非表示のラインで結合するのである。
連結する端点同士の位置座標が異なる場合には、ブレンド機能による影響を回避するため、各端点にダミー点を追加した上で結合する。端点同士の位置座標が同一の場合には、ブレンド機能による影響は視認できないから、ダミー点の追加を省略してもよい。
以上で説明した実施例によれば、地図を表示する際に、線種、線幅が共通のラインを統合化することによって、グラフィックスライブラリに備えられたライン関数の呼び出し回数を減らすことができ、表示処理に要する時間を短縮することができる。グラフィックスライブラリを用いて描画を行う場合、ライン関数の呼び出しに少なからず処理時間を要するため、呼び出し回数の減少による処理時間の短縮効果は大きいからである。
本実施例では、統合化の処理を静的処理/動的処理の2段階で行っている。静的処理とは、予めメッシュ単位で統合化処理を行って描画用地図データベースを生成する処理(図4)を意味する。こうすることにより、メッシュ単位の描画速度を速めることができる。動的処理とは、端末300で地図表示時に行う、メッシュ間でのラインデータの結合処理である(図5)。こうすることにより、複数のメッシュにまたがって地図を表示する場合、さらなる描画速度の高速化を図ることができる。
実施例では、経路案内システムを例示したが、本発明は、経路案内と無関係に地図を表示するシステムとして構成することも可能である。また、本発明は、地図に限らず、グラフィックスライブラリを利用して画像を描画する描画装置一般に利用可能である。
本発明は上述の実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてハードウェア的に構成されている部分は、ソフトウェア的に構成することもでき、その逆も可能である。
101…コマンド入力部
102…ラインデータ統合部
103…描画用地図データベース
104…原地図データベース
105…送受信部
106…ダミー点追加部
200…サーバ
201…送受信部
202…データベース管理部
203…経路探索部
210…地図データベース
211…描画用地図データベース
213…ネットワークデータ
300…端末
300d…ディスプレイ
301…送受信部
302…コマンド入力部
303…位置・通行情報取得部
304…主制御部
305…地図情報記憶部
306…表示制御部
307…ライン描画データ設定部
Claims (10)
- グラフィックスライブラリを用いて画像を描画するための描画データを生成する描画データ生成装置であって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記描画データ生成装置は、
前記描画すべき原データを格納する原データベースと、
前記原データのうち、複数の前記ラインデータを一本のラインデータに統合するラインデータ統合部とを有しており、
前記ラインデータ統合部は、
前記原データに含まれるラインデータのうち、前記ライン関数を共通の設定で用いて描画されるべき複数のラインデータを抽出し、
前記抽出された複数のラインデータを連結して一本のラインデータに統合するように、前記ラインデータの端点のうち空間的に離れている端点間を、非表示のラインで連結するデータを生成する描画データ生成装置。 - 請求項1記載の描画データ生成装置であって、
前記ライン関数は、ラインの一方の頂点に指定された第1の表示態様から、他方の頂点に指定された第2の表示態様に、表示態様を順次変化させながら該ラインを描画する機能を有しており、
前記描画データ生成装置は、さらに、
前記統合の際に、前記非表示のラインで連結すべき端点に重ねて、新たに連結で用いるためのダミー点を追加するダミー点追加部を備え、
前記ラインデータ統合部は、前記ダミー点間を非表示のラインで連結する描画データ生成装置。 - 請求項1または2記載の描画データ生成装置であって、
前記ラインデータ統合部は、前記空間的に離れている端点のうち、距離が近い端点同士を連結する描画データ生成装置。 - 請求項1〜3いずれか記載の描画データ生成装置であって、
前記原データベースは、前記各ラインデータの形状、属性を示す固有の原インデックス情報が、それぞれラインデータに関連づけて格納されており、
前記ラインデータ統合部は、前記原インデックス情報とは別に、前記統合されたラインデータの形状、属性を示す固有の統合インデックス情報を生成する描画データ生成装置。 - グラフィックスライブラリを用いて画像を描画する描画装置であって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記描画装置は、
所定サイズのメッシュに区切って生成された前記描画すべき原データを格納する原データベースと、
前記描画の対象となるメッシュが複数あるとき、異なるメッシュに存在する前記ラインデータの端点同士を仮想的に連結して一本のラインデータに統合するライン描画データ設定部と、
前記統合されたラインデータに基づいて前記ライン関数を呼び出すことによって描画を行う描画部とを備える描画装置。 - 請求項5記載の描画装置であって、
さらに、前記メッシュごとに、該メッシュ内の複数のラインデータを統合する請求項1〜4いずれか記載の描画データ生成装置を備え、
前記ライン描画データ設定部は、前記メッシュごとに統合されたラインデータを対象として前記統合を行う描画装置。 - グラフィックスライブラリを用いて画像を描画するための描画データを、コンピュータによって生成する描画データ生成方法であって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記コンピュータが実行するステップとして、
前記描画すべき原データを格納する原データベースから前記原データを読み出すステップと、
前記原データのうち、複数の前記ラインデータを一本のラインデータに統合するラインデータ統合ステップとを有しており、
前記ラインデータ統合ステップは、
前記原データに含まれるラインデータのうち、前記ライン関数を共通の設定で用いて描画されるべき複数のラインデータを抽出し、
前記抽出された複数のラインデータを連結して一本のラインデータに統合するように、前記ラインデータの端点のうち空間的に離れている端点間を、非表示のラインで連結するデータを生成する描画データ生成方法。 - グラフィックスライブラリを用いて画像を描画するための描画データを生成するためのコンピュータプログラムであって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記コンピュータプログラムは、
前記描画すべき原データを格納する原データベースから前記原データを読み出す機能と、
前記原データのうち、複数の前記ラインデータを一本のラインデータに統合するラインデータ統合機能とをコンピュータに実現させるコンピュータプログラムであり、
前記ラインデータ統合機能は、
前記原データに含まれるラインデータのうち、前記ライン関数を共通の設定で用いて描画されるべき複数のラインデータを抽出し、
前記抽出された複数のラインデータを連結して一本のラインデータに統合するように、前記ラインデータの端点のうち空間的に離れている端点間を、非表示のラインで連結するデータを生成する機能であるコンピュータプログラム。 - グラフィックスライブラリを用いてコンピュータにより画像を描画する描画方法であって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記コンピュータが実行するステップとして、
所定サイズのメッシュに区切って生成された前記描画すべき原データを格納する原データベースから原データを読み出すステップと、
前記描画の対象となるメッシュが複数あるとき、異なるメッシュに存在する前記ラインデータの端点同士を仮想的に連結して一本のラインデータに統合するライン描画データ設定ステップと、
前記統合されたラインデータに基づいて前記ライン関数を呼び出すことによって描画を行う描画ステップとを備える描画方法。 - グラフィックスライブラリを用いて画像を描画するためのコンピュータプログラムであって、
前記グラフィックスライブラリは、ラインデータによって指定された頂点間を順次結んでラインを描画するライン関数を有しており、
前記コンピュータプログラムは、
所定サイズのメッシュに区切って生成された前記描画すべき原データを格納する原データベースから原データを読み出す機能と、
前記描画の対象となるメッシュが複数あるとき、異なるメッシュに存在する前記ラインデータの端点同士を仮想的に連結して一本のラインデータに統合するライン描画データ設定機能と、
前記統合されたラインデータに基づいて前記ライン関数を呼び出すことによって描画を行う描画機能とをコンピュータに実現させるためのコンピュータプログラム。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013057496A JP5883817B2 (ja) | 2013-03-21 | 2013-03-21 | 描画データ生成装置および描画装置 |
CN201480017238.3A CN105051787A (zh) | 2013-03-21 | 2014-03-18 | 绘图数据生成装置和绘图装置 |
PCT/JP2014/001528 WO2014148039A1 (en) | 2013-03-21 | 2014-03-18 | Drawing data generation device and drawing device |
EP14768460.9A EP2989613A4 (en) | 2013-03-21 | 2014-03-18 | Drawing data generation device and drawing device |
KR1020157025615A KR102181451B1 (ko) | 2013-03-21 | 2014-03-18 | 드로잉 데이터 생성 장치 및 드로잉 장치 |
US14/859,058 US20160078650A1 (en) | 2013-03-21 | 2015-09-18 | Drawing data generation device and drawing device |
HK16102752.6A HK1214876A1 (zh) | 2013-03-21 | 2016-03-10 | 繪圖數據生成裝置和繪圖裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013057496A JP5883817B2 (ja) | 2013-03-21 | 2013-03-21 | 描画データ生成装置および描画装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014182670A JP2014182670A (ja) | 2014-09-29 |
JP5883817B2 true JP5883817B2 (ja) | 2016-03-15 |
Family
ID=51579736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013057496A Active JP5883817B2 (ja) | 2013-03-21 | 2013-03-21 | 描画データ生成装置および描画装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20160078650A1 (ja) |
EP (1) | EP2989613A4 (ja) |
JP (1) | JP5883817B2 (ja) |
KR (1) | KR102181451B1 (ja) |
CN (1) | CN105051787A (ja) |
HK (1) | HK1214876A1 (ja) |
WO (1) | WO2014148039A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101665653B1 (ko) | 2015-04-27 | 2016-10-13 | (주)클로버추얼패션 | 디지털 의상 객체 생성 방법 및 장치 |
JP2017207652A (ja) * | 2016-05-19 | 2017-11-24 | アイシン・エィ・ダブリュ株式会社 | 地図表示システムおよび地図表示プログラム |
CN107818069B (zh) * | 2016-09-12 | 2021-10-01 | 阿里巴巴集团控股有限公司 | 数据处理方法及系统 |
CN110660113A (zh) * | 2018-06-29 | 2020-01-07 | 比亚迪股份有限公司 | 特征地图的建立方法、装置、采集设备和存储介质 |
KR102534879B1 (ko) * | 2018-07-02 | 2023-05-22 | 한국전자통신연구원 | 자동 천초용 정보 제공 장치 및 그 제공 방법 |
CN110264542B (zh) * | 2019-05-29 | 2023-09-05 | 浙江中控信息产业股份有限公司 | 在线绘制地图海量线的方法 |
CN113157330A (zh) * | 2021-01-13 | 2021-07-23 | 惠州Tcl移动通信有限公司 | 一种在地图层绘制图形的方法、装置及存储介质 |
US20240290015A1 (en) * | 2023-02-27 | 2024-08-29 | Adobe Inc. | Connecting paths based on primitives |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5418906A (en) | 1993-03-17 | 1995-05-23 | International Business Machines Corp. | Method for geo-registration of imported bit-mapped spatial data |
JPH07200847A (ja) * | 1993-12-31 | 1995-08-04 | Casio Comput Co Ltd | 図形出力装置 |
JPH1011591A (ja) * | 1996-06-27 | 1998-01-16 | Daikin Ind Ltd | 有穴ポリゴンの幾何学的分割方法 |
EP1115101A4 (en) * | 1999-05-25 | 2006-05-17 | Mitsubishi Electric Corp | CARD MANUFACTURING DEVICE |
KR100309582B1 (ko) * | 2000-04-27 | 2001-11-07 | 정평영 | 2차원 캐드인터페이스를 이용한 물량산출 시스템과 그 방법 |
JP2003109032A (ja) * | 2001-09-26 | 2003-04-11 | Pioneer Electronic Corp | 画像作成装置及びコンピュータプログラム |
JP3971608B2 (ja) * | 2001-12-21 | 2007-09-05 | 株式会社ゼンリン | 電子地図表示装置 |
JP2004348708A (ja) * | 2003-04-30 | 2004-12-09 | Hitachi Eng Co Ltd | 地図情報システム用ポリゴン生成方法及びその装置 |
JP2008225654A (ja) * | 2007-03-09 | 2008-09-25 | Canon Inc | 画像処理方法、画像処理装置、及び、プログラム、プログラム記憶媒体 |
CN104990516B (zh) * | 2009-02-25 | 2019-05-28 | 立体光子国际有限公司 | 用于三维计量系统的强度和彩色显示 |
JP5223062B2 (ja) * | 2010-03-11 | 2013-06-26 | 株式会社ジオ技術研究所 | 3次元地図描画システム |
-
2013
- 2013-03-21 JP JP2013057496A patent/JP5883817B2/ja active Active
-
2014
- 2014-03-18 CN CN201480017238.3A patent/CN105051787A/zh active Pending
- 2014-03-18 KR KR1020157025615A patent/KR102181451B1/ko active IP Right Grant
- 2014-03-18 EP EP14768460.9A patent/EP2989613A4/en not_active Withdrawn
- 2014-03-18 WO PCT/JP2014/001528 patent/WO2014148039A1/en active Application Filing
-
2015
- 2015-09-18 US US14/859,058 patent/US20160078650A1/en not_active Abandoned
-
2016
- 2016-03-10 HK HK16102752.6A patent/HK1214876A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
KR20150132177A (ko) | 2015-11-25 |
HK1214876A1 (zh) | 2016-08-05 |
KR102181451B1 (ko) | 2020-11-23 |
EP2989613A4 (en) | 2017-05-31 |
WO2014148039A1 (en) | 2014-09-25 |
JP2014182670A (ja) | 2014-09-29 |
EP2989613A1 (en) | 2016-03-02 |
CN105051787A (zh) | 2015-11-11 |
US20160078650A1 (en) | 2016-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5883817B2 (ja) | 描画データ生成装置および描画装置 | |
KR101799945B1 (ko) | 3차원 지도 묘화 시스템, 지물 데이터 생성 방법, 3차원 지도 묘화 방법 및 컴퓨터 판독가능한 기록 매체 | |
US9646416B2 (en) | Three-dimensional map display system | |
US9549169B2 (en) | Stereoscopic map display system | |
US9965894B2 (en) | Three-dimensional map display system | |
CN112053410A (zh) | 一种基于矢量图形绘制的图像处理方法、系统及电子设备 | |
JP5883723B2 (ja) | 3次元画像表示システム | |
JP2012150823A (ja) | 3次元地図描画システム | |
JP2014182314A (ja) | 3次元地図表示装置、3次元地図表示方法、および、コンピュータプログラム | |
JP2012063469A (ja) | 地図表示装置、地図表示方法およびプログラム | |
JP2013161465A (ja) | 3次元地図表示システム | |
WO2015146517A1 (ja) | 画像表示システム | |
JP2014160969A (ja) | 立体視画像出力システム | |
JP6016684B2 (ja) | 3次元地図表示システム | |
JP6148194B2 (ja) | 画像処理装置 | |
JP2014071141A (ja) | 地図画像生成装置、地図画像生成方法及びプログラム | |
CN117760455A (zh) | 地图数据映射方法、系统、介质及电子设备 | |
JP2016126668A (ja) | 3次元地図表示システム | |
WO2013114560A1 (ja) | 地図データ作成装置、地図データ作成方法および記憶媒体 | |
JP2016031238A (ja) | 地図表示システム、地図表示方法、及び地図表示プログラム | |
JP6016765B2 (ja) | 3次元地図表示システムおよび合成テクスチャ生成装置 | |
CN118392201A (zh) | 一种道路渲染方法、装置、电子设备、存储介质及产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150501 |
|
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: 20160201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160208 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5883817 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 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |