Serviciu web pentru efectuarea transformărilor de coordonate
Accesarea se face la adresa http://earth.unibuc.ro:8080/transdatonline/cooOpService folosind metodele HTTP Get şi Post cu parametrii:
- cooOp (coordinate operation) care poate lua valorile: Stereo70ToETRS89, Stereo30ToETRS89, ETRS89ToStereo70 sau ETRS89ToStereo70. Acest parametru specifică transformarea care se va aplica. Cele patru valori menţionate anterior corespund transformărilor: Stereo70ETRS89, Stereo30ETRS89, ETRS89Stereo70, respectiv ETRS89Stereo70;
- coos (coordinates) pentru Get si coosArray (coordinates array) pentru Post. Coos reprezintă un set de coordonate despărţite prin caracterul „;”, iar coosArray reprezintă un vector de coordonate în format JSON (v. ex.).
Pentru a putea folosi serviciul cu succes este necesar ca următoarele menţiuni să fie luate în considerare:
- răspunsul pentru ambele metode este în format JSON (v. ex.). Un set de coordonate este reprezentat sub următoarea formă: {"coos":[],"warning":""}. Apelarea metodei Post va returna un vector de astfel de seturi de coordonate, iar reprezentarea lui va fi: [{"coos":[],"warning":""}]. Atributul „warning” apare doar în situaţia în care au fost probleme la procesarea coordonatelor şi ca atare coordonatele returnate trebuie ignorate;
- coordonatele, atât la cerere cât şi la răspuns, sunt exprimate în metri sau radiani după cum coordonatele sunt rectangulare sau unghiulare;
- ordinea coordonatelor, atât la cerere cât şi la răspuns, este NE(H) pentru coordonate rectangulare şi BL(h) pentru coordonate unghiulare.
Exemple pentru metoda Get:
Exemplul 1:
- cerere: http://earth.unibuc.ro:8080/transdatonline/cooOpService?cooOp=Stereo70ToETRS89&coos=500000;500000;100
- răspuns: {"coos":[0.8028465450500996,0.43630521911977493,139.7825537763764]}
Exemplul 2 (punct în afara gridului):
- cerere: http://earth.unibuc.ro:8080/transdatonline/cooOpService?cooOp=Stereo70ToETRS89&coos=5;1;1
- răspuns: {"coos":[5,1,1],"warning":"Out of grid"}
Exemplul 3 (coordonate invalide):
- cerere: http://earth.unibuc.ro:8080/transdatonline/cooOpService?cooOp=Stereo70ToETRS89&coos=a;b;c
- răspuns: {"coos":[],"warning":"Invalid coordinate data"}
Exemplu pentru metoda Post:
- cerere: cooOp = ETRS89ToStereo70
coosArray =
[{"coos":[0.8028465450500996,0.43630521911977493,89.43911984920247]},
{"coos":[0.9028465450500996,0.53630521911977493,90.43911984920247]}]
- răspuns: [{"coos":[500000.0001279788,499999.9999533656,49.65656607282608]},
{"coos":[51.72929657933866,30.728025586401927,90.43911984920247],"warning":"Out of grid"}]