google map」タグアーカイブ

真ん中のタイルを1枚選ぶ:グーグルマップのしくみを探る(5)

前回までは、座標変換について、若干細かく探りました。
グーグルマップといえば、スムーズな地図の動作が特徴ですが、
そのような動作の実現に不可欠なのが、緯度経度とピクセル座標の間の素早い座標変換なのです。

その座標変換は非常にシンプルに行われているのが、前回まででわかって頂けたと思います。
今回は、グーグルのAPIを使わずに、地図画像タイルを作成してみます。

グーグルマップのマップタイルは同じサイズで隙間なく敷き詰められているので、
一枚のタイルの位置が決めれば、他の位置も決まります。

今回はタイルを1枚だけ作成するプログラムをつくることにより、グーグルマップのタイルワークの第一歩を探ります。タイルは地図を表示するフレーム(ビューポート)の中心点を含む1枚とします。
続きを読む

メルカトル図法を導く:グーグルマップのしくみを探る(4)

グーグルマップは、投影法にメルカトル図法を用いています。
今回は、グーグルマップ独自の仕組みというわけではなく、一般によく用いられているメルカトル図法について考えて見ます。

前回では、メルカトルや投影という言葉から連想される「地球の中心に電球があって、そこから映し出される・・・」というイメージは止めましょう、と書きました。実はこのイメージはメルカトル図法の式の導出を難しくしてしまいます。

では、どうしたらメルカトル図法の式を導けるのか、
以下の条件を満足する単なる関数と考えるのです。

条件:
 緯度経度で表される球面(又は楕円面)上の領域は、
  1) 平面直交xy座標に、
  2) 緯線、経線は、それぞれx軸、y軸に平行になるように、
  3) 図形は相似にうつされる。

この条件だけで、導くことができます。では実際に導いてゆきましょう。
続きを読む

グーグルマップで最短線(測地線)-geodesicプロパティ

グーグルマップでは2通りの線を描くことができます。
・等角航路(経線となす角が常に一定):下の地図の青い線
・測地線(最短距離となる線):下の地図の赤い線

グーグルマップはメルカトル図法で投影されているため、等角航路は直線になりますが、
測地線は曲線になる場合が多いです。
続きを読む

緯度の範囲を導く:グーグルマップのしくみを探る(3)

初回では、グーグルマップの独自の平面座標(世界座標と呼んでいます)は、ズームレベル=0のときの256×256ピクセルの1枚の画像がもとになっていることを説明致しました。
この世界座標では、緯度は

 -85.0511287798066 \leq lat \leq 85.0511287798066

の範囲までしかカバーされません。つまり、この数字がグーグルマップの最北端、最南端です。
今回は、この85.0511287798066という値を実際に手計算で導きます。
続きを読む

ピクセル座標とは:グーグルマップのしくみを探る(2)

前回は、緯度経度で表された地球上の位置をどのように、ディスプレイ上のピクセル座標に対応させるかを探ってみました。
しかし、ピクセルとは四角の要素であり、点ではありません。それを、緯度経度で表された点とどのように対応させればよいのでしょうか。

すぐ、思いつくのはピクセル(要素)の中心に対応させる方法ですが、実はそうすると地図画像を扱う上ではともても不便になります。今回はどのようにピクセル座標を定義したらスムーズに対応させられるかを探ってみます。
続きを読む