2010-07-10 31 views
1

我正在使用Google Tile Server。我已經寫了一個WCF服務(C#),它使用http URL從Google服務器獲取磁貼: - http://mt1.google.com/vt/[email protected]&hl=en&x=1&y=0&z=1&s=Galileo在Google Tile Server中拼貼(x,y和z參數)

如您所知,Google Tile需要三個可變參數x,y和z來提供磁貼。

其他座標can be seen here

我在一個(是指將的X,Y和Z值不同)獲取的谷歌瓷磚(圖)一個非常成功的。

現在來到真實世界的場景,我嘗試開發一個WinForm(C#)應用程序來顯示這些圖塊。我能夠顯示一個一個瓷磚。但我的問題是..

  1. 如何提供完整的一套地圖(不同的瓷磚拼接在一起)? 我知道,我可以提供給不同的參數谷歌瓷磚服務器多個電話,但我需要知道這可能是x的適當值,Y &中的Z不同的條件和連續關係到

  2. 有將屏幕座標鏈接到Google Tile服務器座標的任何計算公式或映射(表示x,y & z值)?

  3. 我必須提供順暢的縮放和平移上拖拽和雙擊..同谷歌提供。

  4. 我最關心的是Google的x,y,z和我的屏幕座標之間的關係。

任何幫助(或樣品)將不勝感激。

+0

任何運氣與這???? – prajakta 2010-12-15 07:06:41

+0

檢查http://greatmaps.codeplex.com/ – 2011-06-17 08:17:19

回答

2

你想要做什麼的解釋是複雜的,你必須弄清楚某種方式,因爲事情不只是自己動手組裝自動的(這是不幸中的一種方式)。

即使,我發現下面的鏈接字面上解決了我的無知的問題,所以現在我可以搞清楚這些事情要容易得多:

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

這將解釋(一些示例公式),你怎麼能得到你想要的轉變。

1

您需要使用墨卡託投影的緯度/經度去谷歌地圖圖塊座標(縮放,X,Y)。一個例子見https://developers.google.com/maps/documentation/javascript/examples/map-coordinates。您首先需要將Lat/Lon轉換爲「世界點」,然後根據縮放級別將其轉換爲整個虛擬地圖圖像上代表整個世界的像素。知道平鋪大小(256 x 256),然後您可以從像素轉換爲平鋪座標。 反轉此邏輯以從瓦片座標轉到經度/緯度。

1

如果你想從緯度長到平鋪座標,bing地圖平鋪頁給你所有你需要的方程。 (假設每個人都在使用一個前端來源和256x256大小的圖塊)。

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

,如果你需要在方程式中使用不同尺寸的方格,然後修改常量。

相關問題