26
A
回答
52
當過要放大5英里半徑使用下面的代碼:
double miles = 5.0;
double scalingFactor = ABS((cos(2 * M_PI * newLocation.coordinate.latitude/360.0)));
MKCoordinateSpan span;
span.latitudeDelta = miles/69.0;
span.longitudeDelta = miles/(scalingFactor * 69.0);
MKCoordinateRegion region;
region.span = span;
region.center = newLocation.coordinate;
[mapView setRegion:region animated:YES];
2
[self.theMapView setRegion:MKCoordinateRegionMake(
[theConsumer.latLong.clLocation coordinate],
MKCoordinateSpanMake(MAP_SPAN, MAP_SPAN))
animated:YES];
到MKCoordinateSpanMake
的參數是度,1度約爲69英里在赤道。因此MAP_SPAN將是5.0/69.0
54
使用MapKit中的MKCoordinateRegionMakeWithDistance
函數。
使用轉換函數將英里轉換爲米,因爲MapKit使用米。
float MilesToMeters(float miles) {
// 1 mile is 1609.344 meters
// source: http://www.google.com/search?q=1+mile+in+meters
return 1609.344f * miles;
}
然後在你的代碼中設置地圖地區(感謝@DylanBettermann的指出來獲得5英里半徑的距離需要加倍)
mapView.region = MKCoordinateRegionMakeWithDistance(
centerCoordinate,
MilesToMeters(10.0f),
MilesToMeters(10.0f)
);
相關問題
- 1. Android MapView縮放到半徑
- 2. 使用當前位置縮放MapView的問題
- 3. 將Google地圖縮放到以英里爲單位的特定半徑android
- 4. Android(MapView):如何在mapview中設置4英里的縮放級別?
- 5. 返回當前位置x英里半徑範圍內的地方的列表
- 6. 廣播到15英里半徑範圍內的位置
- 7. 如何在放大或縮小後獲取當前半徑
- 8. 地圖縮放到當前位置
- 9. MapView的當前位置
- 10. 如何找到圍繞某個位置的5英里半徑的一組經緯度對
- 11. WooCommerce免費送貨只有在20英里半徑的位置
- 12. 如何比較我的當前位置緯度和日誌半徑3英里? Xcode
- 13. 決定mapview的當前縮放比例
- 14. iphone mapview當前位置
- 15. MapView返回到當前位置註解?
- 16. 半徑mapview
- 17. 如何縮放到當前用戶位置?
- 18. 適用於iOS的Google Maps SDK如何識別位置是否在當前位置的5英里範圍內?
- 19. 如何將當前位置與地址列表進行比較,並在5英里/ 10英里/ 20英里範圍內找到附近的地址?
- 20. Mongodb公里半徑的查詢位置?
- 21. 如何使用縮放範圍獲取當前位置
- 22. MapView類不縮放用戶位置
- 23. 如何在MapView中重新定位內置的縮放控件?
- 24. 當我縮小時,MKMapView自動放大到當前位置
- 25. Android Google Maps v2以英里爲單位設置縮放級別
- 26. 如何在mapview上設置當前位置的監聽器?
- 27. 如何設置mapview以不顯示我的當前位置?
- 28. 如何將MapView的縮放控件放置在屏幕上的其他位置?
- 29. 如何使用MyLocationOverlay在MapView上繪製當前GPS位置?
- 30. 獲取一個MapView的MKCircleView半徑的所有位置座標
將這個代碼變焦從當前位置到半徑5英里 – Aisha 2011-02-17 05:30:23
在我的代碼中,用當前位置的用戶填寫「newLocation」變量,它將從當前位置縮放到5英里redius。 – Satyam 2011-02-17 10:47:57