WorldMercator
extends Ellipsoid
in package
implements
iCoordSys
définition de la projection de Mercator et du système de coordonnées WorldMercator défini sur l'ellipsoide IAG_GRS_1980.
Table of Contents
Interfaces
- iCoordSys
- interface de définition d'un système de coordonnées
Constants
- DEFAULT = 'IAG_GRS_1980'
- EPSILON = 9.999999999999999E-12
- tolerance de convergence du calcul de la latitude
- ErrorBadLat = 'WorldMercator::ErrorBadLat'
- ErrorNoConvergence = 'WorldMercator::ErrorNoConvergence'
- ErrorUndef = 'Ellipsoid::ErrorUndef'
- MaxLat = 85.08405904999999
- MinLat = -85.08405904999999
- PARAMS = ['IAG_GRS_1980' => \coordsys\IAG_GRS_1980::PARAMS, 'WGS-84' => [ 'title' => "Ellipsoide WGS-84 utilisé pour le GPS, quasiment identique à l'IAG_GRS-1980", 'epsg' => 'EPSG:4326', 'a' => 6378137.0, // Demi grand axe de l'ellipsoide - en anglais Equatorial radius - en mètres 'f' => 1 / 298.257223563, ], 'Clarke1866' => [ 'title' => "Ellipsoide Clarke 1866", 'epsg' => 'EPSG:7008', 'comment' => "Ellipsoide utilisé pour le système géodésique North American Datum 1927 (NAD 27) utilisé aux USA", 'a' => 6378206.4, // Demi grand axe de l'ellipsoide 'b' => 6356583.8, // Demi petit axe 'f' => 1 / 294.978698214, ]]
- constante définissant différents ellipsoides
Properties
- $current : string
- ellipsoide courant, par défaut IAG_GRS_1980
Methods
- a() : float
- available() : array<int, string>
- retourne la liste des ellipsoides proposés
- current() : string
- retourne l'ellipsoide courant
- e() : float
- e2() : float
- geo() : TPos
- convertit des coordonnées projetées [X, Y] en position géographique [longitude, latitude] en degrés décimaux
- proj() : TPos
- convertit une pos. (longitude, latitude) en degrés déc. en [X, Y]
- set() : void
- Définition d'un ellipsoide
- spatial() : array<int, float>
- couverture spatiale en degrés décimaux lon, lat
- param() : float|null
- retourne la valeur d'un paramètre stocké pour l'ellipsoide courant
Constants
DEFAULT
public
mixed
DEFAULT
= 'IAG_GRS_1980'
EPSILON
tolerance de convergence du calcul de la latitude
public
mixed
EPSILON
= 9.999999999999999E-12
ErrorBadLat
public
mixed
ErrorBadLat
= 'WorldMercator::ErrorBadLat'
ErrorNoConvergence
public
mixed
ErrorNoConvergence
= 'WorldMercator::ErrorNoConvergence'
ErrorUndef
public
mixed
ErrorUndef
= 'Ellipsoid::ErrorUndef'
MaxLat
public
mixed
MaxLat
= 85.08405904999999
MinLat
public
mixed
MinLat
= -85.08405904999999
PARAMS
constante définissant différents ellipsoides
public
mixed
PARAMS
= ['IAG_GRS_1980' => \coordsys\IAG_GRS_1980::PARAMS, 'WGS-84' => [
'title' => "Ellipsoide WGS-84 utilisé pour le GPS, quasiment identique à l'IAG_GRS-1980",
'epsg' => 'EPSG:4326',
'a' => 6378137.0,
// Demi grand axe de l'ellipsoide - en anglais Equatorial radius - en mètres
'f' => 1 / 298.257223563,
], 'Clarke1866' => [
'title' => "Ellipsoide Clarke 1866",
'epsg' => 'EPSG:7008',
'comment' => "Ellipsoide utilisé pour le système géodésique North American Datum 1927 (NAD 27) utilisé aux USA",
'a' => 6378206.4,
// Demi grand axe de l'ellipsoide
'b' => 6356583.8,
// Demi petit axe
'f' => 1 / 294.978698214,
]]
Properties
$current
ellipsoide courant, par défaut IAG_GRS_1980
public
static string
$current
= self::DEFAULT
Methods
a()
public
static a() : float
Return values
floatavailable()
retourne la liste des ellipsoides proposés
public
static available() : array<int, string>
Return values
array<int, string>current()
retourne l'ellipsoide courant
public
static current() : string
Return values
stringe()
public
static e() : float
Return values
floate2()
public
static e2() : float
Return values
floatgeo()
convertit des coordonnées projetées [X, Y] en position géographique [longitude, latitude] en degrés décimaux
public
static geo(array<string|int, mixed> $xy[, string|null $proj = null ]) : TPos
Parameters
- $xy : array<string|int, mixed>
-
coordonnées projetées [X, Y]
- $proj : string|null = null
-
utilisé s'il est nécessaire de préciser le système de coordonnées, par exemple en UTM la zone
Return values
TPos —position géographique (longitude, latitude) en degrés déc.
proj()
convertit une pos. (longitude, latitude) en degrés déc. en [X, Y]
public
static proj(array<string|int, mixed> $lonlat[, string|null $proj = null ]) : TPos
Parameters
- $lonlat : array<string|int, mixed>
-
position géographique (longitude, latitude) en degrés déc.
- $proj : string|null = null
-
utilisé s'il est nécessaire de préciser le système de coordonnées, par exemple en UTM la zone
Return values
TPos —coordonnées projetées [X, Y]
set()
Définition d'un ellipsoide
public
static set([string $ellipsoid = self::DEFAULT ]) : void
Parameters
- $ellipsoid : string = self::DEFAULT
spatial()
couverture spatiale en degrés décimaux lon, lat
public
static spatial() : array<int, float>
Return values
array<int, float>param()
retourne la valeur d'un paramètre stocké pour l'ellipsoide courant
private
static param(string $name) : float|null
Parameters
- $name : string