1

私はGoogleタイルサーバーに取り組んでいます。http URL を使用して Google サーバーからタイルをフェッチする WCF サービス (C#) を 1 つ作成しました:- http://mt1.google.com/vt/lyrs=m@129&hl=en&x=1&y=0&z=1&s=Galileo

ご存じのとおり、Google タイルでは、タイルを提供するために URL に x、y、z の 3 つの変数パラメーターが必要です。

その他のコーディネートはこちらでご覧いただけます

Google タイル (マップ) を 1 つずつフェッチすることに成功しました (x、y、z の異なる値を設定することを意味します)。

現実世界のシナリオでは、これらのタイルを表示するための WinForm (C#) アプリケーションを開発してみました。1 対 1 のタイルを表示できます。しかし、私の問題は..

  1. マップの完全なセット (さまざまなタイルをつなぎ合わせたもの) を提供するにはどうすればよいですか? さまざまなパラメーターを使用して Google Tile Server に複数の呼び出しを提供できることはわかっていますが、さまざまな条件での x、y、z の適切な値と、それとの継続的な関係を知る必要がありました。

  2. 画面座標を Google Tile Server 座標 (x、y、z の値を意味する) にリンクする計算、式、またはマッピングはありますか?

  3. Googleが提供するのと同じように、ドラッグとダブルクリックでスムーズなズームとパンを提供する必要があります。

  4. 私の基本的な関心事は、Google の x、y、z と画面座標との関係です。

どんな助け(またはサンプル)も高く評価されます。

4

3 に答える 3

2

やりたいことの説明は複雑で、何らかの方法でそれを理解する必要があります。物事は自動的に自動的に組み立てられるわけではないためです (ある意味残念です)。

それでも、次のリンクが文字通り私の無知の問題を解決したことがわかったので、今では物事をはるかに簡単に理解できます。

http://www.maptiler.org/google-maps-coordinates-tile-bounds-projection/

これにより、目的の変換を取得する方法が (いくつかの数式で) 説明されます。

于 2012-06-16T20:32:35.577 に答える
1

緯度/経度から Google マップのタイル座標 (ズーム、x、y) に移動するには、メルカトル図法を使用する必要があります。例については、 https://developers.google.com/maps/documentation/javascript/examples/map-coordinatesを参照してください。まず、緯度/経度から「ワールド ポイント」に変換する必要があります。そこから、ズーム レベルに基づいて、全世界を表す仮想マップ イメージ全体のピクセルに変換できます。タイル サイズ (256 x 256) がわかれば、ピクセルからタイル座標に変換できます。このロジックを逆にして、タイル座標から緯度/経度に移動します。

于 2014-08-19T20:19:24.950 に答える
1

緯度経度からタイル座標に移動したい場合は、bing マップ タイル ページに必要なすべての方程式が表示されます。(誰もが左上のオリジンと 256x256 サイズのタイルを使用していると仮定します)。

http://msdn.microsoft.com/en-us/library/bb259689.aspx

異なるサイズのタイルを使用する必要がある場合は、方程式の定数を変更してください。

于 2014-10-06T22:56:56.743 に答える