banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 24 April 2013 15:49

CGuillaume
Participant actif
Lieu: Annecy
Date d'inscription: 3 Aug 2011
Messages: 59

[PostGIS] Table prenant en charge toutes les géométries

Bonjour,

Actuellement en stage je développe une application métier pour la gestion des sentiers de randonnée à l’aide du générateur d’applications « Aigle Générateur ». Dans cette application j’utilise des tables stockées dans PostGIS.

Le problème que je rencontre actuellement est que j’aimerais avoir une table qui prend en charge toutes les géométries (ligne, point, polygone) et du texte.

J’arrive à obtenir une table prenant en charge toutes les géométries avec la contrainte suivante :

Code:

ADD CONSTRAINT All_geometry
CHECK (geometrytype(geom) = 'GEOMETRY'::text 
    OR geometrytype(geom) = 'POLYGON'::text 
    OR geometrytype(geom) = 'MULTIPOLYGON'::text 
    OR geometrytype(geom) = 'POINT'::text 
    OR geometrytype(geom) = 'LINESTRING'::text 
    OR geometrytype(geom) = 'MULTILINESTRING'::text 
    OR geom IS NULL);

Mais lorsque j’ajoute du texte à cette table dans mon application, ma zone de texte est automatiquement transformée en ponctuel lors de l’enregistrement.

Après avoir épluché la doc PostGIS sur les « geometrytype » je viens vers vous pour voir si quelqu’un a une solution.

Merci d’avance pour votre aide.

Guillaume

Hors ligne

 

#2 Wed 24 April 2013 16:31

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1554

Re: [PostGIS] Table prenant en charge toutes les géométries

Bonjour,

Vous pouvez faire plus simple en ne mettant pas de contrainte wink

Sinon, vous etes bien sur de vouloir stocker toutes les geométries dans une meme table ? Quel est le but recherché ou le modèle sous-tendant cette approche ?
Typiquement, stocker des objets simples et des objets MULTI ne sert pas a grand chose: autant ne stocker que des MULTI.

Ca sera inexploitable a l'affichage et tres probablement aussi en gestion: les fonctions spatiales marchent pour certaines types de données, rarement pour tous (area, st_numpoint, geometryN, etc.)

Vous pouvez eventuellement créer des vues qui representent un type donné: vue_points, vue_ligne, etc.

Comment inserez-vous les donnees ? Je ne comprends pas bien comment du texte est transformé en point.

Nicolas

En ligne

 

#3 Wed 24 April 2013 17:17

CGuillaume
Participant actif
Lieu: Annecy
Date d'inscription: 3 Aug 2011
Messages: 59

Re: [PostGIS] Table prenant en charge toutes les géométries

Bonjour,

Tout d'abord merci pour votre réponse rapide !

Cette table qui pourra supporter toutes les géométries n'aura qu'un rôle visuel dans mon application avec aucune gestion à faire dessus c'est pour cela que je permet de mélanger les géométries. Le but est d'en faire une couche de "dessin" qui permet de faire des croquis de carrefours à l'intersection des sentiers avec des flèches, annotations, etc. qui seront visible qu'à fort grossissement. (Je vous met un exemple en pièce jointe)

Pour ce qui est de l'insertion des données, j'utilise un outil "de modification géométrique" déployé pour mon application à partir du générateur et qui permet de faire des points, lignes, polygones et d'insérer des zones de textes.

Merci encore.

Guillaume


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB