(57)【特許請求の範囲】
【請求項１】
特定の記号の標高情報を入力する標高入力ステップと、
座標を入力する座標入力ステップと、
前記座標入力ステップにより連続して入力される座標間を線で結ぶ結線ステップと、
前記座標入力ステップで入力された座標の標高情報を、既存の線の標高情報から演算する演算ステップと、
前記演算ステップで演算された標高情報と、前記標高入力ステップで入力された標高情報とを比較する比較ステップと、
前記比較ステップで得られる比較結果に基づき、前記座標入力ステップで入力された座標間に前記特定の記号を描画する描画ステップとを有することを特徴する画像作成方法。
【請求項２】
前記標高入力ステップで入力される標高情報は二つあり、前記描画ステップは、前記比較ステップによる比較の結果、前記演算された標高情報と前記入力された第一の標高情報が等しくなった位置から、前記演算された標高情報と前記入力された第二の標高情報が等しくなる位置の間に前記特定の記号を描画することを特徴とする請求項1に記載された画像作成方法。
【請求項３】
前記特定の記号はトンネルを表す記号であることを特徴とする請求項1または請求項2に記載された画像作成方法。
【請求項４】
所定の線を形成するために連続して入力される座標を記憶する第一の記憶手段と、
前記入力された座標の標高情報を、既存の線の標高情報から演算する演算手段と、
前記演算手段によって演算された標高情報と、特定の記号の予め入力された標高情報とを比較する比較手段と、
前記比較手段により得られた比較結果に基づき、前記二つの標高情報が近似を示す前記入力された座標のうち二つを記憶する第二の記憶手段と、
前記第一および第二の記憶手段に記憶されたデータに基づき、前記第二の記憶手段に記憶された二つの座標間に前記特定の記号を描画した地図画像を作成する作図手段とを有することを特徴する画像作成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像作成装置およびその方法に関し、例えば、地図画像を描画・編集する画像作成装置およびその方法に関するものである。
【０００２】
【従来の技術】
パソコンやワープロなどで地図を描画し、かつ編集することのできる地図作成装置がある。この装置においては、所定の二地点を指示し、その間を所定の線で結ばせることにより、地図上に道路や鉄道の線路（以下「路」という）が描画される。
【０００３】
【発明が解決しようとする課題】
しかし、上述した技術においては、次のような問題点がある。つまり、上記の装置においては、路を曲線で描くのが難しい上、描画した結果、既に描かれている河川や道路とが重なる部分は路が透過表示になったり、路の下の地図画像が消えてしまう欠点がある。さらに、路と橋とトンネルとは、それぞれ別個に描く必要があり、一本の路でも一気に描くことはできない。
【０００４】
本発明は、上述の問題を解決するためのもので、路とトンネルの関係に応じて地図画像を作成することを目的とする。
【０００５】
【課題を解決するための手段】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【０００７】
本発明にかかる画像作成方法は、特定の記号の標高情報を入力する標高入力ステップと、座標を入力する座標入力ステップと、前記座標入力ステップにより連続して入力される座標間を線で結ぶ結線ステップと、前記座標入力ステップで入力された座標の標高情報を、既存の線の標高情報から演算する演算ステップと、前記演算ステップで演算された標高情報と、前記標高入力ステップで入力された標高情報とを比較する比較ステップと、前記比較ステップで得られる比較結果に基づき、前記座標入力ステップで入力された座標間に前記特定の記号を描画する描画ステップとを有することを特徴する。
【００１１】
本発明にかかる画像作成装置は、所定の線を形成するために連続して入力される座標を記憶する第一の記憶手段と、前記入力された座標の標高情報を、既存の線の標高情報から演算する演算手段と、前記演算手段によって演算された標高情報と、特定の記号の予め入力された標高情報とを比較する比較手段と、前記比較手段により得られた比較結果に基づき、前記二つの標高情報が近似を示す前記入力された座標のうち二つを記憶する第二の記憶手段と、前記第一および第二の記憶手段に記憶されたデータに基づき、前記第二の記憶手段に記憶された二つの座標間に前記特定の記号を描画した地図画像を作成する作図手段とを有することを特徴する。
【００１２】
【発明の実施の形態】
以下、本発明にかかる一実施形態の画像作成装置を図面を参照して詳細に説明する。
【００１３】
［構成］
図１Ａは本発明にかかる一実施形態の画像作成装置の構成例を示すブロック図である。
【００１４】
中央処理装置ＣＰＵ１は、以下に説明する各部とバスラインＢＬ６を介して接続され、ＲＯＭ８に格納された制御プログラムなどに従って、それらを制御する。ＫＢ２は、カーソルの移動や、文字や図形の入力・編集を行うためのキーボードや、マウスなどのポインティングデバイスである。ＬＣＤ３は、ビデオメモリＶＲＡＭ４に書込まれた文字や図形情報をカラー表示する液晶ディスプレイなどの表示装置である。ＰＲＴ７は、文字図形情報などを印刷するためのプリンタである。ＦＤＤ５は、フロッピディスクなどの記憶メディアをドライブする装置である。ＣＰＵ１は、ＦＤＤ５にセットされた記憶メディアから地図作成プログラムなどの各種プログラムや各種のデータを読込んだり、同メディアへ演算結果や演算途中のデータを書込んだりする。なお、記憶メディアは、フロッピディスクに限られるものではなく、ＣＤ−ＲＯＭ，ＣＤ−Ｒ，光磁気ディスクなどのリムーバルな記憶メディアを利用できることはもちろん、ハードディスクなどであってもよい。
【００１５】
ＲＡＭ９は、不揮発性のメモリであり、そのメモリ領域は幾つかに分割されていて、図１Ｂに示すように、それぞれ固有の目的に使用される。ＲＡＭ９の領域ＷＯＲＫは、ＣＰＵ１が地図作成プログラムなどの各種プログラムを実行する際に使用するワークエリアである。領域ＤＤ１，ＤＤ２，…，ＤＤｎは、各道路の描画データを座標として格納する道路データ領域である。領域ＴＤ１，ＴＤ２，…，ＴＤｎは、各等高線の描画データを座標として格納する等高線データ領域である。領域ＴＨは、トンネルの入口および出口の標高を記憶する領域である。領域ＫＤ１，ＫＤ２，…，ＫＤｎは、各河川の描画データを座標として格納する河川データ領域である。
【００１６】
また、フラグＫＦＬは、描画中の路と、道路，河川，等高線などとの交差が開始されたか否かを記憶する。座標（ＫＸ，ＫＹ）はカーソル座標を表す。
【００１７】
データＢＦＬ１，  ＢＦＬ２，  …，  ＢＦＬｍは、交差する線が道路か河川を識別するためのものである。（ＢＸ，  ＢＹ）１，  （ＢＸ，  ＢＹ）２，  …，  （ＢＸ，  ＢＹ）ｍには、各ＢＦＬに対応する路または河川と他の線との交差開始座標が格納され、（ＥＸ，  ＥＹ）１，  （ＥＸ，  ＥＹ）２，  …，  （ＥＸ，  ＥＹ）ｍには、各ＢＦＬに対応する路または河川と他の線との交差終了座標が格納される。なお、詳細は示さないが、（ＫＸ，  ＫＹ）（ＢＸ，  ＢＹ）（ＥＸ，  ＥＹ）はそれぞれ、左右二つのデータ組で構成される。
【００１８】
［データ構造］
本装置の動作を説明する前に、道路データＤＤなどの構造を説明する。
【００１９】
図２は道路データＤＤ１の構造例を示す図、図３は道路の描画状態例を示す図で、道路の右端と左端を描画するための座標（ＸＲｎ，ＹＲｎ）と（ＸＬｎ，ＹＬｎ）から構成されている。これは、一本の道路の幅は常に一定とは限らないためである。このような構造の道路データＤＤ（座標群）が、道路の数ｎだけ用意される。
【００２０】
図４は河川データＫＤ１の構造例を示す図、図５は河川の描画状態例を示す図で、河川データＫＤも、道路と同様に、河川の右岸と左岸を描画するための座標（ＸＲｎ，ＹＲｎ）と（ＸＬｎ，ＹＬｎ）から構成され、河川の数ｎだけ河川データＫＤ（座標群）が用意される。
【００２１】
図６は等高線データＴＤ１の構造例を示す図、図７は二本の等高線（標高Ｈ１とＨ２）の描画状態例を示す図で、等高線データＴＤは、同一標高を結ぶ線であり、等高線を構成する複数の座標（Ｘｎ，Ｙｎ）と標高Ｈとからなる。
【００２２】
なお、各座標間は、図に示すように、直線で結んでもよいが、ベジェ曲線やスプラインにより結ぶことにより、より自然な曲線を得ることができる。
【００２３】
［動作］
図８は本実施形態の動作を説明するためのフローチャートで、ＣＰＵ１によって実行されるものである。図９Ａから９Ｃは描画状態例を示す図で、図９Ａに示すように、既に河川が描画されているものとし、カーソルＫＳを移動させることにより路を描画するが、ここでは道路を描画する例を説明する。
【００２４】
描画の開始が指示されると、ステップＳ１で交差フラグＫＦＬを‘０’に、カウンタｉを１にクリアし、ステップＳ２で道路を示す座標が入力されるのを待つ。なお、オペレータは、カーソルＫＳを所望の位置に移動した後、マウスボタンをクリックして例えば道路の左端を指示し、続いて、道路の右端を指示するためにカーソルＫＳを道路の幅分移動してマウスボタンをクリックする。なお、マウスボタンの代わりに所定のキーを押すことにより座標を入力してもよい。この座標は道路データＤＤｎに順に格納される。
【００２５】
座標が入力されると、ステップＳ３でその座標（ＫＸ，ＫＹ）と河川または道路を表す線とが交差したか否かを判定し、接していなければステップＳ１０で路を描画、つまり、一つ前に入力された座標と、新たに入力された座標とを線で結んだ後、ステップＳ２へ戻る。
【００２６】
また、図９Ｂに示すように、交差した場合はステップＳ４で交差フラグＫＦＬを調べ、ＫＦＬ＝‘０’ならば初めて交差したことになるので、ステップＳ５で交差座標を開始座標（ＢＸ，ＢＹ）ｉにセットするとともに、ＫＦＬ＝‘１’にする。次に、ステップＳ６で、交差するのが河川か路かを判別し、その結果を分類データＢＦＬｉにセットした後、ステップＳ２へ戻る。図１０はＢＦＬの構成例を示す図で、道路ビットや河川ビットなどを備え、ステップＳ６の判定結果に応じて所定のビットがセットされる。
【００２７】
また、ステップＳ４でＫＦＬ＝‘１’であった場合は河川または路の反対側の線と交差したことを意味するので、ステップＳ７で交差座標を終了座標（ＥＸ，ＥＹ）ｉにセットする。座標（ＢＸ，ＢＹ）ｉと（ＥＸ，ＥＹ）ｉが設定されると、橋または交差点を描く座標が決まることになり、ステップＳ８でＢＦＬｉに応じたオブジェクト（橋や交差点などの記号）を描画して、ステップＳ９でＫＦＬをクリアしカウンタｉをインクリメントした後、ステップＳ２へ戻る。
【００２８】
このようにして路の座標を入力していくことにより、図９Ｃに示すように、路が描画されるとともに、その路が河川と交差する部分には橋の記号が描画される。なお、ＫＢ２の所定キーなどを押すことなどにより、路の描画を終了することができる。
【００２９】
次に、トンネル記号を描画する場合を説明する。本実施形態は、路を描画中に、等高線の標高Ｈと、予め入力されているトンネル標高ＴＨとに基づいて、トンネル記号を描画するか否かを判定する。つまり、路がトンネルの入口標高ＴＨ１に達する部分でトンネル記号の描画を開始し、トンネルの出口標高ＴＨ２に達する部分でトンネル記号の描画を終了する。
【００３０】
図１１は本実施形態の動作を説明するためのフローチャートで、ＣＰＵ１によって実行されるものである。図１２Ａから１２Ｃは描画状態例を示す図で、図１２Ａに示すように、既に等高線が描画されているものとし、カーソルＫＳを移動させることにより道路を描画する。
【００３１】
描画の開始が指示されると、ステップＳ１１で交差フラグＫＦＬを‘０’に、カウンタｉを１にクリアし、ステップＳ１２で道路を示す座標が入力されるのを待つ。なお、ここでは交差フラグＫＦＬをトンネル記号を描画するためのフラグに利用する例を説明するが、実際は河川などとの交差も考慮しなくてはならないので、別途、専用のフラグを設けた方がよい。
【００３２】
座標が入力されると、ステップＳ１３でその座標（ＫＸ，ＫＹ）の標高Ｈを演算する。この場合、入力座標が等高線に接する場合は標高Ｈを容易に求めることができるが、入力座標が等高線間に挟まれている場合は、例えば一次補間などにより両等高線から標高Ｈを求める。次に、ステップＳ１４でＫＦＬを判定して、ＫＦＬ＝‘０’（トンネル記号の描画を開始していない）ならばステップＳ１５で標高Ｈとトンネルの入口標高ＴＨ１とを比較して、Ｈ≒ＴＨ１であればステップＳ１６でトンネル記号の描画を開始するとともに、開始座標（ＢＸ，ＢＹ）ｉにカーソル座標（ＫＸ，ＫＹ）を代入し、ステップＳ１７でＫＦＬ＝‘１’にする。また、Ｈ≠ＴＨ１であればステップＳ１８で路を描く。なお、Ｈ≒ＴＨ１は、具体的には｜Ｈ−ＴＨ｜＜αで判定し、αには地図の精度に応じた値、例えば１０ｍや１００ｍなどを設定すればよい。
【００３３】
また、ステップＳ１４でＫＦＬ＝‘１’であった場合は、ステップＳ１９で標高Ｈとトンネルの出口標高ＴＨ２とを比較して、Ｈ≒ＴＨ２であればステップＳ２０でトンネル記号の描画を終了するとともに、終了座標（ＥＸ，ＥＹ）ｉにカーソル座標（ＫＸ，ＫＹ）を代入し、ステップＳ２１でＫＦＬをクリアし、カウンタｉをインクリメントする。また、Ｈ≠ＴＨ２であればステップＳ１８でトンネル記号を描く。
【００３４】
このようにしてステップＳ１２からＳ２１を繰り返すことにより、図１２Ａから１２Ｃに示すように、路およびトンネル記号が描画される。なお、複数のトンネルがある場合は、領域ＴＨに、道路を描く順番に沿って複数の入口および出口標高が格納されることになる。
【００３５】
［地図の編集］
座標入力間隔が不適切で、期待したような曲線が描けなかった場合は、ＫＢ２の所定キーを押すことにより、最後に入力した座標から順番に削除することができる。また、例えば、所定キーを押すことでカーソルをピンセット状にして、線の所定位置をつかみ、所望する位置へ移動することにより、二つの座標間に新たな座標を追加することができる。
【００３６】
［地図の描画および保存］
以上の処理により描かれた地図のデータは、ＲＡＭ９の各領域に、各データを示す連続した座標群として記録される。ＣＰＵ１は、この座標群を基にＶＲＡＭ４に地図画像を形成し、その画像データをＬＣＤ３へ送って地図を表示させたり、ＰＲＴ７へ送って地図を印刷させる。また、ＲＡＭ９の各領域に格納されたデータをＦＤＤ５へ送って、記憶メディアに格納することにより、地図データとして保存することができる。
【００３７】
また、図には示さないが、バスＢＬ６に接続されたインタフェイスを介して通信回線へ地図データを出力することもできるので、例えばＬＡＮを介して他の端末に地図を表示したり、電話回線を介して遠隔地の端末に地図を送ることもできる。このような場合、ＶＲＡＭ４に形成した地図画像を圧縮して送信することもできるが、ＲＡＭ９に格納された地図データをそのまま送れば伝送量を最小限に抑えることができる。
【００３８】
また、構造物や建造物などのオブジェクトを表示するためのデータを格納する領域をＲＡＭ９に割り付ければ、それらオブジェクトを地図上に表示することもできるし、文字や記号なども同様に表示することができる。
【００３９】
以上説明したように、本実施形態によれば、容易に路を曲線で描くことができ、新たな道路と既に描かれている河川や道路と重なる部分は橋記号やトンネル記号が自動的に書き込まれるとともに、路の下の地図情報が消えてしまうこともない。従って、路と橋とトンネルとは、それぞれ別個に描く必要はなく、一本の路を一気に描くことができる。
【００４０】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００４１】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００４２】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４３】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４４】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになるが、簡単に説明すると、図１３のメモリマップ例に示す各モジュールを記憶媒体に格納することになる。すなわち、少なくとも「座標間結線」「交差判定」および「特定記号描画」の各モジュールのプログラムコードを記憶媒体に格納すればよい。また、少なくとも「座標間結線」「標高演算」「標高比較」および「特定記号描画」の各モジュールのプログラムコードを記憶媒体に格納すればよい。また、少なくとも「入力座標記憶」「交差判定」および「交差座標等記憶」の各モジュールのプログラムコードを記憶媒体に格納すればよい。また、少なくとも「入力座標記憶」「標高演算」「標高比較」および「トンネル座標等記憶」の各モジュールのプログラムコードを記憶媒体に格納すればよい。
【００４５】
【発明の効果】
以上説明したように、本発明によれば、路とトンネルの関係に応じて地図画像を作成することができる。
【図面の簡単な説明】
【図１Ａ】本発明にかかる一実施形態の画像作成装置の構成例を示すブロック図、
【図１Ｂ】図１に示すＲＡＭに格納されるデータを説明する図、
【図２】道路データの構造例を示す図、
【図３】道路の描画状態例を示す図、
【図４】河川データの構造例を示す図、
【図５】河川の描画状態例を示す図、
【図６】等高線データの構造例を示す図、
【図７】二本の等高線（標高Ｈ１とＨ２）の描画状態例を示す図、
【図８】本実施形態の動作を説明するためのフローチャート、
【図９Ａ】本実施形態による地図の描画状態例を示す図、
【図９Ｂ】本実施形態による地図の描画状態例を示す図、
【図９Ｃ】本実施形態による地図の描画状態例を示す図、
【図１０】データＢＦＬの構成例を示す図、
【図１１】本実施形態の動作を説明するためのフローチャート、
【図１２Ａ】本実施形態による地図の描画状態例を示す図、
【図１２Ｂ】本実施形態による地図の描画状態例を示す図、
【図１２Ｃ】本実施形態による地図の描画状態例を示す図、
【図１３】本発明にかかるプログラムコードを格納した記憶媒体のメモリマップ例を示す図である。
【図１Ａ】
0003630811.tif 000002
【図１Ｂ】
0003630811.tif 000003
【図２】
0003630811.tif 000004
【図３】
0003630811.tif 000005
【図４】
0003630811.tif 000006
【図５】
0003630811.tif 000007
【図６】
0003630811.tif 000008
【図７】
0003630811.tif 000009
【図８】
0003630811.tif 000010
【図９Ａ】
0003630811.tif 000011
【図９Ｂ】
0003630811.tif 000012
【図９Ｃ】
0003630811.tif 000013
【図１０】
0003630811.tif 000014
【図１１】
0003630811.tif 000015
【図１２Ａ】
0003630811.tif 000016
【図１２Ｂ】
0003630811.tif 000017
【図１２Ｃ】
0003630811.tif 000018
【図１３】
0003630811.tif 000019