GoogleMap中擴充圖形的畫法

來源:互聯網
上載者:User

最近在幫一個朋友在GoogleMap上畫扇形,GoogleMap本身不提供這種畫法,所以需要自己去實現,無賴原來學過的數學也忘記的差不多了,只能求助網路。

國外有一個高手寫了一個擴充,地址是:http://econym.org.uk/gmap/eshapes.htm

但裡面沒有扇形的畫法,在此基礎上自己增加了扇形的畫法:

GPolyline擴充方法:

 1 GPolyline.Sector = function(point, radius, sDegree, eDegree, colour, weight, opacity,opts) {
2 var points = [];
3 var step = ((eDegree - sDegree) / 10) || 10;
4
5 points.push(point);
6 for(var i=sDegree;i<eDegree + 0.001;i+=step){
7 points.push(EOffsetBearing(point,radius,i));
8 }
9 points.push(point);
10
11 return new GPolyline(points, colour, weight, opacity, opts);
12 }

GPolygon擴充方法:

 1 GPolygon.Sector = function(point, radius, sDegree, eDegree, strokeColour, strokeWeight,Strokepacity, fillColour, fillOpacity, opts) {
2 var points = [];
3 var step = ((eDegree - sDegree) / 10) || 10;
4
5 points.push(point);
6 for(var i=sDegree;i<eDegree + 0.001;i+=step){
7 points.push(EOffsetBearing(point,radius,i));
8 }
9 points.push(point);
10
11 return new GPolygon(points, strokeColour, strokeWeight,Strokepacity, fillColour, fillOpacity, opts);
12 }

使用方法見Demo,是:http://files.cnblogs.com/liongis/eshapes.rar

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.