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

Rencontres QGIS 2025

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

#1 Tue 05 June 2012 17:24

Samy-DT
Participant assidu
Date d'inscription: 5 Apr 2011
Messages: 211

Sélections BD TOPO par commune

Bonjour à tous,

Je souhaite regrouper les tables de ma BD Topo (sous MI 8.5) par communes. Certaines tables possèdent dans leur table attributaire un code Insee ou même un nom de commune. Dans ce cas là, la sélection est facile.

En revanche, j'ai des tables où il n'y a aucune information sur la commune (ex. tronçons cours d'eau), voire même rien du tout dans la table (lignes ISO).
Je n'ai pas un panel très développé d'automatismes en SIG, alors au début je me suis dit qu'il allait falloir créer un fichier excel "code-Insee" à joindre à toutes mes tables, mais le problème c'est le champ commun. Cela va être trop long à faire sur toutes mes tables.

N'avez-vous pas d'autre solutions ?

A bientôt,

Samy.

Hors ligne

 

#2 Sat 09 June 2012 00:10

tholot
Participant actif
Lieu: viré
Date d'inscription: 5 May 2009
Messages: 55

Re: Sélections BD TOPO par commune

Bonjour,

De manière schématique et vite fait si j'ai bien tout compris :

Méthode pour une table :

La table communes de la bdtopo (théme administratif) contient les codes insee associés aux polygones représentant chacune des communes de votre territoire d'étude.

Ouvrez la en plus de la table que vous souhaitez "tronçonnez" par commune.

Si vous souhaitez conserver les tronçons de la BDtopo, faites une requête :

sélection SQL 

Select * from tablehydro,tablecommune where tablecommune.obj contains tablehydro.obj (en théorie les tronçons hydro sont plus petits que les polygones des communes.

Attention toutefois certaine couche, type hydro et route sont les strictes frontières communales, vous risquez donc d'obtenir des tronçons qui seront aux limites communales réparties de manière aléatoire sur une ou l'autre des communes dont ils sont frontières avec un risque fort de discontinuité d'un même ensemble physique ex la rd12 bien que limitrophe entre commune A et commune B se trouvera en partie morcellée sur la commune A et la commune B

et ainsi de suite pour chaque couche, vous aurez ainsi un code INSEE pour chaque tronçon et pourrez donc faire une requête distinguant les tronçons par leur appartenance à un code insee distinct

cordialement,

Si vous savez disposez de Mapbasic il faut ensuite faire une boucle sur la table commune pour réaliser l'opération pour toutes les communes et couches bdtopo dont vous avez besoin.

cordialement,


Yann

Hors ligne

 

#3 Mon 11 June 2012 09:47

Samy-DT
Participant assidu
Date d'inscription: 5 Apr 2011
Messages: 211

Re: Sélections BD TOPO par commune

Bonjour Yann et merci pour votre réponse.

J'ai tenté votre méthode en écrivant la requête suivante dans la sélection SQL : SELECT * FROM TRONCON_COURS_EAU,COMMUNE WHERE COMMUNE.Obj Contains TRONCON_COURS_EAU.Obj

En validant, j'ai un message d'erreur "Variable ou champ SELECT non défini".

Quelle erreur ai-je faîte ?

A bientôt,
Samy.

Hors ligne

 

#4 Mon 11 June 2012 10:10

Samy-DT
Participant assidu
Date d'inscription: 5 Apr 2011
Messages: 211

Re: Sélections BD TOPO par commune

Je rectifie légèrement le message précédent : cette requête fonctionne dans MapBasic mais pas dans la sélection SQL.

Ceci dit, pour les couches type route et hydro qui "débordent" sur les communes adjacentes, j'ai dans l'idée de créer un polygone par-dessus mes limites communales puis de créer une requête demandant d'exclure ou d'effacer tout ce qui est à l'extérieur de ce polygone.

Cependant, je ne sais pas du tout comment procéder à cette exclusion.

Auriez-vous une idée ?
Samy

Hors ligne

 

#5 Tue 19 June 2012 00:23

tholot
Participant actif
Lieu: viré
Date d'inscription: 5 May 2009
Messages: 55

Re: Sélections BD TOPO par commune

Bonjour,

la fenêtre de sélection SQL de Mapinfo est un assistant permettant l'écriture de requête sans connaître le language SQL qu'utilise Mapinfo.

Pour obtenir le résultat voulu modifier la structure de tablehydro (et idem pour toutes les autres tables) et ajouter un champ CODE_INSEE de type text de 5 caractères, puis :

Si vous voulez reproduire la requête dans la sélection SQL de Mapinfo :
mettez * dans la partie "colonne"

Mettez les 2 tables considérées dans la section table (tablehydro,tablecommune)

Mettez tablehydro.obj within tablecommune.obj dans la partie "critère"

vous pouvez sélectionner les noms de colonnes tables et opérateurs dans les menus déroulant de la partie droite de la boite de dialogue

Vous obtenez une Queryx Utiliser la commande table\mettre à jour colonne

-table à mettre à jour : Queryx obtenue
-Utiliser une colonne de la table : choisissez la table des communes

bouton jointure : l'objet de la table queryx est à l'interieur de l'objet de la table commune

Colonne à mettre à jour : CODE_INSEE de la table queryx

Calculer : Valeur


De : CODE_INSEE  (en supposant que votre table communale contienne un champ code insee renseigné..)

Enregistrer votre table hydro avec les codes insee.


Partie 2 exclure la partie des tronçons qui débordent :

Rendre la couche tronçon hydro modifiable

Selectionner tous les tronçons "réputés" appartenir à une commune donnée :

Selection SQL

colonne : *
table : tablehydro
critère CODE_INSEE="05321"

obtenez une query

sans perdre la sélection cliquer sur le bandeau de la fenêtre Carte

Sélectionner Menu Objets\Définir cible

sur la carte sélectionner le polygone de la commune considérée.

Enfin menu Decouper\Supprimer extérieur

Vous pouvez bien sur enregistrer la table des tronçons par commune au préalable pour n'effectuer que les découpages sur celle ci.


Yann

Hors ligne

 

#6 Wed 20 June 2012 15:13

Samy-DT
Participant assidu
Date d'inscription: 5 Apr 2011
Messages: 211

Re: Sélections BD TOPO par commune

Merci beaucoup Yann,

J'ai pu faire mes découpages avec succès.

A bientôt,

Samy.

Hors ligne

 

#7 Fri 22 June 2012 07:32

tholot
Participant actif
Lieu: viré
Date d'inscription: 5 May 2009
Messages: 55

Re: Sélections BD TOPO par commune

De rien,

bon courage pour vos projets.

cordialement


Yann

Hors ligne

 

Pied de page des forums

Powered by FluxBB