Aller au contenu principal

Travaux pratiques

1. Logiciel de cartographie​

2 POI (Point of Interest)​

  • Ajouter la table des points carte.point.
  • Passez en mode édition (crayon jaune)
  • Ajouter une entité point depuis QGIS
    • menhir de Kreach ar Bolloch (A) (id = 70)
    • Le Roc'h (B) (id = 71)
  • Enregistrer dans la base de données (disquette)
  • Vérifier dans pgAdmin la présence de ces deux enregistrements.
  • Sortir du mode d'édition.

Calculer la distance entre ces 2 points​

Utiliser l'outil règle

Changer le système de coordonnées EPSG:2154

A l'aide des coordonnées dans la projection Lambert 93 calculer la distance.

d=(x1−x2)2+(y1−y2)2d = \sqrt{(x_1 - x_2)^2 + (y_1 - y_2)^2}

create table point (
id integer primary key generated by default as identity,
nom text not null,
altitude double precision,
geom geometry(point, 4326) not null
);

Surface​

Ajouter la table carte.zone

create table zone (
id integer primary key generated by default as identity,
nom text,
categorie text,
geom geometry(polygon, 4326) -- on choisit srid 4326 (wgs84)
);
  • Ajouter une couche postgreSQL sur la table zone
  • Changer le style de remplissage pour avoir une semi transparence (opacité)
  • Entrer en édition sur la couche avec l'icône crayon

Terrain de Sport​

  • Cliquer sur le bouton ajouter une entité (Ctrl + Maj + point)
  • Dessiner le terrain de sport
  • Enregistrer
  • Avec pgAdmin vérifier l'existence de l'entité et modifier son nom et sa catégorie
  • Calculer l'aire du terrain et son périmètre
  • Changer la projection pour avoir le résultat en mètres

Le marais Poullou​

  • Dessiner le marais Poullou Attention celui ci est en deux partie
  • Changer le type de la colonne en multipolygon en mettant à jour le type de la colonne
  • Fusionner les 2 lignes du marais en un seul multiploygone

La Pinède​

  • Dessiner la pinède ouest en faisant 3 parties (utiliser le magnétisme)
  • Vérifier que les 3 parties sont adjacentes
  • Fusionner les 3 parties (ST_UNION)

Carte​

  • Fusionner les 3 régions pour faire une entité ile
  • Faire l'intersection des pinèdes avec l'ile pour découper proprement ces zones

Route​

  • Ajouter une nouvelle table route
  • Tracer une route rue de Saint Anne
  • Calculer la longueur de la route
  • Calculer la distance entre les 2 extrémités
  • Ajouter une 2e route qui croise la rue Saint Anne (Déchetterie à Auberge de jeunesse)
  • Extraire l'intersection
SELECT * INTO carte.vertex
FROM pgr_extractVertices('SELECT id, geom FROM carte.route ORDER BY id');

Points​

  • Quels sont les points dans la région ouest
  • Quels sont les points dans les pinèdes

pgRouting​

  • Importer les routes et le coût des routes
  • utiliser pgRouting pour afficher l'itinéraire entre le casino et le fort

Raster​

Créer un fichier texte : elevation.asc

NCOLS 8
NROWS 4
XLLCORNER 182900.0000
YLLCORNER 6871300.0000
CELLSIZE 500
NODATA_VALUE -1
-1 5 15 25 15 10 5 -1
10 10 20 50 40 30 20 10
5 15 25 45 40 35 25 15
-1 18 22 32 42 32 22 5

Ajouter une couche Raster.

raster2pgsql -s 2154 -I -C -M elevation.asc -F carte.altitude | psql -h tpinfo.neotechweb.net -d tpinfo -U tpinfo
SELECT
p.id,
p.geom,
ST_Value(r.rast, ST_Transform(p.geom, 2154)) AS altitude
FROM carte.point p
JOIN carte.altitude r
ON ST_Intersects(r.rast, ST_Transform(p.geom, 2154))
UPDATE carte.point p
SET altitude = ST_Value(r.rast, ST_Transform(p.geom, 2154))
FROM carte.altitude r
WHERE ST_Intersects(r.rast, ST_Transform(p.geom, 2154));

Utiliser un fichier avec une meilleure définition elevation