Newer
Older
osmCoverage / src / osm / jp / api / RectArea.java
@hayashi hayashi on 7 Oct 2017 1 KB 正確な距離計算
package osm.jp.api;

public class RectArea {
    public double minlon;	// 経度(西)
    public double maxlon;	// 経度(東)
    public double minlat;	// 緯度(南)
    public double maxlat;	// 緯度(北)

    /**
     * 矩形領域を中心点と中心点からの距離(メートル)でセットする
     * 
     * @param lat	// 中心点の緯度
     * @param lon	// 中心点の経度
     * @param m		// 距離 領域の一辺の長さの半分
     */
    public RectArea(double lat, double lon, int m) {
        double dLat = Japan.ONE_KM_LAT * m / 1000D;		// 距離を表す緯度(差分)
        double dLon = Japan.ONE_KM_LON * m / 1000D;		// 距離を表す経度(差分)
        minlat = lat - dLat;		// 底辺(緯度)
        maxlat = lat + dLat;		// 上辺(緯度)
        minlon = lon - dLon;		// 左辺
        maxlon = lon + dLon;		// 右辺
    }

    /**
     * 約100m四方
     * @param lat
     * @param lon
     */
    public RectArea(double lat, double lon) {
        this(lat, lon, 50);
    }
}