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

GEODATA DAYS 2024

#1 Wed 05 September 2007 21:55

smarc
Juste Inscrit !
Date d'inscription: 20 Dec 2005
Messages: 9

proportion de la longueur d'une polyligne dans un polygone

Bonsoir à toutes et à tous,

J'ai comme qui dirait un petit problème, je souhaite calculer la longeur d'une polyligne mais dans chaque polygone.
Exemple : j'ai une polyligne représentant une route qui traverse des communes qui sont mes polygones, je souhaite calculer la longueur de ma route dans chaque commune de façon automatique car mon cas est plus compliqué que l'exemple.
Pour deux polygones je connais proportionoverlap mais là je ne vois pas et j'ai cherché.


Je vous serait reconnaissant pour votre aide.

Merci

Marc.

Hors ligne

 

#2 Wed 05 September 2007 22:46

Martin67
Participant occasionnel
Lieu: Mont-Tremblant Québec
Date d'inscription: 29 Aug 2007
Messages: 29
Site web

Re: proportion de la longueur d'une polyligne dans un polygone

Bonjour,

Tout en m'assurant d'avoir un champs Longueur_m dans ma table de rue, je travaillerait sur une copie de cette table sur laquelle j'appliquerais un split (decoupage) par commune.

1-ouvrir la table rue_copie
2-la mettre éditable
3-la sélectionner (par une requête SQL)
4-faire Objet-set target (cible)
5-selectionner les cibles (i.e. les communes) par une autre requête SQL
6-faire Objet-polyline split (...je ne sait pas en français...découper je crois...)
7-Dans le tableau qui apparait (lors du découpage) garder la proportion des longueurs du champs Longueur_m
8-vérifier la base de données d'un tronçon en faisant un i (interrogation) dessus
9-vérifier le même tronçon découpé en double-cliquant dessus (la longueur apparaitra dans le tableau)

Si la longueur est la bonne, c'est bien réussi et donc tu peux te servir de cette table immédiatement pour travailler
tu sauvegarde

Sinon,

1-tu fais SQL select de la table rue_copie
2-ensuite, tu fais table-update column (mise à jour de colonne) ...de la sélection
3-la colonne à mettre à jour est la longueur_m
4-la valeur est (par l'assistant-fonction) longueur objet sphérique en m (mêtre)
tu refais les étapes 8 et 9 et le champs longueur devrait être corrigé

tu sauvegarde si tout est correcte


Bonne chance !


Venez nous visiter !
MRC des Laurentides

Hors ligne

 

#3 Wed 05 September 2007 23:24

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: proportion de la longueur d'une polyligne dans un polygone

Extrait de l'addendum de la Partie 1 de cette référence:

Objectifs : Trouver la longueur d'objets linéaires en intersection avec des objets surfaciques
Dans ce qui suit la table « regions » contient les objets surfaciques, la table « elec400 » les objets linéaires
Syntaxe :
SELECT <liste de variables> ,
OBJECTLEN(OVERLAP(obj1, obj2)), <unité de distance>
FROM <liste des tables> WHERE <conditions de jointure>
Exemple1 :
select regions.code,objectlen(overlap(elec400.obj, regions.obj), "km") "longueur" from elec400, regions where elec400.obj intersects regions.obj
Affiche une table des codes régions avec la longueur en km de chaque intersection
Exemple 2 :
select regions.code, elec400.ID,sum(objectlen(overlap(elec400.obj, regions.obj), "km")) "longueur" from elec400, regions where elec400.obj intersects regions.obj order by code group by regions.code, elec400.ID
Affiche une table avec le code région, l'identifiant du réseau électrique, la longueur cumulée par région et identifiant de réseau

Hors ligne

 

Pied de page des forums

Powered by FluxBB