/[projects]/dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/BoundingBox.java
ViewVC logotype

Contents of /dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/BoundingBox.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2240 - (show annotations) (download)
Wed Dec 10 08:26:12 2014 UTC (9 years, 5 months ago) by torben
File size: 1732 byte(s)
bk skal kunne gruppere paa foerste 2 cifre i postnummer
1 package dk.daoas.fulddaekning;
2
3 public class BoundingBox {
4
5
6 public static class BoundingBoxException extends Exception{
7 public BoundingBoxException(String reason) {
8 super(reason);
9 }
10
11 private static final long serialVersionUID = 1L;
12 }
13
14 //public static final double LATITUDE_MARGIN = 0.02702703;
15 //public static final double LONGUTUDE_MARGIN = 0.046875;
16
17 public double latitudeMax;
18 public double latitudeMin;
19
20 public double longitudeMax;
21 public double longitudeMin;
22
23
24 @Override
25 public String toString() {
26 return "bbox: Latitude=" + latitudeMin +"/" + latitudeMax + " longitude=" + longitudeMin + "/" + longitudeMax;
27 }
28
29 public void validateBbox() throws BoundingBoxException {
30
31 double latDiff = Math.abs(latitudeMax - latitudeMin);
32 if ( latDiff > 1.0) {
33 throw new BoundingBoxException("For stor latitude forskel / " + latDiff);
34 }
35
36 double lngDiff = Math.abs(longitudeMax - longitudeMin);
37 if ( lngDiff > 1.0) {
38 throw new BoundingBoxException("For stor longitude forskel / " + lngDiff);
39 }
40
41 GeoPoint min = new GeoPoint(latitudeMin, longitudeMin);
42 GeoPoint max = new GeoPoint(latitudeMax, longitudeMax);
43 double afstand = GeoPoint.beregnAfstand(min, max);
44
45 if (afstand >= 125.0) { //hvis cross afstand er over 80 km - så er postnummeret for stort
46 throw new BoundingBoxException("For stor cross afstand " + afstand);
47 }
48 }
49
50 public void adjustToMargin() {
51 Constants consts = Constants.getInstance();
52
53 latitudeMax += consts.getLatitudeMargin();
54 latitudeMin -= consts.getLatitudeMargin();
55
56 longitudeMax += consts.getLongitudeMargin();
57 longitudeMin -= consts.getLongitudeMargin();
58 }
59
60
61 }

  ViewVC Help
Powered by ViewVC 1.1.20