Algebra na Jiometri… ni lini nitaitumia? Ramani za google!
Rafiki yangu mzuri, Glenn, ni mmoja wa waanzilishi wa Family Watchdog. Mtazamaji wa Familia ni moja wapo ya hadithi za kupendeza… kampuni iliyoanzishwa kwenye mashup ambayo inafanya huduma ya umma NA kwa kweli inapeana riziki kwa waanzilishi wake. Lazima iwe ya kushangaza kwenda kufanya kazi kila siku ukijua kuwa umefanya mabadiliko. Kila wakati ninapomwona Glenn, anafanya kazi kama wazimu na anapenda kila dakika yake.
Leo usiku nimemsaidia Glenn na maswala kadhaa ya Ramani za Google. Nilitaka kushiriki moja na wewe… kuchora mduara kwenye Ramani za Google. Inazunguka (kama ninavyojua), huwezi kuteka duara. Walakini, una uwezo wa kuchora polylines na kuzifanya kwa kadiri uonavyo inafaa. Kwa hivyo, nambari inaweza kujengwa ili kuweka tu sehemu 36 pamoja na pembe kidogo ya vector ili waongeze na kujenga duara kamili!
Polylines zimeandikwa na VML (lugha ya alama ya vector), kwa hivyo inapaswa kuonyeshwa kwenye kichwa cha faili kwa IE ili kuwapa vizuri. Firefox hufanya moja kwa moja (kwa kweli!).
Hapa kuna snippet ambayo itavuta mduara 1 maili kuzunguka nyumba yako.
var PGlat = (PGradius / 3963) * 180 / Math.PI; // kutumia maili 3963 kama eneo la dunia kwa maili ikiwa (PGwidth! = 0) {var PGlng = PGlat / Math.cos (PGcenter.lat () * Math.PI / 180); kwa (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)); Push (PGatLng mpya (PGy, PGx)); }; ramani.addOverlay (GPolyline mpya (PGpoints, PGcolor, PGwidth, PGtrans)); } mwingine {var PxWidth = Math.round (PGlat * yyPx / latSpan + 0.5); // upana wa polyline var deltaLat = 250 * latSpan / yyPx; ikiwa (PxWidth> 500) {PxWidth = 500; PGlat - = deltaLat; } mwingine {PGlat / = 2; };
Tazama onyesho lote ili uone nambari kamili. Nilitokea kwenye kazi kwenye wavuti hii ambapo ana safu nyingi za duru kwenye ramani moja na mikoa yenye kivuli.