program T13;
var
   Lat,Lon,H: real;
   x,y,z: real;
   i: integer;
begin
(* einmal einen Wert hin und zurück rechnen *)
   Lat:='49 20.500'; (* Ursprung *)
   Lon:='8 8.756';
   WGS84toXYZ(Lat,Lon,0,x,y,z);
   writeln(x:12:2,y:12:2,z:12:2);
   
   XYZtoWGS84(x,y,z, lat,lon,h);
   writeln(wgs84(Lat,Lon),h:12:2);

(* nun berechnen wir den Schwerpunkt von zwei punkten *)
   WptsClear;
   Lat:='49 20.000'; (* - 0.500 *)
   Lon:='8 8.756';
   WptsAdd(Lat,Lon);
   Lat:='49 21.000'; (* + 0.500 *)
   Lon:='8 8.756';
   WptsAdd(Lat,Lon);

   WptsCenter(Lat,Lon,h); (* sollte wieder Ursprung sein *)
(* die Höhe solte negativ sein, da der Punkt in der Erde liegt *)
   writeln(wgs84(Lat,Lon),h:12:2);

(* Fehlertest *)
(* XYZtoWGS84(0,0,0, lat,lon,h); *)


end.