Bienvenue sur PostGIS.fr

Bienvenue sur PostGIS.fr , le site de la communauté des utilisateurs francophones de PostGIS.

PostGIS ajoute le support d'objets géographique à la base de données PostgreSQL. En effet, PostGIS "spatialise" le serverur PostgreSQL, ce qui permet de l'utiliser comme une base de données SIG.

Maintenu à jour, en fonction de nos disponibilités et des diverses sorties des outils que nous testons, nous vous proposons l'ensemble de nos travaux publiés en langue française.

source: trunk/workshop-foss4g/projection_exercises.rst @ 49

Revision 47, 4.0 KB checked in by nbozon, 13 years ago (diff)

Some more typos corrected -

RevLine 
[1]1.. _projection_exercises:
2
[47]3Partie 16 : Exercices sur les projections
4=========================================
[1]5
[47]6Voici un rappel de certaines fonctions que nous avons vu. Elles seront utiles pour les exercices !
[28]7     
[47]8* :command:`sum(expression)` agrégation qui retourne la somme d'un ensemble de valeurs
[28]9* :command:`ST_Length(linestring)` retourne la longueur d'une ligne
10* :command:`ST_SRID(geometry, srid)` retourne le SRID d'une géométrie
[47]11* :command:`ST_Transform(geometry, srid)` reprojette des géométries dans un autre systÚme de références spatiales
[28]12* :command:`ST_GeomFromText(text)` retourne un objet ``geometry``
13* :command:`ST_AsText(geometry)` retourne le WKT (``text``)
14* :command:`ST_AsGML(geometry)` retourne le GML (``text``)
[1]15
[28]16Rappelez-vous les resssources en ligne :
[1]17
18* http://spatialreference.org
19* http://prj2epsg.org
20
[47]21Et les tables disponibles :
[1]22
23 * ``nyc_census_blocks`` 
24 
25   * name, popn_total, boroname, the_geom
26 
27 * ``nyc_streets``
28 
29   * name, type, the_geom
30   
31 * ``nyc_subway_stations``
32 
33   * name, the_geom
34 
35 * ``nyc_neighborhoods``
36 
37   * name, boroname, the_geom
38
[28]39Exercices
[1]40---------
41
[28]42 * **"Quelle est la longueur des rue de New York, mesurée en UTM 18 ?"**
[1]43 
44   .. code-block:: sql
45
46     SELECT Sum(ST_Length(the_geom))
47       FROM nyc_streets;
48
49   :: 
50   
51     10418904.7172
52     
[28]53 * **"Quelle est la définition du SRID 2831 ?"**   
[1]54   
55   .. code-block:: sql
56
57     SELECT srtext FROM spatial_ref_sys
58     WHERE SRID = 2831;
59
[28]60Ou, via `prj2epsg <http://prj2epsg.org/epsg/2831>`_
[1]61
62 ::
63
64  PROJCS["NAD83(HARN) / New York Long Island",
65  GEOGCS["NAD83(HARN)",
66    DATUM["NAD83 (High Accuracy Regional Network)",
67      SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]],
68      TOWGS84[-0.991, 1.9072, 0.5129, 0.0257899075194932, -0.009650098960270402, -0.011659943232342112, 0.0],
69      AUTHORITY["EPSG","6152"]],
70    PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]],
71    UNIT["degree", 0.017453292519943295],
72    AXIS["Geodetic longitude", EAST],
73    AXIS["Geodetic latitude", NORTH],
74    AUTHORITY["EPSG","4152"]],
75  PROJECTION["Lambert Conic Conformal (2SP)", AUTHORITY["EPSG","9802"]],
76  PARAMETER["central_meridian", -74.0],
77  PARAMETER["latitude_of_origin", 40.166666666666664],
78  PARAMETER["standard_parallel_1", 41.03333333333333],
79  PARAMETER["false_easting", 300000.0],
80  PARAMETER["false_northing", 0.0],
81  PARAMETER["scale_factor", 1.0],
82  PARAMETER["standard_parallel_2", 40.666666666666664],
83  UNIT["m", 1.0],
84  AXIS["Easting", EAST],
85  AXIS["Northing", NORTH],
86  AUTHORITY["EPSG","2831"]]
87 
88
[28]89 * **"Quelle est la longueur des rue de New York, mesuré en utilisant le SRID 2831 ?"**
[1]90 
91   .. code-block:: sql
92
93     SELECT Sum(ST_Length(ST_Transform(the_geom,2831)))
94       FROM nyc_streets;
95
96   :: 
97   
98     10421993.706374
99     
100   .. note::
101   
[47]102     La différence entre les mesure en UTM 18 et en Stateplane Long Island est de (10421993 - 10418904)/10418904, soit 0.02%. Calculé sur la sphéroïde en utilissant en :ref:`geography`, le total des longueurs des route est 10421999, ce qui est proche de la valeur dans l'autre systÚme de projection (Stateplane Long Island). Ce dernier est précisément calibré pour une petite zone géographique (la ville de New York) alors que le systÚme UTM 18 doit fournir un résultat raisonable pour une zone régionale beaucoup plus large.
[1]103     
[28]104 * **"Quelle est la représentation KML du point de la station de métris 'Broad St' ?"**
[1]105 
106   .. code-block:: sql
107   
108     SELECT ST_AsKML(the_geom)
109     FROM nyc_subway_stations
110     WHERE name = 'Broad St';
111     
112   :: 
113   
114     <Point><coordinates>-74.010671468873468,40.707104815584088</coordinates></Point>
115     
[47]116Hé ! les coordonnées sont géographiques bien que nous n'ayons pas fait appel à la fonction  :command:`ST_Transform`, mais pourquoi ? Parce que le standard KML spécifie que toutes les coordonnées *doivent* Ãªtre géographiques (en fait, dans le systÚme EPSG:4326), donc la fonction :command:`ST_AsKML` réalise la transformation automatiquement.
Note: See TracBrowser for help on using the repository browser.