Aller au contenu

Exercices Tremblements de Terre

Exercice - Tremblements de terre#

Nous souhaitons réaliser une carte des tremblements de terre de plus de 4.5 sur l’échelle de Richter, sur le mois précédent (à la fois avec Leaflet et OpenLayers)

  • (Dupliquez chaque exemple initial pour afficher une carte basique)
  • Choisissez un fond de carte sombre, sans labels, par exemple celui de Carto
    • pour OpenLayers, attention à subdomains, qui doit être {a-d} directement dans l’URL
// Leaflet
L.tileLayer('https://{s}.basemaps.cartocdn.com/dark_nolabels/{z}/{x}/{y}{r}.png', {
    attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors &copy; <a href="https://carto.com/attributions">CARTO</a>',
    subdomains: 'abcd',
    maxZoom: 20
});

// OpenLayers
new ol.layer.Tile({
    source: new ol.source.XYZ({
        url: 'https://{a-d}.basemaps.cartocdn.com/dark_nolabels/{z}/{x}/{y}{r}.png',
        attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors &copy; <a href="https://carto.com/attributions">CARTO</a>',
        maxZoom: 20,
    }),
});
  • La carte doit être centrée sur 0,0 et affichée au niveau de zoom 3

  • Ensuite, faites un appel au service des tremblements de terre (https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_month.geojson)

  • Modifiez le style des points. Pour cela :
    • créez un rond pour chaque tremblement de terre, où la taille et la couleur doivent dépendre de leur magnitude
      • pour la taille, ça doit être la magnitude puissance 1.4
      • pour les couleurs : jaune pour les tremblements inférieurs à 5, orange pour ceux entre 5 et 6, rouge pour ceux supérieurs à 6
      • l’opacité doit être à 1
    • récupérez la valeur de la magnitude dans les données reçues
    • pour Leaflet, utilisez L.circleMarker (si vous créez un L.geoJSON, alors précisez cela dans l’option pointToLayer)
    • pour OpenLayers, c’est ol.style.Style, avec une clé image et la classe ol.style.Circle