Đại số và Hình học… bao giờ tôi mới sử dụng nó? Bản đồ Google!

Ảnh chụp màn hình 2014 10 23 tại 3.24.52 PM

Một người bạn tốt của tôi, Glenn, là một trong những người sáng lập Family Watchdog. Family Watchdog là một trong những câu chuyện tuyệt vời… một công ty được thành lập trên một bản mashup đang thực hiện một dịch vụ công cộng VÀ thực sự cung cấp nguồn sống cho những người sáng lập. Thật là ngạc nhiên khi đi làm mỗi ngày khi biết rằng bạn đã tạo ra sự khác biệt. Mỗi lần tôi nhìn thấy Glenn, anh ấy đều làm việc như điên và yêu từng phút của nó.

Tối nay, tôi đã giúp Glenn một số vấn đề về Google Map. Tôi muốn chia sẻ một với bạn… vẽ một vòng tròn trên Google Maps. Nó cuộn lại (theo như tôi biết), bạn không thể thực sự vẽ một vòng tròn. Tuy nhiên, bạn có khả năng vẽ các đường đa giác và vẽ vector khi bạn thấy phù hợp. Vì vậy, mã có thể được xây dựng để chỉ cần ghép 36 đoạn lại với nhau và tạo góc một chút cho vectơ để chúng cộng lại và tạo thành một vòng tròn hoàn chỉnh!

Các polyline được viết bằng VML (ngôn ngữ đánh dấu vectơ), vì vậy nó phải được chỉ ra trong tiêu đề của tệp để IE kết xuất chúng đúng cách. Firefox tự động làm điều đó (tất nhiên!).

Đây là một đoạn mã sẽ vẽ một vòng tròn 1 dặm quanh nhà bạn.

var PGlat = (PGradius / 3963) * 180 / Math.PI; // sử dụng 3963 dặm như bán kính trái đất trong dặm if (PGwidth = 0!) {Var PGlng = PGlat / Math.cos (PGcenter.lat () * Math.PI / 180); for (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 (GLatLng mới (PGy, PGx)); } map.addOverlay (GPolyline mới (PGpoints, PGcolor, PGwidth, PGtrans)); } else {var PxWidth = Math.round (PGlat * yyPx / latSpan + 0.5); // chiều rộng của polyline var deltaLat = 250 * latSpan / yyPx; if (PxWidth> 500) {PxWidth = 500; PGlat - = deltaLat; } else {PGlat / = 2; }

Xem toàn bộ bản demo để xem mã đầy đủ. Tôi đã tình cờ gặp chức năng tại trang web này, nơi anh ấy có nhiều lớp vòng tròn trên một bản đồ với các vùng được tô bóng.

Bạn nghĩ gì?

Trang web này sử dụng Akismet để giảm spam. Tìm hiểu cách xử lý dữ liệu nhận xét của bạn.