Line 1... |
Line 1... |
1 |
<?php
|
1 |
<?php
|
2 |
|
- |
|
- |
|
2 |
// declare(encoding='UTF-8');
|
3 |
/**
|
3 |
/**
|
- |
|
4 |
* @api {get} /nasa-srtm/altitude?lat=:lat&lon=:lon Donne l'altitude.
|
- |
|
5 |
* @apiExample Exemple d'usage :
|
- |
|
6 |
* curl -i "http://api.tela-botanica.org/service:eflore:0.1/nasa-srtm/altitude?lon=3.86589&lat=44.73702"
|
- |
|
7 |
* @apiName GetNasaSrtm
|
- |
|
8 |
* @apiGroup nasa-srtm
|
4 |
* Classe unique du web service nasa-srtm qui détermine l'altitude d'un point à partir de ses coordonnees
|
9 |
* @apiGroupDescription Le web service nasa-srtm/altitude détermine l'altitude d'un point à partir de ses coordonnees.
|
5 |
* Les coordonnees sont definies dans des fichiers au format HGT dans un dossier specifique
|
10 |
* Les coordonnees sont definies dans des fichiers au format HGT dans un dossier specifique
|
6 |
* (dont le chemin est defini dans le fichier de configuration propre au web service).
|
11 |
* (dont le chemin est defini dans le fichier de configuration propre au web service).
|
7 |
* Les ressources utilisees sont les donnees issues du programme SRTM-3 de la NASA qui couvre
|
12 |
* Les ressources utilisees sont les donnees issues du programme SRTM-3 de la NASA qui couvre
|
8 |
* l'ensemble terrestre du monde. La precision des points dont on renvoie l'altitude est de 90 metres.
|
13 |
* l'ensemble terrestre du monde. La precision des points dont on renvoie l'altitude est de 90 metres.
|
9 |
* Chaque fichier couvre un secteur de 1 degre sur 1 degre et contient un tableau de 1201 lignes
|
14 |
* Chaque fichier couvre un secteur de 1 degre sur 1 degre et contient un tableau de 1201 lignes
|
10 |
* (axe des latitudes) sur 1201 colonnes (axe des longitudes) contenant l'altitude en metres
|
15 |
* (axe des latitudes) sur 1201 colonnes (axe des longitudes) contenant l'altitude en metres
|
11 |
* correspondant a des point precis. L'ecart entre chaque entree des tableaux est constant, ce qui
|
16 |
* correspondant a des point precis. L'ecart entre chaque entree des tableaux est constant, ce qui
|
12 |
* permet de calculer la latitude et la longitude de chaque point. L'altitude du point le plus proche
|
17 |
* permet de calculer la latitude et la longitude de chaque point. L'altitude du point le plus proche
|
13 |
* de celui passe en parametres sera renvoyee au client.
|
18 |
* de celui passe en parametres sera renvoyee au client.
|
14 |
*
|
19 |
*
|
15 |
* Parametres du web service :
|
20 |
* @apiParam {Number} lat Latitude au format décimal (séparateur ".").
|
- |
|
21 |
* @apiParam {Number} lon Longitude au format décimal (séparateur ".").
|
- |
|
22 |
*
|
- |
|
23 |
* @apiSuccess {Number} altitude Altitude en mètre du point correspondant aux coordonées passées en paramètre.
|
16 |
* - latitude : latitude du point dont on recherche les coordonnees
|
24 |
* @apiSuccess {Number} latitude Latitude au format décimal (séparateur ".").
|
17 |
* - longitude : longitude du point dont on recherche les coordonnees
|
25 |
* @apiSuccess {Number} longitude Longitude au format décimal (séparateur ".").
|
18 |
*
|
26 |
*
|
- |
|
27 |
* @category eFlore
|
19 |
* @package framework-0.4
|
28 |
* @package Services
|
- |
|
29 |
* @subpackage Nasa-srtm
|
- |
|
30 |
* @version 0.1
|
- |
|
31 |
* @author Mathias CHOUET <mathias@tela-botanica.org>
|
- |
|
32 |
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
20 |
* @author Alexandre GALIBERT <alexandre.galibert@tela-botanica.org>
|
33 |
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
|
21 |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
|
34 |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
|
22 |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
|
35 |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
|
23 |
* @version $Id$
|
- |
|
24 |
* @copyright 2013 Tela Botanica (accueil@tela-botanica.org)
|
36 |
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
|
25 |
*
|
- |
|
26 |
*/
|
37 |
*/
|
27 |
|
- |
|
28 |
|
- |
|
29 |
class Altitude {
|
38 |
class Altitude {
|
Line 30... |
Line 39... |
30 |
|
39 |
|
31 |
private $parametres = array();
|
40 |
private $parametres = array();
|
32 |
private $ressources = array();
|
41 |
private $ressources = array();
|