GHTopo et GHCaveDraw

GHTopo et GHCaveDraw

GHTopo

But du projet:

Un enjeu de taille: Proposer aux spéléologues une solution libre Windows et Linux pour le traitement des données TOPOROBOT. A l'heure actuelle, l'excellent outil TOPOROBOT n'existe que sur Macintosh jusqu'à Mac OS 9 et son développement semble en sommeil d'après le site officiel (les liens de téléchargement ne fonctionnent plus).

Il est encore possible de se procurer LimeLight_X sur  http://www.ogh.ch/news/toporobot-limelight-x-download ou de le télécharger directement sur ce blog.

Le projet GHTopo a fêté ses 10 ans en 2013.

On peut lire les Recommandations pour l’utilisateur de TOPOROBOT (d'après original de M. Heller), qui s'appliquent aussi à GHTopo.

Conseils pour les topographes occasionnels:

Bien que GHTopo puisse être utilisé pour toute cavité, il donne sa puissance dans l'étude des grands réseaux, pour lesquels il a été conçu.

L'auteur de GHTopo conseille aux topographes occasionnels et aux spéléologues qui présentent les examens spéléologiques (BE et diplômes fédéraux) d'utiliser Visual Topo, plus simple et plus permissif quant à la numérotation des stations (format libre)

 

Fonctionnalités principales

  • Support complet du format Tab de TOPOROBOT
  • Support des visées en antenne
  • Système de filtres très puissant (MétaFiltre)
  • Sections supplémentaires: Réseaux et Secteurs
  • Visualisateurs 2D et 3D
  • Export vers Visual Topo, Abris et Therion
  • Génération de fichiers KML, CartoExploreur et OpenStreetMap. Silhouettes avec un seul polygone par série
  • Statistiques détaillées
  • Génération de fichiers SVG
  • Génération d'étiquettes de terrain avec ou sans code QR
  • Calculette et convertisseur de coordonnées intégré
  • Génération des polygonales pour le logiciel de dessin topo GHCaveDraw
  • Conversion de coordonnées selon la notation EPSG
  • Calcul des déclinaisons magnétiques (modèle WMM)
  • Dans le calcul topo, l'étape de recensement des branches, auparavant assez longue, est devenue instantanée.
  • Export et import vers le format TOPOROBOT Text
  • Correction d'un bug dans le recensement des branches (filtre de suppression des branches de longueur nulle)
  • Support partiel du DistoX: récupération de données topo uniquement
  • Calcul des paramètres de calibration du DistoX
  • Ajout du générateur de QRCodes dans l'outil Calculette
  • Support amélioré des visées rayonnantes
  • Lecture des fichiers Text de PocketTopo
  • Editeur de coupes développées
  • Fonctionnement OK sur Raspberry Pi, moyennant quelques restrictions.

Téléchargement

Distribution de GHTopo avec quelques exemples

 

Le binaire courant, qui remplace GHTopo.exe sans nécessiter une réinstallation complète (il est bien sûr conseillé de sauvegarder l'ancienne version celui-ci). Déposer ce fichier dans le dossier de GHTopo et le dézipper.

 

Les  sources Lazarus de GHTopo - Les  sources du convertisseur de coordonnées (à mettre dans un sous-dossier des sources de GHTopo) - Parcourir le dossier

 

Un éventail de données GHTopo

Composants Lazarus:

Installation: Déplier le fichier zip dans un dossier de votre choix. C'est tout !

 

Fichier d’aide au format XML (à mettre dans le dossier de GHTopo)

Galerie

 

Mises à jour:

 

28/12/2016

  • Fixation de nombreux bugs
  • Editeur de coupes développées
  • Export des coupes développées vers GHCaveDraw. Exemple.
  • Améliorations dans les vues en plan
  • Ajout de séries depuis la vue en plan (utile pour la topographie des carrières souterraines)
  • Importantes corrections et ajouts dans l'éditeur de séries: copier-coller amélioré, la fonte du tableur passe en Arial 10 Normal
  • Ajout d'annotations sur le plan


  • En bêta: Interpréteur de listes de visées (au format Longueur, Azimut, Pente; données issues du DistoX2), générant automatiquement les visées d'une série
  • Améliorations notables dans la boîte à outils intégrée (cet outil est aussi disponible comme logiciel indépendant): récupération de fichiers à colonnes séparées par des espaces, intégration du copier-coller, ...
  • Version de  GHTopo destinée au Raspberry Pi 3 (interface adaptée aux écrans 800x480), une alternative plus simple à GHTopo standard. Captures d’écran.

10/10/2016

  • Nouvelle refonte de l'interface: Regroupement des trois fenêtres principales dans une seule. La vue en plan est située dans un onglet.
  • Compilation sous Linux OK
  • Suppression de fonctionnalités peu utilisées et boguées
  • Ajout d'un outil de recherche dans les listes (Recherche rapide)
  • Visualisateurs 2D et coupe développée: Fixation d'un bug qui laissait affiché des rectangles ou lignes parasites lors du tracé des rectangles ou lignes de sélection
  • L'utilitaire de calcul GHConvertisseur (comportant une calculette, un convertisseur de coordonnées, un calculateur de déclinaisons magnétiques, un générateur de QRCodes et un importateur de tableaux) est intégré (accessible par le bouton Calculatrice de la barre d'outils principale). 
  • Coupe développée: Outil opérationnel mais réflexion en cours sur l'utilisabilité (procédure de construction, méthodes de sauvegarde)

07/05/2016

 

  • La méthode de zoom et de déplacement est unifiée (AutoCAD like). Elle reprend celle de GHCaveDraw: 1. Sélection de l'outil; 2: Pointage du premier point (click); 3: Pointage du second point (click) puis exécution
  • Vue 3D GDI: Support du drag n drop pour sélectionner le point de vue 3D

09/05/2016:

  • Les coupes développées peuvent maintenant partir de n'importe quelle série
  • Corrections dans le panneau Statistiques
  • Suppression de code mort et de certains composants d'interface inutilisés ou non prêts
  • Suppression de fonctionnalités boguées ou très peu utilisées

20/05/2016:

  • Les coupes développées sont basées sur les matrices d’incidence, ce qui permet entre autres de réutiliser le code de calcul de GHTopo et de traiter les séries relevées en 'partant du fond'
  • Sauvegarde des coupes développées (ici: le début du Réseau d'Arrestelia (PSM))

22/07/2016:

  • Correction de bugs, notamment dans l'éditeur de coupes développées
  • Bulles d'aide dans le tableau de saisie des points topo
  • Localisation de points topo sur le plan


08/08/2016:

  • Editeur de séries pleine page, avec navigateur latéral. Cet éditeur se présente comme un grand tableau qui n'est pas sans rappeler celui de VisualTopo.

 

Un contrôle d'erreurs de saisie et une fonction de recherche parcourt la table et affiche toutes les occurrences (erreurs ou résultats de recherche) dans le panneau inférieur. Un click sur une ligne de ce panneau amène directement sur la ligne du tableau concernée.

 

 

 26/08/2016:

 

Aucun ajout de fonctionnalités mais:

  • Correction de bugs
  • Compilé OK et testé OK sur plateforme Raspberry Pi (la vue 3D OpenGL, le support du DistoX et l'éditeur de coupes développées sont désactivés)
  • Compilé OK sur MacBouse OS X Snow Leopard, mais s'exécute très mal sur cette plateforme (la VCL pour MacOSX, basée sur Carbon, est extrêmement boguée et inutilisable en pratique)
Pour compiler sous Linux et particulièrement Raspberry Pi, désactiver toutes les optimisations de code par FreePascal.

 

 

 

 

 

 



 


22/05/2015
0 Poster un commentaire

Codes sources de GHTopo, GHTyro, GHCaveDraw

Composants Lazarus

Ces composants sont nécessaires pour la compilation. Ce sont des paquets Lazarus à installer

 

RXLib: Contrôles d'édition

TLazSerial: Composant de liaison série (utilisé par le module DistoX2)

TBGRABitmap: Composants graphiques dont le TBGRABitmap, supportant la transparence

Lazbarcodes: Générateur de QRCodes

PowerPDF: Génération de PDF

Sources du convertisseur de coordonnées, à déployer dans un sous-dossier des sources de GHTopo et GHCaveDraw - Parcourir le dossier

 

 

Codes sources

 

Télécharger GHTopo_src - Parcourir le dossier

Télécharger GHCaveDraw_src - Parcourir le dossier

Télécharger GHTyro_src - Parcourir le dossier

 


24/07/2016
0 Poster un commentaire

Réseau Sakany

Sakany: Une grotte laboratoire pour topographes

 

Grotte-laboratoire pour topographes, cette cavité a été choisie pour

  • Sa facilité d'accès
  • Son faible engagement
  • Sa technicité
  • Sa facilité
  • Sa complexité
  • Son caractère de Cavité de classe III, adaptée au handicap neurologique du topographe

Le logiciel GHTopo a en très grande partie développé autour de cette cavité.

Les séances de topographie se sont déroulées entre 2001 et 2008, en deux campagnes.

 

Le labyrinthe de Sakany

Article conjoint JP CASSOU - JY BIGOT

 

Spéléométrie du complexe

 

Plusieurs réseaux composant la cavité, la spéléométrie est détaillée dans le tableau suivant:

 

Réseau Développement
Réseau principal de Sakany 5532 m
Petite Grotte des Echelles Jonctionnée avec le réseau principal
Grotte de la Conduite dite 'Sakanette' 456 m
Gouffre près des entrées Accident Supérieur 87 m
Petite grotte sous le Grand Porche 14 m
Fenêtre en falaise au-dessus des Amoureux 10 m
Réseau de Sakany VII (entrée perchée à 5 m près entrée Faille) 460 m
Galerie près de l'entrée Faille 12 m
Réseau indépendant sous la galerie d'entrée des Amoureux 74 m
TOTAL 6800 m environ
Dénivelé 138 m
Indice de cavernement linéaire (indice de Choppy) 36,10.



 

Un plan provisoire du réseau (GHCaveDraw)

sakany001.jpg

 

Le synoptique d'équipement du réseau (ce type de document a été inventé par Dominique CASSOU)

 

synoptique_equipement.jpg

 

La topo en langage GHCaveDraw

Reseau_sakany.zip

 

Les chiffres GHTopo (TOPOROBOT étendu)

Reseau_Sakany_ghtopo.zip

 

Quelques secteurs:

 

Sakany_collecteur.pdf: Ce réseau 'ramasse' tous les écoulements provenant du reste du complexe, ainsi que les spéléologues qui font la traversée

 

Sakany_faille_jumeaux.pdf: Une très intéressante traversée qui traverse le complexe de part en part

 

Sakany_grille.pdf: La seule partie du réseau qui se parcourt sans corde

 

Sakany_collecteur.pdf: LA traversée du réseau, pour ceux qui ne veulent pas monter vers les entrées supérieures

 

Coupe_Sakany_faille_grille.pdf: Une des 960 traversées possibles ...


 


07/01/2016
0 Poster un commentaire

Java GHTopo

Portage de GHTopo en langage Java

Après le portage du moteur de calcul en Python, une version en Java a été démarrée.

L'objectif est de répondre à la demande de nombreux spéléologues.

Il était prévu de développer une version Android de GHTopo, en liaison avec les appareils de topographie électronique comme le DistoX2, mais devant le véritable calvaire qu'est la programmation sous Android, très mal pensé, ce volet du projet est définitivement annulé. Le moteur de la version Java de GHTopo est toutefois réutilisable.

 

Le projet est actuellement suspendu: le langage Lazarus est de plus en plus stable et supporté sur davantage de plateformes. La politique du concepteur est de développer des applications simples, portables et légères; de plus,  il n'aime pas le langage Java.

 

Les sources de GHTopo sont en l'état sur Github. Toutefois, les améliorations du moteur de GHTopo sont reportées sur les versions Java et Python.

Performances

Le calcul d'un réseau est extrêmement rapide du fait de l'optimisation des ArrayList(), utilisées intensivement.

En ce qui concerne le seul calcul matriciel, la version native de GHTopo présente un léger avantage.

Fonctionnalités actuelles

  • Conteneur mémoire TToporobotStructure: Validé. Sauvegarde en XML OK
  • Chargeur de fichiers XTB: Validé
  • Fonctions utilitaires de calcul: Validées
  • Méthode des Noeuds: Version isotrope implémentée et validée
  • Constructeur du graphe: Validé (méthode de la matrice d'incidence)
  • Solveur matriciel: Validé (factorisation de Cholesky)
  • Calcul des centerlines (cheminements): Validé
  • Calcul des contours: Validé
  • MétaFiltre: Validé
  • Conteneur TBDDEntites: Opérationnel
  • Convertisseur de coordonnées universel: OK (Java Geotools)
  • Calcul de déclinaisons magnétiques (modèles IGRF et WMM): OK
  • Export vers OpenStreetMap: OK
  • Export vers GHCaveDraw: OK
  • Visualisation en plan
  • Vue 3D (GDI)
  • Frontal: en cours de développement.

Téléchargement

 

JavaGHTopo

 

Le gestionnaire de versions utilisé est Maven et l'EDI employé est Netbeans.

 

Version Android (non fonctionnel; squelette de l'appli, coquille vide):

 

AndroidGHTopo.zip

 

Nota: En raison des énormes difficultés d'apprentissage du développement Android, le portage sur cette plate-forme est définitivement annulé.

 


10/11/2014
0 Poster un commentaire

PyGHTopo: Le moteur de calcul de GHTopo en Python

http://static.blog4ever.com/2014/04/772151/python_ghtopo.png

 

Objectif de ce travail

Ce petit projet a pour objectif principal de créer une version légère de GHTopo sur tablettes de type Android, sur lequel existe un interpréteur du langage Python.
En effet, le développement sur Android est un véritable cauchemar qui a déjà fait abandonner la programmation à plus d'un informaticien chevronné.

Le langage Python est très léger et très facile à apprendre. Langage de script, le déploiement des applications est un jeu d'enfant (une simple copie de fichiers).

 

D'autre part, QGis va être de plus en plus utilisé et ce SIG a pour langage de développement le Python.

 

En outre, l'ordinateur monocarte Raspberry Pi 3 utilise Python

Avancement actuel

Projet nouveau, seul le moteur du logiciel (gestion de la base et calcul topo) est implémenté, avec une fenêtre de visualisation rapide de la polygonale:

 

pyghtopo_plan.png

 

Une petite vidéo d'un calcul sur le Réseau de Saint Marcel, avec GHTopo et PyGHTopo: Vidéo GHTopo et PyGHTopo

 

Nouveautés

Support des visées rayonnantes.

 

Adapté au Python 3.3 et 3.5

Téléchargement

Version du 20/06/2016: PyGHTopo - Parcourir le dossier

 

En cas d'erreur avec les fichiers texte, changer le paramètre de page dans PyGHTopoGUI.py, fonction OuvrirUneTopo(),  aux alentours de la ligne 110:

 

        self.MyDocTopo.ChargerFichierTab(FichierXTB, 'utf-8') # Windaube: cp1252, sinon utf-8

en

 

        self.MyDocTopo.ChargerFichierTab(FichierXTB, 'cp1252') # Windaube: cp1252, sinon utf-8

--


12/05/2014
0 Poster un commentaire