2011-12-28 35 views
7

Tôi đang làm việc với Google Maps và tôi cần tìm kiếm trong bán kính 8 dặm quanh một trung tâm mã zip để tôi tìm ra cách dễ nhất để làm điều đó được để tìm ra việc chuyển đổi vĩ độ/kinh độ để dặm.Biến đổi vĩ độ/kinh độ thành 1 dặm

+0

Đây không thực sự là câu hỏi lập trình và không có chuyển đổi đơn lẻ. –

+0

[Thư viện hình học của Google] (http://code.google.com/apis/maps/documentation/javascript/geometry.html#Distance) có thể tính toán khoảng cách cho bạn. –

Trả lời

3

Google là bạn của bạn. Các mặt hàng này trong vòng vài kết quả đầu tiên của "chuyển đổi kinh độ vĩ độ để dặm": http://www.movable-type.co.uk/scripts/latlong.html

Nó thậm chí cung cấp cho một số mã javascript. Chỉ cần một lưu ý, nó mang lại kết quả trong KM, nhưng điều đó có thể dễ dàng chuyển đổi sang dặm.

7

Đây là ý tưởng cơ bản khi sử dụng Google's Geometry library.

Nhớ thêm thư viện hình học. Nó tách biệt với thư viện bản đồ của Google.

<script type="text/javascript" 
    src="http://maps.googleapis.com/maps/api/js?libraries=geometry&sensor=false"> 
</script> 

ví dụ sử dụng:

//the distance function defaults to km. 
    //to use miles add the radius of the earth in miles as the 3rd param. 
    //earths radius in miles == 3956.6 
    var distance = 
     google.maps.geometry.spherical.computeDistanceBetween(
      /* from LatLng */, 
      /* to LatLng */, 
      /* radius of the earth */ 
    ); 

    if (distance <= 5) { //less or equal to five miles 
     var marker = new google.maps.Marker({ 
      map: map, 
      position: //LatLng 
     });    
    } 

Tôi có một ví dụ fiddle về điều này trong hành động.

Các vấn đề liên quan