Aljèb ak Jewometri ... kilè mwen pral janm sèvi ak li? Google Maps!

Piki ekran 2014 10 23 nan 3.24.52 PM

Yon bon zanmi mwen, Glenn, se youn nan fondatè Fanmi Gadyen. Fanmi Gadyen se youn nan istwa kokenn sa yo ... yon konpayi ki te fonde sou yon mashup ki ap fè yon sèvis piblik AK aktyèlman bay yon k ap viv pou fondatè li yo. Li dwe etonan pou yo ale nan travay chak jou konnen ke ou te fè yon diferans. Chak fwa mwen wè Glenn, li ap travay tankou fou ak renmen chak minit nan li.

Aswè a mwen te ede soti Glenn ak yon koup nan pwoblèm Google Map. Mwen te vle pataje youn avèk ou ... trase yon sèk sou Google Maps. Li van moute (osi lwen ke mwen konnen), ou pa ka aktyèlman trase yon sèk. Sepandan, ou gen kapasite nan trase polylines ak vektè yo jan ou wè anfòm. Se konsa, ka kòd la dwe bati tou senpleman mete 36 segments ansanm ak yon ti kras ang vektè a pou yo ke yo ajoute leve, li bati yon sèk konplè!

Polylines yo ekri ak VML (lang vektè balisaj), kidonk li dwe endike nan header dosye a pou IE byen rann yo. Firefox fè li otomatikman (nan kou!).

Isit la nan yon brib ki pral trase yon sèk 1 mil alantou kay ou.

var PGlat = (PGradius / 3963) * 180 / Math.PI; // lè l sèvi avèk 3963 mil kòm reyon latè nan mil si (PGwidth! = 0) {var PGlng = PGlat / Math.cos (PGcenter.lat () * Math.PI / 180); pou (var i = -1; mwen> 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 (nouvo GLatLng (PGy, PGx)); }; map.addOverlay (nouvo GPolyline (PGpoints, PGcolor, PGwidth, PGtrans)); } Lòt bagay {var PxWidth = Math.round (PGlat * yyPx / latSpan + 0.5); // lajè polyline var deltaLat = 250 * latSpan / yyPx; si (PxWidth> 500) {PxWidth = 500; PGlat - = deltaLat; } Lòt bagay {PGlat / = 2; };

Gade Demo a tout antye yo wè kòd la an plen. Mwen te rive atravè fonksyon an nan sit sa a kote li te gen kouch miltip nan ti sèk sou yon kat jeyografik sèl ak rejyon fonse.

Ki sa ou panse?

Sit sa a sèvi ak Akismet diminye Spam. Aprann kijan kòmantè ou a trete.