Class WGS84Punkt
- java.lang.Object
-
- de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Koordinate
-
- de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Punkt
-
- All Implemented Interfaces:
java.lang.Comparable<WGS84Punkt>
public class WGS84Punkt extends WGS84Koordinate implements java.lang.Comparable<WGS84Punkt>
Ein geographischer Punkt in WGS84-Koordinaten.
-
-
Field Summary
Fields Modifier and Type Field Description static doubleERD_RADIUS_KM$Auml;quatorradius der Erde (6378,137 km).static doubleGENAUIGKEIT_KOORDINATENGenauigkeit, mit der die Koordinaten verglichen werden.-
Fields inherited from class de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Koordinate
MAX_BREITE, MAX_LAENGE, MIN_BREITE, MIN_LAENGE
-
-
Constructor Summary
Constructors Constructor Description WGS84Punkt(double laenge, double breite)Konstruktor für Punkt mit WGS84-Koordinaten in Dezimalnotation.WGS84Punkt(WGS84Koordinate w)Konstruktor.
-
Method Summary
Modifier and Type Method Description static doubleabstand(WGS84Punkt p1, WGS84Punkt p2)Abstandsberechnung zwischen 2 Punkten mit Näherungsformel (idealisierte Erdkugel).static doubleabstandExakt(WGS84Punkt p1, WGS84Punkt p2)Abstandsberechnung zwischen 2 Punkten auf der Erdoberfläche mit exakter Formel.static doubleabstandKartesisch(WGS84Punkt p1, WGS84Punkt p2)Berechnet den Abstand der Punkte auf der Basis der transformierten kartesischen Koordinaten.intcompareTo(WGS84Punkt p)Vergleicht erst die Länge und dann die Breite der beiden Punkte.booleanequals(java.lang.Object obj, double maxAbweichung)Testet auf gleiche Punkte mit einer maximalen Abweichung.doublegetUtmX()Deprecated.neu:toUTMKoordinate()doublegetUtmY()Deprecated.neu:toUTMKoordinate()intgetUTMZone()Deprecated.neu:toUTMKoordinate()static doublekoordinateRunden(double wert)Liefert einen gerundeten Koordinatenwert.UTMKoordinatetoUTMKoordinate()Gibt die UTM-Koordinate zu diesem WGS84-Punkt zurück.
-
-
-
Field Detail
-
ERD_RADIUS_KM
public static final double ERD_RADIUS_KM
$Auml;quatorradius der Erde (6378,137 km).- See Also:
- Constant Field Values
-
GENAUIGKEIT_KOORDINATEN
public static final double GENAUIGKEIT_KOORDINATEN
Genauigkeit, mit der die Koordinaten verglichen werden.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
WGS84Punkt
public WGS84Punkt(double laenge, double breite)Konstruktor für Punkt mit WGS84-Koordinaten in Dezimalnotation. Beispiel +4.354551 +50.839402 bedeutet 4°. 354551 O 50°. 839402 N- Parameters:
laenge- Längebreite- Breite
-
WGS84Punkt
public WGS84Punkt(WGS84Koordinate w)
Konstruktor.- Parameters:
w- Koordinate
-
-
Method Detail
-
abstand
public static double abstand(WGS84Punkt p1, WGS84Punkt p2)
Abstandsberechnung zwischen 2 Punkten mit Näherungsformel (idealisierte Erdkugel). Formel: d=arccos(sin(X2)*sin(X1)+cos(X2)*cos(X1)*cos(Y2 - Y1)) * Erdradius- Parameters:
p1- erster Punktp2- zweiter Punkt- Returns:
- Abstand der Punkte in m
-
abstandExakt
public static double abstandExakt(WGS84Punkt p1, WGS84Punkt p2)
Abstandsberechnung zwischen 2 Punkten auf der Erdoberfläche mit exakter Formel. (Algorithmus: http://de.wikipedia.org/wiki/Orthodrome) b1 := Geografische Breite von Standort 1 l1 := Geografische Länge von Standort 1 b2 := Geografische Breite von Standort 2 l2 := Geografische Länge von Standort 2 f := Abplattung der Erde (1/298,257223563) a := Äquatorradius der Erde (6378,14 km) F := (b1+b2)/2 G := (b1-b2)/2 l := (l1-l2)/2 S := sin²(G)cos²(l) + cos²(F)sin²(l) C := cos²(G)cos²(l) + sin²(F)sin²(l) w := arctan(sqrt(S/C)) in rad R := sqrt(S*C)/w D := 2*w*a H1 := (3R-1)/(2C) H2 := (3R+1)/(2S) Abstand: s := D(1 + f*H1*sin²(F)cos²(G) - f*H2*cos²(F)sin²(G))- Parameters:
p1- erster Punktp2- zweiter Punkt- Returns:
- Abstand der Punkte in m
-
abstandKartesisch
public static double abstandKartesisch(WGS84Punkt p1, WGS84Punkt p2)
Berechnet den Abstand der Punkte auf der Basis der transformierten kartesischen Koordinaten.- Parameters:
p1- erster Punktp2- zweiter Punkt- Returns:
- Abstand der Punkte in m
-
koordinateRunden
public static double koordinateRunden(double wert)
Liefert einen gerundeten Koordinatenwert.- Parameters:
wert- der Wert der gerundet werden soll- Returns:
- der gerundete Wert
-
compareTo
public int compareTo(WGS84Punkt p)
Vergleicht erst die Länge und dann die Breite der beiden Punkte.- Specified by:
compareToin interfacejava.lang.Comparable<WGS84Punkt>
-
equals
public boolean equals(java.lang.Object obj, double maxAbweichung)Testet auf gleiche Punkte mit einer maximalen Abweichung.- Parameters:
obj- ObjektmaxAbweichung- max. zul. Abweichung- Returns:
- true wenn gleich sonst false
-
toUTMKoordinate
public UTMKoordinate toUTMKoordinate()
Gibt die UTM-Koordinate zu diesem WGS84-Punkt zurück.- Returns:
- die entsprechende UTM-Koordinate.
-
getUtmX
@Deprecated public double getUtmX()
Deprecated.neu:toUTMKoordinate()Gibt die nach UTM transformierte x-Koordinate (Rechtswert) zurück.- Returns:
- kartesische x-Koordinate des Punktes
-
getUtmY
@Deprecated public double getUtmY()
Deprecated.neu:toUTMKoordinate()Gibt die nach UTM transformierte y-Koordinate (Hochwert) zurück.- Returns:
- kartesische y-Koordinate des Punktes
-
getUTMZone
@Deprecated public int getUTMZone()
Deprecated.neu:toUTMKoordinate()Gibt die Zone der UTM-Transformation an.- Returns:
- Zonen-Nummer
-
-