以下、本発明による画像出力装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。
(実施の形態1)
本発明の実施の形態1による画像出力装置について、図面を参照しながら説明する。
図1は、本実施の形態による画像出力装置1の構成を示すブロック図である。本実施の形態による画像出力装置1は、画像記憶部11と、表示時代情報受付部12と、透明度設定部13と、画像出力部14とを備える。
画像記憶部11では、地図の画像である地図画像が二以上記憶される。なお、画像記憶部11では、三以上の地図画像が記憶されてもよい。画像記憶部11で記憶される複数の地図画像は、通常、対比して閲覧される画像である。その複数の地図画像は、例えば、同様の地域の地図の画像であってもよい。ただし、その複数の地図画像は異なる種類の地図の画像であることが好適である。同様の地域の異なる種類の地図の画像とは、例えば、同様の地域の航空写真の画像と住宅地図の画像と地形図の画像であってもよく、同様の地域の異なる時代の地図の画像(例えば、江戸時代の地図の画像と現代の地図の画像)であってもよい。本実施の形態では、画像記憶部11において、同様の地域の異なる時代の地図の画像が記憶されている場合について説明する。また、画像記憶部11において、異なる形式の地図(例えば、航空写真と住宅地図と地形図など)が記憶されている場合については、実施の形態2で説明する。また、この複数の地図画像は、ラスタデータであってもよく、ベクタデータであってもよい。なお、複数の地図画像がベクタデータであったとしても、表示される際にはラスタライズ化されて表示されることになる。また、複数の地図画像には、画像に付随する情報が対応付けられていてもよい。本実施の形態では、画像記憶部11で記憶されている二以上の地図画像に、時代情報がそれぞれ対応付けられている場合について説明する。時代情報とは、時代に関する情報であり、例えば、「1900年」「1985〜1990年」などの西暦の年数であってもよく、「江戸時代」「明治時代」「現代」などの時代の名称であってもよく、「1」「2」「3」…や、「A」「B」「C」…のように順序を示す情報(数字が若いほど、またアルファベットが「A」に近いほど年数が若いなどのルールがあらかじめ決まられているものとする)であってもよく、その他の情報であってもよい。
画像記憶部11に地図画像が記憶される過程は問わない。例えば、記録媒体を介して地図画像が画像記憶部11で記憶されるようになってもよく、通信回線等を介して送信された地図画像が画像記憶部11で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された地図画像が画像記憶部11で記憶されるようになってもよい。画像記憶部11での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。画像記憶部11は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
表示時代情報受付部12は、表示する地図画像の時代を示す情報である表示時代情報を受け付ける。表示時代情報は、例えば、時代情報と同レベルの尺度の情報であってもよく、あるいは、時代情報よりも細かい尺度の情報であってもよい。前者は、例えば、時代情報が「平成」「昭和」「大正」「明治」等であり、表示時代情報も同様に、「平成」「昭和」「大正」「明治」等となる場合などである。後者は、例えば、時代情報が「平成」「昭和」「大正」「明治」等であるのに対して、表示時代情報が「1970年」や、「昭和45年」等となる場合などである。
表示時代情報受付部12は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された表示時代情報を受け付けてもよく、有線もしくは無線の通信回線を介して送信された表示時代情報を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出された表示時代情報を受け付けてもよい。なお、表示時代情報受付部12は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、表示時代情報受付部12は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
透明度設定部13は、画像記憶部11で記憶されている二以上の地図画像の少なくとも一の地図画像の透明度を設定する。ここで、「透明度を設定する」とは、結果として透明度が決まればよいという意味であり、透明度以外の情報を設定することによって透明度が結果的に決まる場合を含むものとする。例えば、不透明度が設定されれば、結果として透明度が決まるため、透明度を設定することは、不透明度を設定することを含むものとする。
また、透明度設定部13は、例えば、表示時代情報受付部12が受け付けた表示時代情報と一致する時代情報に対応した地図画像が存在し、その地図画像よりも手前(前面)に表示される一以上の地図画像が存在する場合には、その一以上の地図画像を透明に設定してもよい。透明に設定するとは、透明度を100%に設定することである(前述のように、不透明度を0%に設定してもよい)。表示時代情報と時代情報とが一致するとは、表示時代情報と時代情報とが厳密に一致する場合(例えば、表示時代情報と時代情報との両方が「昭和」や「1900年」である場合など)であってもよく、表示時代情報が時代情報に含まれる場合(例えば、表示時代情報が「1970年」であり、時代情報が「昭和」である場合など)であってもよく、その両方の場合であってもよい。
また、透明度設定部13は、例えば、表示時代情報受付部12が受け付けた表示時代情報の示す時代に対して時間的に前後となる二個の時代情報に対応する二個の地図画像が存在する場合に、その二個の地図画像のうち、表示時代情報の示す時代に近い時代情報に対応する地図画像の方が他方の地図画像よりも多くの割合が表示されるように、その二個の地図画像のうちの手前側の地図画像の透明度を設定してもよい。「時間的に前後となる」とは、直近の前後の意味である。具体的には、画像記憶部11において、時代情報「1700年」に対応付けられている地図画像と、時代情報「1800年」に対応付けられている地図画像と、時代情報「1900年」に対応付けられている地図画像と、時代情報「2000年」に対応付けられている地図画像とが存在する場合に、表示時代情報受付部12が表示時代情報「1970年」を受け付けたとする。この場合には、その表示時代情報「1970年」の示す時代に対して時間的に前後となる二個の時代情報は、時代情報「2000年」、時代情報「1900年」となる。また、その表示時代情報は、時代情報「2000年」と、時代情報「1900年」との間を、時代情報「2000年」の方から3:7に分ける時間的位置に存在することになる。したがって、透明度設定部13は、時代情報「2000年」に対応付けられている地図画像が7割となり、時代情報「1900年」に対応付けられている地図画像が3割となるように、両地図画像を重ねて表示するものとする。例えば、時代情報「1900年」に対応付けられている地図画像の手前に時代情報「2000年」に対応付けられている地図画像が存在する場合には、透明度設定部13は、その時代情報「1900年」に対応付けられている地図画像の透明度を30%に設定することになる。また、透明度設定部13は、表示時代情報受付部12が受け付けた表示時代情報の示す時代に対して時間的に前後となる二個の時代情報に対応する二個の地図画像が存在する場合に、その二個の地図画像のいずれかよりも手前に表示される地図画像であって、その二個の地図画像以外の地図画像(二個の地図画像の手前側よりも手前の地図画像や、二個の地図画像の間に存在する地図画像)を透明(すなわち、透明度が100%、あるいは、不透明度が0%)に設定する。このようにすることで、表示時代情報受付部12が受け付けた表示時代情報の示す時代に対して時間的に前後となる二個の時代情報に対応する二個の地図画像が、他の透明でない地図画像の背面側となって、見えなくなる、あるいは、見づらくなる事態を回避することができるようになる。
画像出力部14は、画像記憶部11で記憶されている二以上の地図画像を、透明度設定部13が設定した透明度で重ねて出力する。「重ねて出力する」とは、二以上の地図画像の対応する位置が一致するように重ねて出力する、という意味である。例えば、画像記憶部11で記憶されている二以上の地図画像がはじめから同じ形状・大きさの画像であり、対応する位置が一致している画像である場合には、画像出力部14は、それらを単に重ねて出力すればよいことになる。一方、画像記憶部11で記憶されている二以上の地図画像が、対応する位置が一致していない画像である場合には、画像出力部14は、それらの対応する位置を一致させる処理を行った上で、出力することになる。また、画像記憶部11で記憶されている二以上の地図画像は、あらかじめ対応する位置が一致するように重ねられているものであってもよい。例えば、複数レイヤを設定可能な画像形式の地図画像の場合には、各レイヤに各地図画像が設定されており、画像出力部14は、その複数レイヤに地図画像が設定された地図画像を読み出して出力してもよい。この場合も、二以上の地図画像を重ねて出力することになるものとする。なお、画像記憶部11で記憶されている二以上の地図画像の重なりの順序(例えば、手前側から背面側に向かっての重なりの順序や、背面側から手前側に向かっての重なりの順序)は、あらかじめ決められているものとする。その順序は、例えば、画像記憶部11において記憶されている地図画像の順序であってもよく、各地図画像が設定されている複数レイヤの順序であってもよく、あるいは、別途、順序を示す情報によって示されるものであってもよい。その順序を示す情報は、図示しない記録媒体において記憶されていてもよい。
また、画像記憶部11で記憶されている二以上の地図画像が広範囲の地図の画像である場合に、画像出力部14は、その一部の領域のみを切り出して出力してもよく、あるいは、そうでなくてもよい。
ここで、この出力は、例えば、表示デバイス(例えば、CRTや液晶ディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、出力が送信や蓄積、他の構成要素への引き渡しである場合であっても、最終的には、その出力された画像が表示デバイスに表示されたり、プリントアウトされたりすることによって、ユーザが画像を見ることができるようになるものとする。本実施の形態では、表示デバイスに表示される場合について説明する。また、画像出力部14は、出力を行うデバイス(例えば、表示デバイスやプリンタなど)を含んでもよく、あるいは含まなくてもよい。また、画像出力部14は、ハードウェアによって実現されてもよく、あるいは、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
次に、本実施の形態による画像出力装置1の動作について、図2のフローチャートを用いて説明する。
(ステップS101)表示時代情報受付部12は、表示時代情報を受け付けたかどうか判断する。そして、表示時代情報を受け付けた場合には、ステップS102に進み、そうでない場合には、受け付けるまでステップS101の処理を繰り返す。
(ステップS102)透明度設定部13は、表示時代情報受付部12が受け付けた表示時代情報を用いて、画像記憶部11で記憶されている地図画像の透明度を設定する。なお、この処理の詳細については、図3のフローチャートを用いて後述する。
(ステップS103)画像出力部14は、画像記憶部11で記憶されている二以上の地図画像を、透明度設定部13が設定した透明度で重ねて出力する。そして、ステップS101に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
図3は、図2のフローチャートにおける透明度を設定する処理(ステップS102の処理)の詳細を示すフローチャートである。
(ステップS201)透明度設定部13は、表示時代情報受付部12が受け付けた表示時代情報が、画像記憶部11で記憶されている地図画像に対応付けられている時代情報のいずれかと一致するかどうか判断する。そして、いずれかと一致する場合には、ステップS205に進み、そうでない場合には、ステップS202に進む。一致するかどうかの判断は、前述のように、例えば、表示時代情報と時代情報とが厳密に一致するかどうかの判断であってもよく、表示時代情報が時代情報に含まれるかどうかの判断であってもよく、あるいは、その両方であってもよい。
(ステップS202)透明度設定部13は、表示時代情報の示す時代に対して時間的に前後となる二個の時代情報を特定する。透明度設定部13は、表示時代情報の示す時代よりも前の時代情報であって、その表示時代情報に直近の時代情報と、表示時代情報の示す時代よりも後の時代情報であって、その表示時代情報に直近の時代情報とを特定することによって、その二個の時代情報を特定することができる。時代情報を特定するとは、特定した時代情報を図示しない記録媒体に蓄積することであってもよく、あるいは、特定した時代情報に対応付けてフラグ等を設定することであってもよい。
(ステップS203)透明度設定部13は、特定した二個の時代情報にそれぞれ対応する二個の地図画像の表示割合を、表示時代情報の示す時代と、特定した二個の時代情報との時間的な距離を用いて決定する。ここで、その表示割合を決定する方法を簡単に説明する。特定した二個の時代情報のうち、表示時代情報よりも前の時代情報を第一の時代情報として、表示時代情報よりも後の時代情報を第二の時代情報としたとする。透明度設定部13は、第一の時代情報から表示時代情報までと、表示時代情報から第二の時代情報までの時間的な距離の比を算出する。その比がA:Bとなったとする。すると、透明度設定部13は、第一の時代情報に対応する地図画像(これを「第一の地図画像」とする)と、第二の時代情報に対応する地図画像(これを「第二の地図画像」とする)との表示の割合を、B:Aに決定する。この決定された表示割合は、図示しない記録媒体において一時的に記憶されてもよい。
(ステップS204)透明度設定部13は、特定した二個の時代情報にそれぞれ対応する二個の地図画像の手前側の地図画像の透明度を、ステップS203で決定した表示割合に応じて設定する。前述のように、第一の地図画像と第二の地図画像との表示割合がB:Aである場合であって、第一の地図画像が手前側であるときには、透明度設定部13は、第一の地図画像の透明度を「100×A/(A+B)」(%)に設定する。また、第二の地図画像が手前側であるときには、透明度設定部13は、第二の地図画像の透明度を「100×B/(A+B)」(%)に設定する。なお、透明度設定部13は、その二個の地図画像のうち、背面側の地図画像の透明度を「0%」に設定する。透明度設定部13は、あらかじめ決められている地図画像の重なりの順序を用いて、第一の地図画像と第二の地図画像のどちらが手前側であるのかを知ることができる。
(ステップS205)透明度設定部13は、表示時代情報受付部12が受け付けた表示時代情報に一致する時代情報に対応する地図画像の透明度を「0%」に設定する。
(ステップS206)透明度設定部13は、二個の地図画像のいずれかよりも手前に表示される地図画像(ステップS204からステップS206に進んだ場合)、あるいは、透明度が「0%」に設定された地図画像よりも手前に表示される地図画像(ステップS205からステップS206に進んだ場合)が存在するかどうか判断する。そして、存在する場合には、ステップS207に進み、そうでない場合には、図2のフローチャートに戻る。
(ステップS207)透明度設定部13は、手前に表示される一以上の地図画像の透明度を「100%」に設定する。透明度設定部13は、あらかじめ決められている地図画像の重なりの順序を用いて、手前に表示される一以上の地図画像がどれであるのかを知ることができる。そして、図2のフローチャートに戻る。
ここで、透明度の設定について具体的に説明しておく。図4で示されるように、地図画像A〜Hが重ねて表示される場合に、表示時代情報の示す時代に対して時間的に前後となる二個の時代情報に対応する二個の地図画像が地図画像D,Fであったとする。なお、地図画像A側が手前側であるとする。すると、透明度設定部13は、地図画像Fの透明度を0%に設定し、地図画像Dの透明度を、地図画像D,Fの表示割合に応じて設定する。また、透明度設定部13は、地図画像D,Fのいずれかよりも手前に表示される地図画像A,B,C,Eを透明に設定する(すなわち、それらの地図画像の透明度を100%に設定する)。なお、この場合には、地図画像G,Hの透明度は任意である。地図画像Fの透明度が0%であるため、地図画像G,Hは表示されないからである。
また、図5で示されるように、地図画像A〜Hが重ねて表示される場合に、表示時代情報と一致する時代情報に対応する地図画像が地図画像Dであったとする。なお、この場合も、地図画像A側が手前側であるとする。すると、透明度設定部13は、地図画像Dの透明度を0%に設定する。また、透明度設定部13は、地図画像Dよりも手前に表示される地図画像A,B,Cを透明に設定する。なお、この場合には、地図画像E〜Hの透明度は任意である。地図画像Dの透明度が0%であるため、地図画像E〜Hは表示されないからである。
次に、本実施の形態による画像出力装置1の動作について、具体例を用いて説明する。この具体例において、画像記憶部11では、図6で示されるように、時代情報と対応付けられた地図画像が記憶されているものとする。なお、図6において、地図画像M001,M002,M003,M004の順番で、手前側から背面側に向かってのレイヤとなっている。したがって、この具体例では、地図画像M001〜M004は、はじめから重なった状態となっている。また、図6では、説明の便宜上、テーブル形式で地図画像を示したが、地図画像は、実際には複数レイヤ構造を有するデータ構造であり、各レイヤの地図画像ごとに時代情報が対応付けられているデータ構造であってもよい。
まず、ユーザがマウスやキーボードなどの入力デバイスを操作することによって、地図画像の出力を開始する旨の指示を入力したとする。なお、初期設定の画面では、表示時代情報が「2000年」に設定されているものとする。すると、図示しない制御部は、ユーザから入力された指示に応じて、表示時代情報受付部12に表示時代情報「2000年」を入力する。その表示時代情報は、表示時代情報受付部12で受け付けられ(ステップS101)、透明度設定部13に渡される。透明度設定部13は、その表示時代情報「2000年」と一致する時代情報が画像記憶部11で記憶されているため、表示時代情報が時代情報と一致すると判断し(ステップS201)、その表示時代情報と一致する時代情報「2000年」に対応する地図画像「M001」の透明度を0%に設定する(ステップS205)。なお、その地図画像「M001」が最も手前であり、それより手前の地図画像は存在しないため(ステップS206)、これによって透明度を設定する処理は終了となる(ステップS102)。透明度設定部13は、地図画像「M001」の透明度が0%である旨を画像出力部14に渡す。
画像出力部14は、透明度に関する情報を受け取ると、画像記憶部11から複数の地図画像M001〜M004を読み出し、そのうちの地図画像「M001」の透明度を0%にして出力する(ステップS103)。その結果、ディスプレイに図7で示される表示がなされる。図7の表示では、2000年の地図が表示されている。また、地図の下側に年数のスライダが表示されており、そのスライダを操作することによって、表示時代情報を入力することができるようになっている。
ユーザが、図7の表示において、マウスによってスライダを操作し、1970年の位置に移動させたとする。すると、表示時代情報受付部12は、表示時代情報「1970年」を受け付け(ステップS101)、透明度設定部13に渡す。
透明度設定部13は、その表示時代情報と一致する時代情報が画像記憶部11で記憶されていないため、表示時代情報が時代情報と一致しないと判断し(ステップS201)、その表示時代情報の前後の二個の時代情報を特定する(ステップS202)。具体的には、透明度設定部13は、1970年よりも年数が小さい時代情報であって、最も大きい年数の時代情報「1900年」を特定する。また、透明度設定部13は、1970年よりも年数が大きい時代情報であって、最も小さい年数の時代情報「2000年」を特定する。
次に、透明度設定部13は、時代情報「1900年」から表示時代情報「1970年」までの時間的な距離である70年と、表示時代情報「1970年」から時代情報「2000年」までの時間的な距離である30年とを算出し、その比である7:3を算出する。そして、その比を逆転させた3:7を、時代情報「1900年」に対応する地図画像「M002」と、時代情報「2000年」に対応する地図画像「M001」との表示割合として決定する(ステップS203)。
その後、透明度設定部13は、その二個の地図画像「M001」「M002」のうち、手前側の地図画像「M001」の透明度を100×3/(7+3)=30%に設定する。また、二個の地図画像「M001」「M002」のうち、背面側の地図画像「M002」の透明度を0%に設定する(ステップS204)。
なお、その地図画像「M001」「M002」が最も手前の二個の地図画像であるため、それらより手前の地図画像は存在しないため(ステップS206)、これによって透明度を設定する処理は終了となる(ステップS102)。透明度設定部13は、地図画像「M001」の透明度が30%であり、地図画像「M002」の透明度が0%である旨を画像出力部14に渡す。
画像出力部14は、透明度に関する情報を受け取ると、画像記憶部11から複数の地図画像M001〜M004を読み出し、そのうちの地図画像「M001」の透明度を30%にすると共に、地図画像「M002」の透明度を0%にして出力する(ステップS103)。その結果、ディスプレイに図8で示される表示がなされる。図8の表示は、図7で示される地図画像「M001」と、図9で示される地図画像「M002」が7:3の割合で表示された地図である。
この後、さらにスライダがスライドされて1800年と1900年との間に位置すると、今後は、地図画像「M002」と、地図画像「M003」とが設定された透明度に応じて表示されるようになる(ステップS101〜S103)。
以上のように、本実施の形態による画像出力装置1によれば、表示時代情報に応じた割合で二個の地図画像を合成して出力することが可能となる。その結果、例えば、第一の時代情報と、第二の時代情報との間の時代に対応する地図画像が存在しない場合であっても、第一の時代情報及び第二の時代情報に対応した地図画像を合成して表示することによって、その間の時代における地図がどのようなものであったのかについて想像することができうる。また、表示の割合(例えば、表示の濃さ)に応じて、表示時代情報の示す時代に近い時代情報に対応する地図画像が、どちらの地図画像であるのかを直感的に知ることもできる。
なお、本実施の形態では、二個の地図画像を表示しうる場合について説明したが、そうでなくてもよい。例えば、受け付けられた表示時代情報に対応する一の時代情報を決定し、その時代情報に対応する一の地図画像を表示するように透明度を設定してもよい。この場合には、透明度設定部13は、表示時代情報受付部12が受け付けた表示時代情報に対応する時代情報に対応付けられている地図画像よりも手前に表示される一以上の地図画像が存在する場合に、その手前に表示される一以上の地図画像を透明に設定する。また、透明度設定部13は、その表示時代情報に対応する時代情報に対応付けられている地図画像の透明度を0%に設定する。なお、「表示時代情報に対応する時代情報」とは、表示時代情報と一致する時代情報が存在する場合には、その時代情報であり、存在しない場合には、表示時代情報と最も近い時代情報である。例えば、画像記憶部11において図6で示されるように事態尾情報と対応付けられている地図画像が記憶されている場合には、表示時代情報「1900年」に対応する時代情報は「1900年」であり、表示時代情報「1970年」に対応する時代情報は「2000年」である。なお、表示時代情報「1950年」に対応する時代情報は「1900年」であってもよく、あるいは「2000年」であってもよい。表示時代情報「1950年」に対応する時代情報をどちらにするのかは、例えば、ランダムに決定してもよく、または、後の方の時代情報に決定する、もしくは、前の方の時代情報に決定するというようにあらかじめ決められていてもよい。
この場合の透明度を決定する処理(図2のフローチャートのステップS102の処理)について、図10のフローチャートを用いて説明する。なお、この場合であっても、図2のフローチャートのステップS102の処理が図10のフローチャートで示される以外は、本実施の形態の説明と同様であるとする。
(ステップS301)透明度設定部13は、前述のようにして、表示時代情報受付部12が受け付けた表示時代情報に対応する一の時代情報を特定する。
(ステップS302)透明度設定部13は、特定した時代情報に対応する地図画像の透明度を「0%」に設定する。
(ステップS303)透明度設定部13は、特定した地図画像よりも手前に表示される地図画像が存在するかどうか判断する。そして、存在する場合には、ステップS304に進み、そうでない場合には、図2のフローチャートに戻る。
(ステップS304)透明度設定部13は、手前に表示される一以上の地図画像の透明度を「100%」に設定する。透明度設定部13は、あらかじめ決められている地図画像の重なりの順序を用いて、手前に表示される一以上の地図画像がどれであるのかを知ることができる。そして、図2のフローチャートに戻る。
このように、図10のフローチャートのようにして透明度を設定することによって、他の地図画像と混ざらない一の地図画像のみを出力することができるようになる。
(実施の形態2)
本発明の実施の形態2による画像出力装置について、図面を参照しながら説明する。本実施の形態による画像出力装置は、異なる種類の地図画像を受け付けられた割合で表示するものである。
図11は、本実施の形態による画像出力装置2の構成を示すブロック図である。本実施の形態による画像出力装置2は、画像記憶部11と、画像出力部14と、割合情報受付部21と、透明度設定部22とを備える。なお、画像記憶部11、画像出力部14以外の構成及び動作は、画像出力部14が透明度設定部22の設定した透明度で地図画像を出力する以外、実施の形態1と同様であり、その説明を省略する。なお、画像記憶部11では、実施の形態1で説明したように、異なる種類の二以上の地図画像が記憶されているものとする。その異なる地図画像は、同様の地域の地図であることが好適である。また、異なる種類の地図画像は、例えば、地形図の地図画像、住宅地図の地図画像、航空写真の地図画像などであってもよく、時代の異なる地図画像であってもよく、その他の異なる種類の地図画像であってもよい。
割合情報受付部21は、二個の地図画像の表示の割合に関する情報である割合情報を受け付ける。表示する二個の地図画像があらかじめ決まっている場合には、割合情報は、単に割合のみを示す情報であってもよい。一方、表示する二個の地図画像が決まっていない場合には、割合情報は、その二個の地図画像を特定するための情報と、割合とを示す情報とを含む情報であってもよい。
割合情報受付部21は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された割合情報を受け付けてもよく、有線もしくは無線の通信回線を介して送信された割合情報を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出された割合情報を受け付けてもよい。なお、割合情報受付部21は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、割合情報受付部21は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
透明度設定部22は、割合情報が受け付けられた二個の地図画像が、その割合情報の割合で表示されるように、その二個の地図画像のうちの手前側の地図画像の透明度を設定する。この設定の方法は、実施の形態1のステップS204に関する説明の箇所と同様の方法で行うことができ、その詳細な説明を省略する。
次に、本実施の形態による画像出力装置2の動作について、図12のフローチャートを用いて説明する。
(ステップS401)割合情報受付部21は、割合情報を受け付けたかどうか判断する。そして、割合情報を受け付けた場合には、ステップS402に進み、そうでない場合には、受け付けるまでステップS401の処理を繰り返す。
(ステップS402)透明度設定部22は、割合情報受付部21が受け付けた割合情報を用いて、画像記憶部11で記憶されている地図画像の透明度を設定する。なお、この処理の詳細については、図13のフローチャートを用いて後述する。
(ステップS403)画像出力部14は、画像記憶部11で記憶されている二以上の地図画像を、透明度設定部22が設定した透明度で重ねて出力する。そして、ステップS401に戻る。
なお、図12のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
図13は、図12のフローチャートにおける透明度を設定する処理(ステップS402の処理)の詳細を示すフローチャートである。
(ステップS501)透明度設定部22は、表示する二個の地図画像のうち、手前側の地図画像の透明度を割合情報に応じて設定する。ここで、透明度を設定する方法を簡単に説明する。表示する二個の地図画像を、第一の地図画像、第二の地図画像とする。そして、割合情報によって、第一の地図画像と第二の地図画像をX:Yの割合で表示することが示されていたとする。すると、透明度設定部22は、第一の地図画像が手前側である場合には、第一の地図画像の透明度を「100×Y/(X+Y)」(%)に設定する。また、第二の地図画像が手前側である場合には、第二の地図画像の透明度を「100×X/(X+Y)」(%)に設定する。なお、透明度設定部22は、その二個の地図画像のうち、背面側の地図画像の透明度を「0%」に設定する。透明度設定部13は、あらかじめ決められている地図画像の重なりの順序を用いて、第一の地図画像と第二の地図画像のどちらが手前側であるのかを知ることができる。
(ステップS502)透明度設定部22は、二個の地図画像のいずれかよりも手前に表示される地図画像が存在するかどうか判断する。そして、存在する場合には、ステップS503に進み、そうでない場合には、図12のフローチャートに戻る。
(ステップS503)透明度設定部22は、手前に表示される一以上の地図画像の透明度を「100%」に設定する。透明度設定部22は、あらかじめ決められている地図画像の重なりの順序を用いて、手前に表示される一以上の地図画像がどれであるのかを知ることができる。そして、図12のフローチャートに戻る。
次に、本実施の形態による画像出力装置2の動作について、具体例を用いて説明する。この具体例において、画像記憶部11では、図14で示されるように、種類情報と対応付けられた地図画像が記憶されているものとする。種類情報は、地図画像の種類を示す情報である。なお、図14において、地図画像M101,M102,M103の順番で、手前側から背面側に向かってのレイヤとなっている。したがって、この具体例では、地図画像M101〜M103は、はじめから重なった状態となっている。また、図14では、説明の便宜上、テーブル形式で地図画像を示したが、地図画像は、実際には複数レイヤ構造を有するデータ構造であり、各レイヤの地図画像ごとに種類情報が対応付けられているデータ構造であってもよい。
まず、ユーザがマウスやキーボードなどの入力デバイスを操作することによって、地図画像の出力を開始する旨の指示を入力し、その指示に応じて表示された初期画面において、図15で示されるように、プルダウンメニューから「住宅地図」と「地形図」を選択し、スライダを両者の中央にスライドさせたとする。すると、割合情報受付部21は、「住宅地図」と「地形図」とを1:1の割合で表示する旨の割合情報を受け付け(ステップS401)、透明度設定部22に渡す。
透明度設定部22は、「住宅地図」に対応する地図画像「M102」と、「地形図」に対応する地図画像「M103」とのうち、手前側の地図画像「M102」の透明度を、100×1/(1+1)=50%に設定する。また、その二個の地図画像のうち、背面側の地図画像「M103」の透明度を0%に設定する(ステップS501)。
その後、透明度設定部22は、その二個の地図画像「M102」「M103」よりも手前の地図画像「M101」が存在するため(ステップS502)、その地図画像「M101」の透明度を100%に設定する(ステップS503)。これによって透明度を設定する処理は終了となる(ステップS402)。そして、透明度設定部22は、地図画像「M101」の透明度が100%であり、地図画像「M102」の透明度が50%であり、地図画像「M103」の透明度が0%である旨を画像出力部14に渡す。
画像出力部14は、透明度に関する情報を受け取ると、画像記憶部11から複数の地図画像M101〜M103を読み出し、そのうちの地図画像「M101」の透明度を100%に設定し、地図画像「M102」の透明度を50%に設定し、地図画像「M103」の透明度を0%に設定して出力する(ステップS403)。その結果、ディスプレイに図15で示される表示がなされる。図15で表示されている地図画像は、図16で示される地図画像「M102」と、図17で示される地図画像「M103」が1:1の割合で表示された地図画像である。
この後、さらにスライダがスライドされた場合や、プルダウンメニューから異なる種類の地図が選択された場合には、それに応じた地図画像が表示されるようになる(ステップS401〜S403)。
以上のように、本実施の形態による画像出力装置2によれば、異なる種類の地図画像を、所望の割合で重ねた地図画像を出力することができる。その結果、二個の地図画像の情報を一度に見ることができ、ユーザの利便性が向上されることになる。例えば、住宅地図と地形図とが所定の割合で重ねられて表示された場合には、住宅地図で示される住宅が、どのような地形のところに位置しているのかを容易に把握することができるようになる。
また、上記実施の形態において、受け付けられた表示時代情報に対応する一または二個の地図画像や、受け付けられた割合情報に対応した二個の地図画像が、透明度を設定されて表示される場合について説明したが、それら以外の地図画像が表示されるようにしてもよい。例えば、画像記憶部11で記憶されている二以上の地図画像には、基準地図であるかどうかを示す情報である属性情報が対応付けられており、透明度設定部13は、属性情報によって基準地図であることが示される地図画像を透明に設定せず、その基準地図であることが示される地図画像よりも手前に表示される一以上の地図画像であり、属性情報によって基準地図でないことが示される地図画像が存在する場合に、その手前に表示される一以上の地図画像を透明または半透明に設定してもよい。地図画像を透明に設定するとは、その地図画像の透明度を100%に設定することである。また、地図画像を半透明に設定するとは、その地図画像の透明度を0%より大きく(0%は含まない)、100%未満に設定することである。
属性情報は、画像記憶部11で記憶されている全ての地図画像に対応付けられていてもよく、あるいは、そうでなくてもよい。後者の場合には、例えば、基準地図にのみ、基準地図であることを示す属性情報が対応付けられていてもよく、非基準画像にのみ、基準画像でないことを示す属性情報が対応付けられていてもよい。このように、各地図画像が基準地図であるのかどうかが結果として分かるのであれば、属性情報の持ち方は問わない。
図18は、属性情報の一例を示す図である。画像記憶部11において、図18で示されるように、種類情報と、属性情報とが地図画像に対応付けられていてもよい。なお、図18において、属性情報「1」は、基準地図であることを示しており、属性情報「0」は、非基準地図であることを示している。したがって、地図画像「M102」が基準地図となり、地図画像「M101」「M103」が非基準地図となる。
ここで、基準地図が設定されている場合における透明度の設定方法について説明する。
(1)基準地図以外に表示する地図が一個である場合
基準地図以外に表示する地図が一個であり、基準地図である地図画像と、それ以外の地図画像との表示の割合がA:Bに設定されていたとする。すると、透明度設定部13,22は、基準地図である地図画像が手前側である場合には、その基準地図である地図画像の透明度を「100×B/(A+B)」(%)に設定する。また、透明度設定部13,22は、基準地図でない地図画像が手前側である場合には、その基準地図でない地図画像の透明度を「100×A/(A+B)」(%)に設定する。なお、透明度設定部13,22は、その表示する二個の地図画像のうち、背面側の地図画像の透明度を「0%」に設定する。透明度設定部13は、あらかじめ決められている地図画像の重なりの順序を用いて、第一の地図画像と第二の地図画像のどちらが手前側であるのかを知ることができる。
(2)基準地図以外に表示する地図が二個である場合
基準地図以外に表示する地図が二個であり、基準地図である地図画像と、それ以外の二個の地図画像との表示の割合がA:Bに設定されていたとする。また、基準画像でない二個の地図画像のうち、手前側の地図画像を第一の地図画像として、背面側の地図画像を第二の地図画像としたとする。そして、第一の地図画像と第二の地図画像との表示の割合がX:Yであったとする。すると、基準地図である地図画像と、第一の地図画像と、第二の地図画像との表示の割合は、A×(X+Y):BX:BYとなる。ここで、基準地図である地図画像と、第一及び第二の地図画像との位置関係に応じて、各地図画像の透明度をどのように設定するのかについて説明する。
(2−1)基準地図が最も手前である場合
これは、例えば、図19において、地図画像Bが基準地図であり、地図画像Dが第一の地図画像であり、地図画像Fが第二の地図画像である場合である。この場合には、各地図画像の透明度は次のようになる。
地図画像A,C,E:透明度=100%
地図画像B(基準地図):透明度=100×B/(A+B)%
地図画像D(第一の地図画像):透明度=100×Y/(X+Y)%
地図画像F(第二の地図画像):透明度=0%
(2−2)基準地図が第一の地図画像と第二の地図画像との間の場合
これは、例えば、図19において、地図画像Bが第一の地図画像であり、地図画像Dが基準地図であり、地図画像Fが第二の地図画像である場合である。この場合には、各地図画像の透明度は次のようになる。
地図画像A,C,E:透明度=100%
地図画像B(第一の地図画像):
透明度=100×(AX+AY+BY)/{(A+B)×(X+Y)}%
地図画像D(基準地図):透明度=100×BY/(AX+AY+BY)%
地図画像F(第二の地図画像):透明度=0%
(2−3)基準地図が最も背面であるの場合
これは、例えば、図19において、地図画像Bが第一の地図画像であり、地図画像Dが第二の地図画像であり、地図画像Fが基準地図である場合である。この場合には、各地図画像の透明度は次のようになる。
地図画像A,C,E:透明度=100%
地図画像B(第一の地図画像):
透明度=100×(AX+AY+BY)/{(A+B)×(X+Y)}%
地図画像D(第二の地図画像):透明度=100×A×(X+Y)/(AX+AY+BY)%
地図画像F(基準地図):透明度=0%
なお、ここでは、基準地図が一個である場合について説明したが、基準地図は二以上存在してもよい。その場合であっても、二以上の基準地図と、基準地図以外に表示する地図画像との表示の割合を計算し、その後に、その表示の割合となるように各地図画像の透明度を設定すればよいことになる。なお、表示する地図画像(基準地図の地図画像を含む)のいずれかよりも手前に表示されるその他の地図画像が存在する場合には、その地図画像を透明に設定すればよい。
また、上記説明では、基準地図である地図画像と、それ以外に表示する地図画像との表示の割合や、基準地図以外に表示する地図画像の表示の割合が決まっている場合について説明したが、そうでなくてもよい。その表示の割合が決まっていない場合は、例えば、表示する地図画像が均等に表示されるように透明度を設定してもよく、あるいは、その他の方法によって透明度を設定してもよい。
また、上記各実施の形態において、あらかじめ表示する画像が決まっているような場合や、他の方法によって、表示する画像や表示の割合等が指定される場合などには、画像出力装置1は表示時代情報受付部12を備えていなくてもよく、また、画像出力装置2は割合情報受付部21を備えていなくてもよい。
また、上記各実施の形態では、画像出力装置1,2がスタンドアロンである場合について説明したが、画像出力装置1,2は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、情報を出力したりしてもよい。
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いるしきい値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していない場合であっても、ユーザが適宜、それらの情報を変更できるようにしてもよく、あるいは、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
また、上記各実施の形態において、画像出力装置1,2に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、あるいは、別々のデバイスを有してもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記各実施の形態における画像出力装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、地図の画像である地図画像が二以上記憶される画像記憶部で記憶されている二以上の地図画像の少なくとも一の地図画像の透明度を設定する透明度設定部と、前記画像記憶部で記憶されている二以上の地図画像を、前記透明度設定部が設定した透明度で重ねて出力する画像出力部として機能させるためのものである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には少なくとも含まれない。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図20は、上記プログラムを実行して、上記各実施の形態による画像出力装置1,2を実現するコンピュータの外観の一例を示す模式図である。上記各実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図20において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図21は、コンピュータシステム900の内部構成を示す図である。図21において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記各実施の形態による画像出力装置1,2の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記各実施の形態による画像出力装置1,2の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。