Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 743 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 743 Rev 1091
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();