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 Fri 10 October 2014 08:54

Emy.C
Participant occasionnel
Date d'inscription: 9 Oct 2014
Messages: 21

Extraction de z depuis un 3ds

Bonjour à tous,

géomaticienne en herbe, je me trouve confrontée à un problème que j’ai du mal à résoudre.

Je dispose de modèles 3D en format 3ds. Je dois récupérer l’emprise de ces modèles sous format shape  avec l’élévation maximale en attribut.
Je dispose de FME, QGIS et Postgis.
Dans un premier temps, j’ai transformé les 3ds en shape avec des entité de type multipolygonz.

J’essaie désormais via Postgis de récupérer les coordonnées de chaque point pour trouver le point dont l’altitude est la plus élevée. Pour ce faire, j’ai recours àPostgis. Je me suis appuyé sur deux autres post de ce site : http://georezo.net/forum/viewtopic.php?id=50005 et  http://georezo.net/forum/viewtopic.php?id=88544. Cependant mon bout de code ne fonctionne pas du tout.


select id,
st_x (st_pointn((st_exteriorRing(
        (st_dumpRings((st_dump(geom)).geom)).geom)
    )),
    generate_series  (1, st_numpoints
        ((st_exteriorRing(
            (st_dumpRings((st_dump(geom)).geom)).geom) )))
    )
from bati_test.test_3ds_2 ;

Il est possible que je complique inutilement les choses. Quelqu'un aurait-il un commentaire sur la méthode, le code? Ou une autre idée de méthodologie?

Cordialement.

Hors ligne

 

#2 Fri 10 October 2014 11:18

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

Re: Extraction de z depuis un 3ds

Salut,

Si tu veux récupérer la totalité des points de tes multipolygones, un petit example  :

Code:

select idparcelle,(r).path,(r).geom from (
select idparcelle,st_dumppoints( (st_dumprings((st_dump((the_topo).geometry)).geom)).geom)  as r from cadastre.parcelle limit 10
) as t

Hors ligne

 

Pied de page des forums

Powered by FluxBB