"Sans imagination il ne pourrait y avoir création."
Albert Jacquard.

"L'imagination est plus importante que le savoir."
Albert Einstein.

jeudi 3 juin 2010

Un plug-in pour PgAdmin III : PostGISViewer



Un plug-in pour PgAdmin III : PostGISViewer 

Présentation

Le visualiseur a été développé en VB.Net 2008 avec MapWindow 6.0 téléchargeable à cette adresse :
mapwindow 6.0








MapWindow 6.0 (Orlando) est un projet SIG Open Source ainsi qu'une librairie d'outils géospatial pour le développement en .NET, écrit en C#. Map, Legend, Toolbox ainsi que les autres contrôles sont les composants qui peuvent être utilisés pour créer une application SIG a partir de la librairie MapWindow.dll, et dans mon cas ce visualiseur.


Installation

La version de PgAdmin III utilisée pour ce tutorial est la 1.10.3, lien ci-dessous pour la télécharger :
PgAdmin3-1.10.3

Le visualiseur pour PostGIS est téléchargeable ici :
 PostGISViewer.

et a décompresser dans le répertoire : C:\Program Files\pgAdmin III\1.10 qui correspond au répertoire d'installation de pgAdmin III.

Configurer PgAdmin III


PgAdmin III 1.10 donne la possibilité d'ajouter très facilement des applications externes dans le menu plugins.
Pour activer la disponibilité de ces applications:  

  • Ouvrir PgAdmin III, dans le menu Fichier sélectionner Préférences
 











 
  •  Dans l'onglet Général donner le chemin de l'application PgAdmin III (pgadmin3.exe)

  














  • Sortir de PgAdmin III,

  • Aller dans le répertoire C:\Program Files\pgAdmin III\1.10, faire une copie du fichier plugins.ini,
  • Ouvrir le fichier plugins.ini et copier les lignes suivantes a la fin du fichier :

    ;
    ; PgViewer (Windows)
    ;
    [Separator]
    Title=PostGisViewer
    Command="$$PGBINDIR\PostGisViewer\PGViewer.exe"  "host=$$HOSTNAME" "port=$$PORT" "username=$$USERNAME" "password=$$PASSWORD" "database=$$DATABASE" "schema=$$SCHEMA"  "table=$$TABLE"
    Description=PostGIS Viewer
    KeyFile=$$PGBINDIR\PostGisViewer\PGViewer.exe
    Platform=windows
    ServerType=postgresql
    Database=Yes
    ;AppliesTo=database
    SetPassword=Yes
    •  Les variables  utilisées, contiendront respectivement :
    • $$PGBINDIR       :  répertoire dans lequel se trouve pgadmin3.exe,
    • $$HOSTNAME    :  adresse du serveur,
    • $$PORT                :  port,   
    • $$USERNAME     :  utilisateur ,
    • $$PASSWORD     :  mot de passe,
    • $$DATABASE      :  base de données,
    • $$SCHEMA          :  schéma courant,
    • $$TABLE              :  table sélectionné.

  • Enregistrer le fichier,
  • Ouvrir PgAdmin III et dans le menu plugins vous devriez voir ceci :












Utilisation du visualiseur PostGIS

Passons maintenant à l'utilisation du plugin, pour cela ouvrir PgAdmin III, se connecter à un serveur et choisir une base de données.








A ce stade la, si nous lancions l'exécution du plugin PostGISViewer, les variables contiendraient :

  • $$PGBINDIR       =  C:\Program Files\pgAdmin III\1.10
  • $$HOSTNAME    =  localhost
  • $$PORT                =  5432  
  • $$USERNAME     =  utilisateur connecté
  • $$PASSWORD     =  mot de passe
  • $$DATABASE      =  BDTEST
  • $$SCHEMA          =  $$SCHEMA (aucun schéma de sélectionné)
  • $$TABLE              =  $$TABLE (aucune table sélectionnée)
Sélectionner le schéma public, tables et une table pour la visualiser :



























    Lancer l'exécution du plugin :







     Vous devriez obtenir la visualisation de vos données :













    Si vos données n'apparaissent pas : 
    • Vérifier que la table sélectionnée existe bien dans la table geometry_columns,
    • Vérifier le type de Géométrie qui doit être un de ces types :
      • POINT 
      • LINESTRING
      • POLYGON

     Conclusion 


    Je prépare une prochaine version qui exécutera une requête de l'éditeur SQL de PgAdmin III, afin de pouvoir visualiser le résultat d'une requête spatiale.



















    9 commentaires:

    1. Merci. La prochaine version pour visualiser le résult de requêtes sera très utile.

      RépondreSupprimer
    2. Bonjour,

      Il faut avoir un accès en écriture au répertoire
      C:\Program Files\pgAdmin III\1.12\postgisviewer\DATA
      Pourquoi ne pas mettre les shp dans le dossier temporaire (TMP ou TEMP) de l'utilisateur ?

      RépondreSupprimer
    3. Le visualisateur se lance mais n'affiche aucune donnée, d'où pourrait venir le problème (udig et qgis fonctionnent)

      RépondreSupprimer
    4. Bonjour.
      moi je suis debutant avec postgis.j'utilise postgis 1.5 pgadmin III 1.12 pour son graphisme (je suis tres nul dans les lignes de code).
      J'ai suivi la demarche indiquée par le createur de PostGISViewer avec cette nouvelle version.Et ca fonctionne tres bien!je visualise les données directement au lieu de faire beaucoups de transferes dans logiciel a un autre.Je tester les buffer et les autres outils de cet utilitaire

      Merci pour cet utilitaire

      RépondreSupprimer
    5. Bonjour, les plugins pour PostGIS sont très utiles.
      Bravo !
      Existe-t-il une version qui tournerait sous Linux à tout hasard ?

      RépondreSupprimer
    6. Idem pour moi, le visualiseur se lance mais n'affiche aucune donnée sniff....

      RépondreSupprimer
    7. Bonjour,

      Exister-t-il une version Linux ?

      RépondreSupprimer
    8. Your Download Link for PostGISViewer under

      Le visualiseur pour PostGIS est téléchargeable ici :
      PostGISViewer.

      doesn't work.
      Could you check this please.

      Thanx

      RépondreSupprimer
    9. Bonjour
      est ce que vous pouvez nous mettre un lien pour accéder à PostGISViewer
      merci de votre compréhension

      RépondreSupprimer