Newer
Older
osmCoverage / src / osm / jp / api / RectArea.java
@hayashi hayashi on 7 Oct 2017 1 KB 正確な距離計算
  1. package osm.jp.api;
  2.  
  3. public class RectArea {
  4. public double minlon; // 経度(西)
  5. public double maxlon; // 経度(東)
  6. public double minlat; // 緯度(南)
  7. public double maxlat; // 緯度(北)
  8.  
  9. /**
  10. * 矩形領域を中心点と中心点からの距離(メートル)でセットする
  11. *
  12. * @param lat // 中心点の緯度
  13. * @param lon // 中心点の経度
  14. * @param m // 距離 領域の一辺の長さの半分
  15. */
  16. public RectArea(double lat, double lon, int m) {
  17. double dLat = Japan.ONE_KM_LAT * m / 1000D; // 距離を表す緯度(差分)
  18. double dLon = Japan.ONE_KM_LON * m / 1000D; // 距離を表す経度(差分)
  19. minlat = lat - dLat; // 底辺(緯度)
  20. maxlat = lat + dLat; // 上辺(緯度)
  21. minlon = lon - dLon; // 左辺
  22. maxlon = lon + dLon; // 右辺
  23. }
  24.  
  25. /**
  26. * 約100m四方
  27. * @param lat
  28. * @param lon
  29. */
  30. public RectArea(double lat, double lon) {
  31. this(lat, lon, 50);
  32. }
  33. }