廣告

SiteTag

噗噗噗

推薦網站

最新回應

這個案例是這樣的。使用者希望在地圖載入地標的時候,不管座標在哪裡,要一次能看到所有的地標。

這時我們可以這樣做。

map.setCenter(new GLatLng(0,0),0);  //要先設定map latlng 和 level
            
bounds = new GLatLngBounds();

在地圖初始的時候,我們並不知道待會要加入的地標後最適合的地圖座標與level,所以我們先給他一個最大的初始值。一定要先給初始值,否則下一句的建立GLatLngBounds物件的時候會發生錯誤。

for(var i = 0; i < points.length; i++)
{
    bounds.extend(new GLatLng(lat,lng));      
}

再把你要加入在地圖上的marker的座標給GLatLngBounds.extend的方法

map.setZoom(map.getBoundsZoomLevel(bounds));
map.setCenter(bounds.getCenter());

最後GLatLngBounds丟給GMap2.getBoundsZoomLevel的方法,他就會找出最適的level,再把地圖移動到marker們的中心點,這樣就可以達到在地圖上一次顯示所有輸入地標的功能了。

 順手再寫了一下縣市地位、地址定位和經緯度定位的功能在範例裡。有興趣的人請自行連結參考。謝謝大家。

範例

 

 

 

 

 

 

 


DotBlogs Tags: google map

回應

  • swalt 2008/7/14 上午 09:50 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    如果此bounds里面包含有其他的marker,这样在地图里会显示么?

  • jon 2008/7/14 上午 10:09 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    to swalt :
    不太瞭解你的意思
    你可以用看看範例
    http://jonmu0922.googlepages.com/fitmapzoom.htm

  • Indiana 2008/7/15 下午 02:53 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    您好,我正在找「用Google API輸入地址得到座標」的範例,找到jon大您家。想請問一下,我用IE與Firefox來開您的範例時(許多網路上的其他範例也一樣),輸入相同的搜尋條件:「台中市三民路」,會出現不一樣的搜尋結果。

    一般IE會出現三個結果(jon大您這裡應該是取其中一個顯示),比較正確;但Firefox卻出現一個在豐原的結果,不太正確。請問這個問題您有什麼想法嗎?謝謝!

  • jon 2008/7/16 上午 12:29 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

     to Indiana :

    你好 這個地址定位 好像不會回傳三個位置出來說

    程式碼你可以參考一下這篇

    http://www.dotblogs.com.tw/jon/archive/2008/01/25/1010.aspx

    若是會有多個結果出現

    你也可以參考urmap的呈現方式

    將搜尋結果用list的方式呈現

    讓使用者自己決定哪一個是正確的結果

     

  • Indiana 2008/7/16 上午 10:16 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    多謝您的回覆!
    不過我的問題不是在於出現多個結果...
    而是用IE和Firefox開啟您的範例來搜尋「台中市三民路」時,會出現不同結果?請問您測時有此現象嗎?

  • jon 2008/7/16 上午 11:09 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    不會耶 ie7和ff都是一樣的結果

  • johnny 2008/8/7 上午 11:37 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    請問有幫人做嗎?有接案子製作嗎?

  • jon 2008/8/7 下午 07:10 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    to johnny :

    我只是程式的新手 並沒有接案子的能力

  • johnny 2008/8/10 下午 01:20 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    那你可以介紹一下嗎?

  • jon 2008/8/10 下午 08:16 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    to johnny :
    很抱歉 沒有認識這方面的人

  • 如何更換icon? 2008/12/5 上午 11:11 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    請教一下,在這個範例中:
    http://jonmu0922.googlepages.com/fitmapzoom.htm

    要如何更改預設的圖標icon呢?

  • Yuo 2009/2/11 下午 11:19 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    請問要如何把儲存功能設在資料庫OR本機 下次使用還會出現?? 這個範例一重新整理就沒有了!

  • jon 2009/2/12 上午 09:43 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    to Yuo :

    這只是簡單的html範例 並沒有做到寫入資料的的部份

    所以重新整理之後就會一切重來了

  • Yuo 2009/2/13 下午 08:26 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    HTML可以搭配ASP用資料庫結合嗎?

    請問你有相關經驗嗎? 可以分享嗎?

    謝謝!

  • jon 2009/2/14 上午 10:05 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    to Yuo :

    很抱歉 怎麼和資料庫互動就沒有研究了

  • Calvin 2009/3/27 下午 04:04 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    可以參考這網站,是結合了資料庫程式來做的~!
    http://www.whereru.com.tw/lifemap.asp

  • 小灰 2009/7/10 上午 11:15 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    請問大大如合用vb寫利用goole map在上面打完地址地位後,程式如何把經緯度會直接複製儲存在資料庫,或者儲存在程式裡面??

  • 小灰 2009/7/10 上午 11:17 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    上面打錯字,市地址定位後

  • Y.S 2009/8/31 上午 10:48 回覆

    # re: 使用google map api 的 GLatLngBounds 找出地圖最適的座標與zoom level

    很有帮助,非常感谢!


*標 題:

*姓 名:

 電子郵件: (將不會被顯示)

 個人網頁:

*回應

登入後使用進階評論

Please add 4 and 5 and type the answer here: