samedi 15 mars 2025

App Inventor : Zone de texte, comment introduire du texte

 Dans App Inventor, comment introduire un texte dans un élément zone de texte

Pour introduire un texte dans un élément zone de texte dans App Inventor, vous pouvez suivre ces étapes :

  1. Dans la fenêtre "Designer", ajoutez un composant "Zone de texte" (TextBox) à votre interface en le faisant glisser depuis la palette vers le visualiseur[1].

  2. Sélectionnez la zone de texte dans la liste des composants ou directement dans le visualiseur[2].

  3. Dans le panneau des propriétés à droite, vous pouvez définir les caractéristiques de la zone de texte[2][1] :

    • Modifiez la propriété "Text" pour définir un texte par défaut qui apparaîtra dans la zone de texte[3].

    • Ajustez d'autres propriétés comme la taille de la police, la couleur de fond, ou la largeur selon vos besoins[1].

  4. Pour récupérer le texte saisi par l'utilisateur dans la zone de texte, utilisez le bloc "TextBox1.Text" dans la fenêtre "Blocks"[4].

  5. Vous pouvez ensuite utiliser ce texte dans votre logique d'application, par exemple pour l'afficher dans un label ou le traiter d'une autre manière[5][4].


avec un exemple

Bien sûr, je vais vous donner un exemple concret pour illustrer comment introduire et utiliser un texte dans une zone de texte dans App Inventor.

Exemple : Créer une application de salutation personnalisée

Dans cet exemple, nous allons créer une application simple qui demande le nom de l'utilisateur dans une zone de texte, puis affiche un message de salutation personnalisé lorsqu'un bouton est pressé.

Étape 1 : Configuration de l'interface utilisateur

Dans la vue "Designer" :
  1. Ajoutez une Zone de texte (TextBox)

    • Renommez-la en "txtNom"

    • Dans les propriétés, définissez Hint à "Entrez votre nom"

  2. Ajoutez un Bouton (Button)

    • Renommez-le en "btnSaluer"

    • Dans les propriétés, définissez Text à "Saluer"

  3. Ajoutez un Label

    • Renommez-le en "lblSalutation"

    • Laissez le texte vide pour l'instant

Étape 2 : Programmation des blocs

Dans la vue "Blocks" :

  1. Ajoutez un bloc "when btnSaluer.Click do"

  2. À l'intérieur de ce bloc, ajoutez :

    1. Un bloc "set lblSalutation.Text to"

    2. Connectez-y un bloc de texte (join)

    3. Dans le bloc join, mettez "Bonjour, " comme premier élément

    4. Comme deuxième élément du join, ajoutez un bloc "txtNom.Text"

Voici à quoi devraient ressembler vos blocs :

when btnSaluer.Click
set lblSalutation.Text to
join("Bonjour, ", txtNom.Text)


Fonctionnement de l'application

  1. L'utilisateur entre son nom dans la zone de texte "txtNom".

  2. L'utilisateur appuie sur le bouton "Saluer".

  3. Le texte du label "lblSalutation" est mis à jour avec un message personnalisé, par exemple "Bonjour, Alice" si l'utilisateur a entré "Alice".

Cet exemple simple montre comment :

  • Introduire du texte dans une zone de texte (via l'interface utilisateur)

  • Récupérer le texte de la zone de texte (avec txtNom.Text)

  • Utiliser ce texte pour créer un message personnalisé

Vous pouvez bien sûr élaborer davantage cette application en ajoutant des fonctionnalités supplémentaires ou en personnalisant l'interface utilisateur selon vos besoins.

App Inventor : fichiers de données, stockage et requête d'accès

 Dans App Inventor, où placer les fichiers de données et par quelle requête peut-on y accéder

Dans App Inventor, il existe plusieurs options pour placer et accéder aux fichiers de données :

Stockage interne de l'application

Les fichiers peuvent être stockés dans le répertoire privé de l'application :

  • Chemin : /data/user/0/<nom_du_package>/files/

  • Accès : Utilisez la méthode ReadFrom() du composant File sans préfixe[1][2]

Par exemple :

File1.ReadFrom("monfichier.txt")

Stockage externe (carte SD)

Les fichiers peuvent être placés sur la carte SD :

  • Chemin : /sdcard/ ou /storage/emulated/0/

  • Accès : Préfixez le nom du fichier avec / dans ReadFrom()[1][3]

Par exemple :

File1.ReadFrom("/monfichier.txt")

Assets de l'application

Les fichiers peuvent être inclus dans les assets du projet :

  • Placement : Téléchargez le fichier dans la section Media du projet

  • Accès : Préfixez le nom du fichier avec // dans ReadFrom()[3][2]

Par exemple :

File1.ReadFrom("//monfichier.txt")

Considérations importantes

  • Le composant File permet de lire et écrire des fichiers sur l'appareil[4][3].

  • Pour les applications packagées, les fichiers sont lus/écrits dans le stockage privé de l'application sur Android 2.2+[3].

  • Lors du développement avec le Companion, les fichiers sont lus/écrits dans /sdcard/AppInventor/data[3].

Il est recommandé d'utiliser le stockage interne de l'application pour la sécurité des données, et les assets pour les fichiers statiques inclus dans l'application.

vendredi 31 janvier 2025

Références App Inventor pour application GPS

Attention : la première réception du signal GPS et calcul de position demande une trentaine de secondes. Après, le changement de position est plus rapide, environ 5 secondes


Attention : la sauvegarde sur fichier :

avec Companion : mettre le nom du fichier avec un slash devant /monfichier.gpx et il est sauvegardé dans :
Android/data/edu.mit.appinventor.aicompanion3/files/monfichier.gpx
après compilation et exécution du fichier compilé ; le fichier monfichier.gpx est sauvegardé dans :
Android/data/appinventor.ai_monCompte.monProjet/files/monfichier.gpx

Go to MIT App Inventor and sign in with your Google account.

Start a new project and give it a name, e.g., "GPX_Recorder".

Design the User Interface:


Add a Button component for starting and stopping the recording.

Add a Label component to display the status.

Add a TinyDB component for storing the GPX data.

Add a LocationSensor component to get the GPS coordinates.

Create the blocks to handle the logic:


Here's the layout and the logic for the app:


Designer View

Drag and drop the following components:

Button

Text: "Start Recording"

Name: StartButton

Button

Text: "Stop Recording"

Name: StopButton

Button

Text: "Save GPX File"

Name: SaveButton

Label

Text: "Status: Not recording"

Name: StatusLabel

LocationSensor

Name: LocationSensor1

TinyDB

Name: TinyDB1


Blocks View

Initialize the components and variables:


blocks

// Initialize global variables

initialize global recording to false

initialize global gpxData to "<gpx version='1.1' creator='AppInventor'><trk><name>Track</name><trkseg>"


// Start Button Click Event

when StartButton.Click

  set global recording to true

  set StatusLabel.Text to "Status: Recording"

  call LocationSensor1.Start


// Stop Button Click Event

when StopButton.Click

  set global recording to false

  set StatusLabel.Text to "Status: Not recording"

  call LocationSensor1.Stop


// Save Button Click Event

when SaveButton.Click

  call TinyDB1.StoreValue

    tag: "gpxData"

    value: join (global gpxData) "</trkseg></trk></gpx>"

  set StatusLabel.Text to "Status: GPX File Saved"


// LocationSensor Location Changed Event

when LocationSensor1.LocationChanged

  if global recording

    set global gpxData to join (global gpxData) "<trkpt lat='" (LocationSensor1.Latitude) "' lon='" (LocationSensor1.Longitude) "'><ele>" (LocationSensor1.Altitude) "</ele><time>" (Clock.Now) "</time></trkpt>"


jeudi 16 janvier 2025

Générer un fond MBtiles pour OruxMaps avec QGIS

Avoir un fond cartographique, topo ou photo, bien géoréférencé et organisé sous forme de tuiles d'échelle différente, est nécessaire pour se repérer avec son smartphone.

Encore faut-il que l'application de randonnée reconnaisse le format de fichiers de ces tuiles.
C'est le cas d'OruxMaps qui est capable de traiter des fichiers MBtiles.
QGIS va nous servir à extraire des tuiles MBtiles.

Le fichier MBTILES est un fichier raster qui peut inclure non seulement le fond de carte, mais aussi des tracés (GPX ou KML). Si on veut inclure un tracé KML, il suffit d'ajouter une couche vectorielle. On peut aussi ajouter un polygone.

 Avec QGIS, ouvrir une nouvelle couche.

Choisir sur le serveur WMS/WMTS, IGN par exemple ou autre, le secteur concerné par l'étude.
Dans la boîte à outils, choisir :

Outils Raster > Générer des tuiles XYZ (MB tiles).

Paramètres :

Emprise : dessiner sur le canevas de la carte
Zoom minimum : 12
Zoom maximum : 16 (plus ou moins selon le degré de précision)
DPI (Dots per Inch) : 96 ou 300
Qualité : 75
Taille de la Métatile : 4
Sortie : choisir un dossier, par exemple celui de téléchargement, et un nom de fichier (monsecteur par exemple).

Avec OruxMaps :

Déplacer le fichier .mbtiles dans le dossier Mapfiles d'OruxMaps
--> nouvelle carte hors-ligne
Choisir le nom de la carte téléchargée.

vendredi 27 décembre 2024

Exemple d'étude de platier


Cas d'étude du platier entre Dieppe et Puys


1) Récupération des données LIDAR


Aller sur le site de l'IGN à la page https://geoservices.ign.fr/lidarhd#telechargementclassifiees
Sélectionner sur la carte interactive les 5 dalles LIDAR concernées par le projet.
Télécharger la liste des liens.
Le fichier texte rassemble les 5 liens suivants :

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/IC/LHD_FXX_0562_6984_PTS_C_LAMB93_IGN69.copc.laz
https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/IC/LHD_FXX_0563_6984_PTS_C_LAMB93_IGN69.copc.laz
https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/IC/LHD_FXX_0563_6985_PTS_C_LAMB93_IGN69.copc.laz
https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/IC/LHD_FXX_0564_6985_PTS_C_LAMB93_IGN69.copc.laz
https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/IC/LHD_FXX_0564_6984_PTS_C_LAMB93_IGN69.copc.laz

Le suffixe .copc signifie "Cloud Optimized Point Cloud". Il s'agit d'une spécification récente pour les fichiers de nuages de points, conçue pour optimiser leur stockage et leur accès dans des environnements cloud. Un nuage de points est une représentation numérique d'un objet ou d'une scène en trois dimensions, constitué d'un ensemble de points dans l'espace, chacun ayant des coordonnées (X, Y, Z) et éventuellement d'autres attributs (couleur, intensité, etc.). Les fichiers .copc sont des fichiers LAZ (Lossless Compressed LAS) qui ont été spécifiquement organisés pour une utilisation efficace dans le cloud.

lien 1 : 76 Mo
lien 2 : 141 Mo
lien 3 : 1 Mo
lien 4 : 37 Mo
lien 5 : 178 Mo

2) Afficher dans QGIS le nuage de points classés


Importer un nuage de points dans QGIS
- Cliquer sur "Couche" puis "ajouter une couche"
- Cliquer sur "Ajouter une couche nuage de points.."
- Cliquer sur "Parcourir" et importer le nuage de points
- Cliquer sur "Ajouter"

Le nuage de points s'affiche en fausses couleurs.

3) Conversion du nuage en raster MNT


Dans la boîte à outils de traitement de QGIS
Avec le moteur de recherche de la boîte à outils, taper :
"Exporter vers un raster (using triangulation)"
- Sélectionner cette fonction
- Sélectionner le nuage de points
- Définir la résolution souhaitée (ici 50 cm ou 0,5)
- Tester l'opération
- Cliquer sur "Exécuter"
- Cliquer sur "Fermer"
La couche s'affiche en niveaux de gris.

- Renommer la couche générée si besoin

On peut afficher le catalogue des couches affichées : Vue > Panneaux > Couches (cocher)

4) Afficher les micro-falaises


Avec le moteur de recherche de la boîte à outils, taper "pente".
- Sélectionner la fonction
- Sélectionner la dalle à traiter
- Mettre la résolution à 1 ou 0,5 
- Cliquer sur "Exécuter"
- Cliquer sur "Fermer".

5) Repérer visuellement :
- les failles verticales qui apparaissent rectilignes
- les traces de dureté différentielle entre deux couches
qui apparaissent très contournées.




 

vendredi 22 novembre 2024

Géomorphologie du platier littoral à partir du Lidar avec QGIS

Nécessite le téléchargement et l'installation de QGIS
dont la dernière version est ici 


1) Récupérer les données LIDAR

Voir si les données LIDAR sont disponibles sur le site de l'IGN.
Consulter le plan d'assemblage des dalles.
Cliquer sur les dalles à étudier.
On récupère un fichier texte TXT contenant les liens de téléchargement  HTTPS vers les dalles.

Exemple de lien de téléchargement concernant l'estran entre Bois de Cise et Ault :

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0586_7000_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0586_7001_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0587_7001_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0587_7002_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0588_7001_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0588_7002_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0588_7003_PTS_C_LAMB93_IGN69.copc.laz

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0589_7003_PTS_C_LAMB93_IGN69.copc.laz

Ces fichiers sont suffixés .LAZ
Télécharger ces fichiers sur le disque dur, c'est plus commode.
Le poids de ces fichiers est lourd. Par exemple, le premier lien téléchargé pèse 179 Mo.
Grouper ces fichiers dans un dossier facilement identifiable.

2) Superposer les photographies aériennes et le plan IGN

Dans QGIS pour bien situer la zone d'étude, ajouter une couche Plan IGN v2 sur le serveur WMTS IGN
Ensuite on peut charger la donnée Ortho 20 cm (voir dans l'explorateur QGIS)

Dans QGIS, visualiser l'imagerie Ortho 20 cm de l'IGN pour pouvoir bien situer et caler des données LIDAR.
On peut visualiser le tableau d'assemblage des dalles sur une carte topo et connaître l'identifiant de la dalle.
Cette imagerie peut être téléchargée par département à 20 cm de résolution.

Par exemple, pour le département de la Somme où se trouve la zone étudiée précédemment, le lien de téléchargement est le suivant :

https://data.geopf.fr/telechargement/download/BDORTHO/BDORTHO_2-0_GRAPHE-MOSAIQUAGE__LAMB93_D080_2021-01-01/BDORTHO_2-0_GRAPHE-MOSAIQUAGE__LAMB93_D080_2021-01-01.7z
Le poids de ce fichier est de 86 Mo.
On dispose également de l'imagerie infra-rouge couleur (IRC) et de survols des années précédentes.

Mais on peut télécharger la dalle directement dans QGIS, sans en disposer sur son disque dur :

Couche > Ajouter une couche> Ajouter une couche WMS/WMTS >Explorateur>WMS/WMTS>Serveur IGN> Ortho 20cm > Ajouter la couche au projet

Si la couche n'apparaît pas :  Cliquer à droite sur le nom > Zoomer sur la couche (avec la molette).
Centrer la couche sur la zone d'étude

3) Visualiser les données LIDAR dans QGIS

Ajouter une nouvelle couche "Nuage de points" par fichier (LAZ)
Par Fichier (cocher)
Choisir le fichier LAZ sur l'ordinateur
sélectionner Tout (généralement, mais on peut exclure l'eau)
Bouton Ajouter.
La dalle apparaît en couleurs.

4) Conversion du nuage de points en Raster

Dans la boîte à outils :
Conversion de nuage de points > Exporter vers un raster en utilisant la triangulation.
Laisser 1 et 1000 comme paramètres
Exporter (peut être long, une minute environ, tant qu'il y a une bande bleue)

5) Extraire les courbes de niveau

Raster > Extraction > Courbes de niveau

6) Extraire les valeurs de pente

Utile pour visualiser les escarpements
Dans la boîte à outils :
Analyse de terrain raster > Pente
Les fortes pentes apparaissent en clair

Cas particulier 1 : Données fournies par le ROLNHDF
Il est nécessaire de formuler une demande à partir de cette page.
C'est la phase 2 (topo + photo) qui est interessante.
On peut visionner l'imagerie ortho avant d'effectuer une demande.

a) Sélectionner les dalles par polygone (mieux que par rectangle)
b) Exporter les infos sur ces dalles dans un fichier tableur CSV (millésime phase 2 - préférer le LAS au MNT car il fournit des données plus précises - choisir le RVB couleur plutôt que l'infra-rouge)

Cas particulier 2 : Azimuth de failles

Voir cette vidéo

Installer le plugin "Azimuth measurement"
Ce plugin apparaît dans la barre de menu médiane sous la forme d'une icône triangulaire.
Cliquer sur cette icône.
Option "azimuth measurement"
Une boîte de dialogue avec "Geographic distance en mètres" et "azimuth en degrés"

Cliquer sur 2 points extrêmes pour tacer un segment.
Les valeurs sont indiquées


dimanche 17 novembre 2024

Carte avec TwoNav

1) Avec le PC en USB sur le mobile 

Ouvrir le dossier Android/Data/com.compegs.TwoNav/files/TwoNavData.

TwoNavData n'est pas modifiable donc :

Dans Files, créer un fichier bidon "Two" par exemple.
Renommer le fichier TwoNavData
Supprimer le fichier TwoNavData renommé
Renommer "Two" en TwoNavData.
On peut alors écrire dans TwoNavData
- Y créer un dossier "maps"  pour y loger les cartes
- Y créer un dossier Data/Tracklog pour y loger les traces

2) Avec MOBAC

Créer un Atlas de type TwoNav

Attention n'utiliser qu'un seul niveau de zoom : 16 par exemple ( le plus fort).
C'est un fichier .RMAP
Ce fichier est transféré dans le dossier maps du mobile.

On crée un second atlas avec un autre niveau de zoom.

On crée une hypercarte.

3) Les fichiers .trk ne peuvent se convertir qu'avec LAND ou GPSbabel


mardi 5 novembre 2024

Trace enregistrée avec montre Xiaomi Watch

 Une fois la randonnée terminée, ne pas oublier d'arrêter le parcours sur la montre.

Ouvrir l'application MiFitness sur le smartphone.

Choisir "Entraînement" dans le menu.
Dans l'historique des entraînements, cliquer sur la randonnée effectuée (la dernière ou une choisie dans l'historique.

Le tracé s'affiche à l'écran, avec la distance parcourue et d'autres paramètres.

Dans le menu Trois Points, choisir exporter.
Puis Exporter en tant que fichier de données.
Puis choisir le format de fichier : gpx, kml ou tcx.

Cliquer sur Exporter. 

Choisir vers quel destination : Télécharger, WeChat ou Plus.

Par exemple, si on choisit Plus : Cx Explorateur de fichiers, cela permet de choisir son dossier de téléchargement qui peut-être Download ou OruxMaps > Tracklog.

Avec l'ordinateur relié, ou pourra ouvrir le tracé avec l'application adaptée.

lundi 4 novembre 2024

Orux Maps et les cartes IGN

 Voir la page de l'excellent site Randocharteuse

Pour les cartes en-ligne :

Vous pouvez mettre vos cartes "ONLINE" à jour en remplaçant ce fichier onlinemapsources.xml (Version du 13/09/2024) sur votre mobile.

Pour les cartes off-line :

  1. Générer un Atlas avec Mobac.
  2. Le dossier atlas apparaît avec sa date et heure de création.
  3. Renommer ce dossier (ex : Atlas_Chartreuse ) et le copier dans le portable dans le dossier :
    Ce_PC\"Mémoire téléphone mobile"\oruxmaps\mapfiles

Sites miroirs d'apk Android

 http://www.apkpure.com/


http://www.apkmirror.com


http://www.apkmody.com/


http://www.apkhere.com


https://openapk.net/


https://f-droid.org/fr/

vendredi 13 septembre 2024

IGN Services et données

Images Ortho aériennes

Visualisateur

Images ortho Satellite SPOT

Visualisateur

Plan IGN

Téléchargement par département

LIDAR HD
Nuages de points classés et modèles numériques

Article : Mobiliser simplement les données LIDAR

Visualisateur
1)Pour voir la dalle dans le navigateur, cocher l'oeil

2)Télécharger la liste des liens
Exemple d'un lien :

https://storage.sbg.cloud.ovh.net/v1/AUTH_63234f509d6048bca3c9fd7928720ca1/ppk-lidar/JB/LHD_FXX_0588_7002_PTS_C_LAMB93_IGN69.copc.laz

Sauvegarder le fichier
Dans QGIS ajouter une couche "nuage de points"
Attendre quelques secondes que la couche apparaisse en niveaux de gris
Faire un clic droit sur la couche et aller dans "Propriétés"
- Sélectionner "Pseudo-couleur à bande unique"
Symbologie>Type de Rendu > Ombrage
Symbologie>Type de Rendu > Courbes de niveaux

Raster > Analyse > Pente


Création d'un modèle numérique de terrain - vidéo You Tube

Création d'un modèle numérique de terrain

1) Importer un nuage de points dans QGIS
- Cliquer sur "Couche" puis "ajouter une couche"
- Cliquer sur "Ajouter une couche nuage de points.."
- Cliquer sur "Parcourir" et importer le nauge de points
- Cliquer sur "Ajouter"

2) Dans la boîte à outils de traitement,
- Tapez "conversion d'un nuage de points"
- Sélectionner "Export to raster using triangulation"
- Sélectionner le nuage de points
- Définir la résolution souhaitée (ici 50 cm)
- Filtrer le nuage de points en gardant uniquement la classe sol
- Tester l'opération
- Cliquer sur "Exécuter"
- Cliquer sur "Fermer"
- Renommer la couche générée si besoin

3) Afficher les altitudes du MNT
- Faire un clic droit sur la couche et aller dans "Propriétés"
- Sélectionner "Pseudo-couleur à bande unique"
- Choisir une palette de couleur
- Cliquer sur "Appliquer" puis OK

4) Appliquer l'ombrage sur le MNT
- Aller dans les propriétés de la couche
- Sélectionner "Ombrage"
- Cliquer sur "Appliquer" puis sur OK

5) Afficher les courbes de niveaux
- Aller dans les propriétés de la couche
- Sélectionner "Courbes de niveaux"
- Définir les intervalles des courbes de niveaux souhaités
- Appliquer une couleur sur les courbes de niveaux principales
- Cliquer sur "Appliquer" puis sur OK

6) Calculer la pente sur le MNT
- Cliquer sur "Raster"
- Cliquer sur "Analyse" et "Pente"
- Sélectionner le Modèle numérique de terrain
- Calculer la pente en pourcentage ou en degrés
- Exécuter

Création d'un modèle numérique de surface - vidéo YouTube