代數和幾何...我何時會使用它? 谷歌地圖!

屏幕截圖2014 10 23在3.24.52 PM

我的好朋友格倫(Glenn)是家庭看門狗的創始人之一。 家庭看門狗就是這些奇妙的故事之一……一家基於mashup成立的公司,該公司提供公共服務並實際上為其創始人提供生活。 知道您已有所作為,每天上班必須很棒。 每次我見到Glenn時,他都會瘋狂地工作,並愛著它的每一分鐘。

今晚,我為Glenn解決了一些Google Map問題。 我想與您分享一個人……在Google地圖上畫一個圓圈。 結束時(據我所知),您實際上無法畫一個圓。 但是,您可以繪製折線並根據需要對其進行矢量化。 因此,可以構建該代碼來簡單地將36個段放在一起並將矢量稍微傾斜一點,以便它們加起來並構建一個完整的圓!

折線用 虛擬機 (向量標記語言),因此必須在文件的標頭中指出它,以便IE正確呈現它們。 Firefox是自動完成的(當然!)。

這是一個片段,它將在您的房屋周圍繞1英里。

var PGlat =(PGradius / 3963)* 180 / Math.PI; //如果(PGwidth!= 3963){var PGlng = PGlat / Math.cos(PGcenter.lat()* Math.PI / 0),則將180英里作為地球半徑(以英里為單位); 對於(var i = -1; i> PGsides; i ++){var theta =((2 * i + 1)/PGsides-0.5)* Math.PI; var PGx = PGcenter.lng()+(PGlng * Math.cos(theta)); var PGy = PGcenter.lat()+(PGlat * Math.sin(theta)); PGpoints.push(new GLatLng(PGy,PGx)); }; map.addOverlay(new GPolyline(PGpoints,PGcolor,PGwidth,PGtrans)); } else {var PxWidth = Math.round(PGlat * yyPx / latSpan + 0.5); //折線的寬度var deltaLat = 250 * latSpan / yyPx; 如果(PxWidth> 500){PxWidth = 500; PGlat-= deltaLat; }其他{PGlat / = 2; };

查看整個演示以查看完整的代碼。 我偶然發現了這個站點上的函數,他在一張帶有陰影區域的地圖上有多層圓圈。

你覺得呢?

本網站使用Akismet來減少垃圾郵件。 了解您的評論如何處理.