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 !.
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce



#AGAURAGEO

1ère Biennale de l'Information Géographique
Lyon - 17 décembre 2019

http://agaurageo.fr/

#1 Tue 05 November 2019 14:55

Njoy
Membre
Lieu: Lyon
Date d'inscription: 29 Nov 2018
Messages: 17

QGIS: Conseils/Infos ?

Bonjour,

Dans le but de déploiement Télécom, j'ai deux couches,

- une couche infrastructure [INFRA.SHP], en vecteurs, avec toutes les infrastructures catégorisées en table attributaire (aérien, souterrain, façade)
- une couche câble [CABLES.SHP], en vecteurs,  avec mes capacités de câbles catégorisées en table attributaire


Mes entités (cables) de ma couche [CABLE] sont strictement tracés (je l'espère en tous cas) sur ma couche [INFRA]

Mes entités (cables) de ma couche [CABLE] peuvent être tracés sur une multitude d’élément de ma couche INFRA (un cable commence en aérien, chemine en souterrain et termine en façade par exemple)

Je souhaiterais par un quantitatif de longueur de mes  cables par '[CABLE].capacité' et '[INFRA].mode_de_pose'

Exemple :

                Capacité1  |  Capacité 2  |  Capacité3
Souterrain  120m       |     423m      |     500m
Aerien        190m       |     123m      |     600m
Facade       453m       |     496m      |     300m


Quelqu'un saurait m'aider ?

J'ai pas mal de bases en python, et suis ouvert à d'autres propals

Cdt, NJOY

Hors ligne

 

#2 Thu 07 November 2019 15:55

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1652
Site web

Re: QGIS: Conseils/Infos ?

Bonjour,

Il faut rapatrier l'info de mode de transport dans câble.

Le plus simple est de créer une couche virtuelle avec la formule :

Code:

with a as (
    select c.*, i.mode, st_length(c.geometry) as longueur 
    from cable c, infra i
    where st_intersects(c.geometry, i.geometry)
)

select mode, capacite, sum(longueur) longueur 
from a 
group by mode, capacite

Geodata au Cerema et petits billets en géomatique

Hors ligne

 

#3 Fri 08 November 2019 10:55

Njoy
Membre
Lieu: Lyon
Date d'inscription: 29 Nov 2018
Messages: 17

Re: QGIS: Conseils/Infos ?

Bonjour,

Merci pour le retour, j’exécute ce code de quelle manière ?

J'ai fais le test en executant via SQL (boite à outils / executer sql), voici l'erreur qui m'est renvoyée :

       
2019-11-08T10:54:39    2    Uncaught error while executing algorithm
            Traceback (most recent call last):
              File "C:/PROGRA~1/QGIS2~1.18/apps/qgis-ltr/./python/plugins\processing\core\GeoAlgorithm.py", line 203, in execute
                self.processAlgorithm(progress)
              File "C:/PROGRA~1/QGIS2~1.18/apps/qgis-ltr/./python/plugins\processing\algs\qgis\ExecuteSQL.py", line 137, in processAlgorithm
                vLayer.crs())
              File "C:/PROGRA~1/QGIS2~1.18/apps/qgis-ltr/./python/plugins\processing\core\outputs.py", line 326, in getVectorWriter
                crs, options)
              File "C:/PROGRA~1/QGIS2~1.18/apps/qgis-ltr/./python/plugins\processing\tools\vector.py", line 600, in __init__
                uri = GEOM_TYPE_MAP[geometryType] + "?uuid=" + unicode(uuid.uuid4())
            KeyError: 0



cdt
NJOY

Hors ligne

 

#4 Wed 13 November 2019 10:14

Njoy
Membre
Lieu: Lyon
Date d'inscription: 29 Nov 2018
Messages: 17

Re: QGIS: Conseils/Infos ?

Bonjour,

Je suis toujours bloqué, je pensais sinon trouver une méthode pour découper mes cables (polylignes) a chaque changement de type d'infrastructure

Quelqu'un saurait m'aider ?

Merci

Hors ligne

 

#5 Wed 13 November 2019 14:46

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1652
Site web

Re: QGIS: Conseils/Infos ?

Bonjour,

Dans ma manip' il faut ajouter une couche virtuelle, soit : couche > ajouter une couche virtuelle
La couche changera dynamiquement avec les données qui changent


Geodata au Cerema et petits billets en géomatique

Hors ligne

 

#6 Thu 14 November 2019 16:12

Njoy
Membre
Lieu: Lyon
Date d'inscription: 29 Nov 2018
Messages: 17

Re: QGIS: Conseils/Infos ?

Bonjour,

Merci pour le retour, j'ai réussis à effectuer votre procédure, mais j'ai beaucoup trop de quantité, beaucoup + que la normale

Il se trouve que ça compte toutes les infra touchées et non les infra superposées

cdt
NJOY

Hors ligne

 

#7 Fri 15 November 2019 11:33

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1652
Site web

Re: QGIS: Conseils/Infos ?

Pour avoir les infras superposées, vous pourriez utiliser un tampon sur les infras, de cette façon, et utiliser st_contains :

Code:

with a as (
    select c.*, i.mode, st_length(c.geometry) as longueur 
    from cable c, infra i
    where st_contains(st_buffer(i.geometry,10), c.geometry)
)

select mode, capacite, sum(longueur) longueur 
from a 
group by mode, capacite

Geodata au Cerema et petits billets en géomatique

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |