Ajouter des données d'ActivityInfo en tant que Calque QGIS

Cet article a été traduit de l'anglais par IA et peut contenir des erreurs. Vos commentaires nous aideront à l'améliorer.

L'application mobile d'ActivityInfo est un excellent outil pour collecter des informations géolocalisées, que ce soit pour des évaluations de besoins, des enquêtes sur les installations, des rapports de dommages, ou de nombreux autres types de données pertinentes.

Bien qu'ActivityInfo facilite la visualisation de ces données à l'aide de ses rapports cartographiques intégrés, il peut arriver un moment où vous aurez besoin de connecter ces données à une solution SIG complète, comme QGIS, un Système d'Information Géographique gratuit et open source.

Dans ce tutoriel, nous verrons comment vous pouvez ajouter un formulaire ActivityInfo en tant que calque dans QGIS. Pour ce faire, nous utiliserons l'API GeoJSON d'ActivityInfo.

Pour ce tutoriel, nous utiliserons le modèle de réponse IDP. Vous pouvez créer votre propre copie pour travailler avec.

Trouver le lien GeoJSON

Le moyen le plus simple d'obtenir le GeoJSON est d'utiliser l'interface utilisateur d'ActivityInfo. Aller au formulaire que vous souhaitez inclure en tant que calque dans QGIS. Le formulaire doit avoir un champ Point géographique, ou une référence à un autre formulaire qui en possède un.

Dans la capture d'écran ci-dessous, vous pouvez voir que le bouton « Carte » est visible dans la barre d'outils, ce qui signifie que ce formulaire a, ou est lié à, un emplacement géographique.

Dans le menu Exporter, sélectionnez « Exporter via l'API », puis sélectionnez « Interroger tous les champs en GeoJSON ».

Capture d'écran du menu d'exportation

Capture d'écran du menu d'exportation
Capture d'écran du menu d'exportation

Cela affichera une URL que vous pouvez copier dans le presse-papiers.

Sélectionner la géométrie

Le format GeoJSON ne prend en charge qu'un seul point par entité. Votre formulaire peut avoir plus d'un champ Point géographique, ou faire référence à plus d'un formulaire qui a un emplacement géographique. Par défaut, le menu d'exportation affichera l'URL du premier champ Point géographique. Vous pouvez modifier cela en passant à la vue carte du formulaire, puis en sélectionnant la source de la géographie :

Capture d'écran du menu déroulant de la géographie
Capture d'écran du menu déroulant de la géographie

Le lien GeoJSON dans le menu Exporter reflétera votre sélection.

Ajouter le calque à QGIS

Vous pouvez télécharger QGIS depuis leur site web. QGIS est disponible pour Windows, macOS et Linux.

Démarrez un nouveau projet dans QGIS. Ajoutons d'abord Open Street Map comme calque d'arrière-plan à notre carte. Vous pouvez trouver le calque Open Street Map dans le groupe « XYZ Tiles » du Navigateur. Double-cliquez dessus pour l'ajouter en tant que calque.

Capture d'écran de QGIS
Capture d'écran de QGIS

Ajoutons maintenant notre formulaire ActivityInfo. Dans le menu Calque, sélectionnez « Ajouter un calque », puis « Ajouter un calque vecteur ».

Dans la boîte de dialogue :

  • Sélectionnez « Protocole » comme « Type de source »
  • Sélectionnez « GeoJSON » comme « Type »
  • Collez le lien que vous avez copié depuis ActivityInfo dans la zone de texte URI.

Si votre formulaire n'est pas public, vous devez fournir des informations d'identification qui permettront à QGIS de se connecter à ActivityInfo. Ajoutez une clé API personnelle puis collez-la dans la zone de texte « Mot de passe » de l'onglet « Basique » de la section « Authentification ».

Capture d'écran de QGIS
Capture d'écran de QGIS

Note : cela stockera votre clé API en texte brut dans le fichier de projet QGIS, ce qui n'est pas recommandé. Pour en savoir plus sur la gestion sécurisée des informations d'identification, consultez le Manuel de QGIS.

Vous pouvez utiliser l'URL suivante d'un formulaire public pour tester la connexion, sans avoir besoin de fournir d'authentification :

https://www.activityinfo.org/resources/form/cmzqc8vl3b8kuls82g/query/points?x=Location.longitude&y=Location.latitude

Si vous avez suivi les instructions ci-dessus, vous devriez maintenant voir votre formulaire ActivityInfo en tant que calque dans QGIS ! Le flux GeoJSON contient tous les champs de votre formulaire, vous pouvez donc afficher les détails dans QGIS, ou styliser les calques en utilisant les attributs de votre formulaire.

Capture d'écran de QGIS avec le calque
Capture d'écran de QGIS avec le calque
Élément suivant
Tutoriel