我正在使用Google Maps API並添加了標記。現在我想在每個標記周圍添加10英里的半徑,這意味着在縮放時適當運行的圓圈。我不知道如何做到這一點,看起來並不常見。Google地圖中某點的繪製半徑
I found one example that looks good,你也可以看看Google Latitude。在那裏,他們使用半徑標記,就像我想要的那樣。
更新:谷歌縱橫使用縮放的an image,這將如何工作?
我正在使用Google Maps API並添加了標記。現在我想在每個標記周圍添加10英里的半徑,這意味着在縮放時適當運行的圓圈。我不知道如何做到這一點,看起來並不常見。Google地圖中某點的繪製半徑
I found one example that looks good,你也可以看看Google Latitude。在那裏,他們使用半徑標記,就像我想要的那樣。
更新:谷歌縱橫使用縮放的an image,這將如何工作?
使用Google Maps API V3創建一個Circle對象,然後使用bindTo()將其綁定到Marker的位置(因爲它們都是google.maps.MVCObject實例)。
// Create marker
var marker = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(53, -2.5),
title: 'Some location'
});
// Add circle overlay and bind to marker
var circle = new google.maps.Circle({
map: map,
radius: 16093, // 10 miles in metres
fillColor: '#AA0000'
});
circle.bindTo('center', marker, 'position');
你可以把它通過改變填充顏色,則strokeColor,strokeWeight,用於等(full API)看起來就像谷歌縱橫圈。
在Google地圖API中的「有趣的MVC對象」文章中還有一個很好的例子https://web.archive.org/web/20120312044803/http://code.google.com/apis/maps /articles/mvcfun.html – Johan 2012-02-24 15:31:58
在球面幾何形狀由這些線之間的點,線和角度定義。你只有那些基本的價值觀才能使用。
因此,圓形(根據投影到球體上的形狀)必須用點來近似。點越多,它看起來就像一個圓圈越多。
話雖如此,認識到谷歌地圖是projecting the earth onto a flat surface(認爲「展開」地球和拉伸+展平,直到它看起來「方」)。如果你有一個平坦的座標系,你可以在其上繪製2D對象。
換句話說你可以在谷歌地圖上繪製縮放的矢量圓。問題在於,谷歌地圖不能直接提供給你(他們希望儘可能接近地理信息系統的價值)。他們只給你他們希望你用來近似一個圓的GPolygon。但是,this guy did it使用vml用於IE,svg用於其他瀏覽器(請參閱「SCALED CIRCLES」部分)。
現在,回到關於谷歌縱橫的問題,使用縮放的圓形圖像(這可能對您最有用):如果您知道圓的半徑永遠不會改變(例如,它總是在10英里左右點),那麼最簡單的解決方案是使用GGroundOverlay,這只是圖像url +圖像表示的GLatLngBounds。你需要做的唯一工作就是要求你代表10英里半徑的GLatLngBounds。一旦你有了這些,谷歌地圖API處理縮放您的圖像隨着用戶放大和縮小。
很好的答案。 IOW意味着在其他語言和OOTB意味着開箱即用,那些需要像我一樣查看它的人。 – 2012-03-28 17:36:05
我已經在過去的這個問題,所以我書籤這discussion.
總結它,您可以:
我剛纔寫了博客文章,解決的正是這種,它可能對你有用: http://seewah.blogspot.com/2009/10/circle-overlay-on-google-map.html
基本上,你需要創建一個正確的GLatLngBounds一個GGroundOverlay。棘手的問題在於根據所需的半徑計算圍繞該圓的這個想象方塊(GLatLngBounds)的西南角座標和東北角座標。數學相當複雜,但您可以在博客中引用getDestLatLng函數。其餘的應該很簡單。
對於API V3的解決方案,請訪問:
http://blog.enbake.com/draw-circle-with-google-maps-api-v3
它創建點周圍一圈,然後顯示和流出用不同的顏色範圍的標記。他們也計算動態半徑,但在你的情況下半徑是固定的,所以可能會減少工作量。
頁面未找到,不幸的是。 – jsims281 2012-03-27 11:24:25
這是Google圈子,標記和事件的另一個(工作)示例。在這裏看到
在情況下,它是有用的,這樣的一個例子可以看出[這裏](http://www.freemaptools.com/radius-around-point.htm),完成與一個可拖動的半徑。 – 2013-09-29 13:02:46