スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

グーグルマップ(Google Maps)の座標間変換式について(3)



これまでの記事「Google Maps の座標間変換式について(1)」
次の記事「Google Maps の座標間変換式について(2)」で示した座標間の変換式が有効であることがわかった。

ところで、Bratliffは別の形の変換式をJavascriptで実装している。この記事ではその実装であるadjust.jsについて検討する。

4.本記事とは別の変換式(adjust.js)について

一方、Bratliff作成のadjust.jsを数式で表記すると次のようになる。
ただし、本記事導出の変換式とadjust.jsでは、画像座標の縦軸の方向が逆であることに注意されたい。


●画像座標のマーカーの経度$x$から画像座標の横方向変位$X$への変換式

$$ \begin{align}
X(x_c, x, z) &= \lfloor 2^{7+z}\frac{x-x_c}{180}\rfloor
\end{align}$$

●画像座標のマーカーの緯度$y$から画像座標の縦方法変位$Y$への変換式

$$ \begin{align}
Y(Y_c, y, z)&= \lfloor \frac{2^{7+z}}{\pi}\left(-\tanh^{-1}\left(\sin\left(\frac{\pi}{180}y\right)\right)
+ \tanh^{-1}\left(\sin\left(\frac{\pi}{180}y_c\right)\right)\right)\rfloor\\
\end{align}$$

●画像座標の横方向変位$X$から画像座標のマーカーの経度$x$への変換式

$$ \begin{align}
x(x_c, X, z)&= x_c+\frac{180}{2^{7+z}}X
\end{align}$$


●画像座標の縦方法変位$Y$から画像座標のマーカーの緯度$y$への変換式

$$ \begin{align}
y(y_c, Y, z) &= 180\left(\frac{1}{2}-\frac{2}{\pi}\tan^{-1}\left(\exp
\bigg\{-\tanh^{-1}\left(\sin\left(\frac{\pi}{180}y_c\right)\right) +\frac{\pi}{2^{7+z}}Y\bigg\}\right)\right)
\end{align}$$

経度方向に関しては、「Google Maps の座標間変換式について(1)」で導いた変換式(1)~(2)と同じであることがわかる。
緯度方向に関しては、世界測地系から画像座標への変換式は符号が逆になることを考慮すれば同じである。しかし最後の式(画像座標から世界測地系)に関しては、本記事とadjust.jsで異なっている。

数値的に調べてみたところ、本記事の変換式とadjust.jsでは、符号が逆になることを考慮すれば同じであることがわかった。また関係「世界測地系のある点$(\tilde{x}, \tilde{y})$を世界測地系→画像座標→世界測地系と変換すれば元の点$(\tilde{x}, \tilde{y})$に戻ること」が成立することも数値的に成り立っていた。


以上より、本記事の変換式とadjust.jsでは次の点を除き同じ結果が得られることがわかった。
・画像座標の縦軸の取り方(向き)が逆である。
・画像座標から世界測地系への変換式に関しては、本記事とadjust.jsで異なっている。


おわり。
スポンサーサイト

テーマ : インターネットサービス
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

hosohashi

Author:hosohashi
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。