Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

Printemps des cartes 2024

#1 Thu 18 April 2019 16:03

Femtome0903
Juste Inscrit !
Date d'inscription: 11 Feb 2019
Messages: 3

ArcGis Pro - Requete Spatiale / ERROR parse error - invalid geometry

Bonjour,

En lien avec mon projet ( niveau débutant ) basé sur PostgresSQL / PgAdmin et Arcgis pro ( et son type st_geometry au lieu de geom)  ,

j'ai actuellement un problème sur une de mes requêtes basée sur le calcul d'une surface d'intersection,avec n paramètres, puis reprojeté d'un srid à un autre ; le message d'erreur est le suivant :


ERROR: ERREUR: parse error - invalid geometry HINT: "100000000000000000000000110F" <-- parse error at position 28 within geometry

ce message d'erreur est généré à partir de la requête suivante :

select
sum(       
(st_area
(st_transform
(st_geomfromtext
(st_astext
(st_intersection(pa.shape,s.shape)::varchar),3857),2154
-- ,(pa.shape)::varchar,3857),2154 -- table 1
-- (i.shape)::varchar,3857),2154 -- table intersection temp
))))
from
table1 pa,table2 s  where pa.pera_id=50
-- , table_intersection i




Constats :
- je ne peux modifier mes tables dans leur état actuel ( colonne , format,.. ) , je n'en ai pas le droit.
- l'intersection ne fonctionne pas uniquement , la ligne basée sur pa.shape ou sur le contenu de l'intersection ( créer dans une autre table) fonctionne
Cependant je ne peux pas me fier à cette stratégie car je dois créer le moins de contenu possibles dans mon schéma
- pa.shape est de type POLYGON et l'intersection en MULTIPOLYGON, un rapport avec mon problème peut etre ?
- Me renvoie un résultat si tounée sur Qgis et ses champs geom mais arcgis pro imposé ( et je ne sais pas encore si le résultat est bon ou non )
- Autre détail, sur le site d'ArcGis  il  est spécifié qu'il faut utiliser st_geometry au lieu de st_geomfromtext mais les 2 renvoient la meme erreur

Merci d'avance si vous parvenez à me tirer d'affaire smile

Dernière modification par Femtome0903 (Thu 18 April 2019 16:14)

Hors ligne

 

#2 Thu 18 April 2019 17:08

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1132

Re: ArcGis Pro - Requete Spatiale / ERROR parse error - invalid geometry

Salut,

jamais utilisé arcgispro mais quelques remarques :

*Si Postgis et Arcgis sont installé sur votre base pg,
(je pense que c'est possible), utilisez le nom pleinement
qualifié de vos fonctions et type, (exemple : sde.st_intersection)
pour être sur d'utiliser les bon(ne)s.

* Je ne comprends pas trop pourquoi vous transformez le résultat de votre
intersection en texte, qui est je pense du type st_geometry, pour le retransformer
en st_geometry. D'autant que je pense que l'erreur vient de là,  le cast de votre intersection
en varchar, renvoie une chaine  de la représentation de la géomètrie au format WKB,
et st_geometryfromtext attend une chaine de sa représentation au format WKT.

Dernière modification par tumasgiu (Fri 19 April 2019 09:49)

Hors ligne

 

#3 Thu 18 April 2019 17:29

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1132

Re: ArcGis Pro - Requete Spatiale / ERROR parse error - invalid geometry

Si le but de cette conversion geometry>text>geometry
est d'attribuer le SRID 3857 à votre intersection,
je pense que ce n'est pas nécessaire :

Code:

SELECT
    sum((st_area (st_transform (st_geometry (st_intersection (pa.shape, s.shape), 3857), 2154)))
        FROM table1 pa, table2 s
    WHERE
        pa.pera_id = 50

A noter que si le SRID 3857 est déja assigné aux colonnes shape de vos deux tables,
ca n'est pas nécessaire et vous pouvez supprimer le st_geometry(..., 3857).

Dernière modification par tumasgiu (Thu 18 April 2019 17:40)

Hors ligne

 

Pied de page des forums

Powered by FluxBB