Bienvenue! Inscrivez-vous et rejoignez notre communauté :)
  • Login:

Bienvenue sur Forum SIG - Systèmes d'Information Géographique et Géomatique.

Bienvenue sur le forumSIG. S'il s'agit de votre première visite, assurez vous de faire une recherche préalable dans les FAQ SIG. Vous devez vous inscrire avant de pouvoir poster.

Affichage des résultats 1 à 8 sur 8
  1. #1

    Date d'inscription
    février 2016
    Messages
    4

    Par défaut Orientation automatique des symboles

    Bonsoir,

    Nouvelle utilisatrice de Qgis, je découvre petit à petit tout ce que ce logiciel est capable de faire.

    Mon but est de dessiner les réseaux d'eau potable, d'assainissement, d'éclairage public.... d'une ville.

    Actuellement, je cherche une solution pour orienter automatiquement mes symboles sur un segment d'une polyligne (exemple placer une vanne sur une conduite d'eau potable dans le même sens).
    Sauf erreur de ma part, je n'ai pas trouvé de discussion sur ce sujet.

    J'ai testé avec le calcul de l'azimut mais cela ne convient pas car ma polyligne est composée de plusieurs segments dont les angles varient.

    Quelqu'un a t'il une solution?

    Merci d'avance

    Sandrine

  2. #2
    Chasseur de Bots
    Date d'inscription
    août 2011
    Localisation
    Paris > Strasbourg
    Emploi
    Chargé de mission SIG
    Âge
    34
    Messages
    1 485

    Par défaut Re : orientation automatique des symboles

    Il faudrait peut être fragmenter la polyligne en segments simples, calculer l'azimut des segments et récupérer cet azimut dans les points intersectant ces segments.

  3. #3

    Date d'inscription
    février 2016
    Messages
    4

    Par défaut Re : orientation automatique des symboles

    Merci pour la réponse.

    Par contre, l'agence de l'eau nous demande un inventaire des réseaux d'eau potable (pour chaque conduite: diamètre, matériau, longueur....) et cette solution risque de me "fausser" mon inventaire car je vais avoir plein de conduites de 1 ou 2 mètres.

    ou dois je faire une couche avec que des lignes qui me permettra d'extraire l'azimut et une couche avec des polylignes pour mon inventaire.

    comment fait on pour découper les polylignes en ligne? y'a t'il une méthode qui peut traiter plusieurs polylignes en même temps (j'ai plus de 700 polylignes )

    Merci pour vos lumières

  4. #4
    Chasseur de Bots
    Date d'inscription
    août 2011
    Localisation
    Paris > Strasbourg
    Emploi
    Chargé de mission SIG
    Âge
    34
    Messages
    1 485

    Par défaut Re : orientation automatique des symboles

    ou dois je faire une couche avec que des lignes qui me permettra d'extraire l'azimut et une couche avec des polylignes pour mon inventaire.
    C'est plutôt à ça que je pensais.

    Dans QGIS, il faut aller chercher un outil dans la boîte à outils Processing (Menu 'Traitement') : Exploser des lignes

  5. #5

    Date d'inscription
    février 2016
    Messages
    4

    Par défaut Re : orientation automatique des symboles

    J'ai réussi à casser mes polylignes en lignes. Maintenant, je cherche comment extraire l'angle de la ligne que je pointe pour placer mon symbole.

    je suppose que je dois faire une jointure spatiale par localisation (join attributes by location) et je buche.

    est ce possible d'extraire d'autres informations de la ligne en même temps (commune, rue...)

    encore merci

  6. #6

    Date d'inscription
    février 2016
    Messages
    4

    Par défaut Re : Orientation automatique des symboles

    Bonsoir,

    Pour aligner automatiquement mes symboles sur ma polyligne, j'ai trouvé la solution, youpi.
    Pour ceux que ça intéresse, voici ma démarche (qui n'est peut être pas la meilleure mais qui fonctionne):
    1: Découper les polylignes en ligne =>menu traitement\boite à outils\Geotraitements Qgis\Vector Geometry Tools\explode lines
    2: Calculer l'azimut des lignes avec le formule: (atan((xat(-1)-xat(0))/(yat(-1)-yat(0)))) * 180/3.14159 + (180 *(((yat(-1)-yat(0)) < 0) + (((xat(-1)-xat(0)) < 0 AND (yat(-1) - yat(0)) >0)*2)))
    3: Installer les plugins 'SpatialJoin' (et RefFunctions') et faire une jointure entre les 2 couches-attribut à joindre = Azimut. Dans la table attributaire des symboles 2 colonnes s'ajouteront automatiquement: spjoin_rif et spjoint Azimut
    4: Dans la table attributaire des symboles, ajouter une colonne Azimut et rentrer la formule : spjoint_Azimut-90

    En espérant que cela aidera...

  7. #7

    Date d'inscription
    septembre 2010
    Localisation
    Bzh
    Emploi
    Architecte-paysagiste
    Organisme
    Travailleur indépendant
    Messages
    7

    Par défaut Re : Orientation automatique des symboles

    Super, merci Sandrine pour la méthode ! Et pour la formule toute compliquée de calcul de l'azimut, elle fonctionne !
    A priori, Qgis a désormais une fonction azimut qui pourrait simplifier la chose : azimuth(a,b), avec a et b les points de départ et de fin de la ligne dont on veut calculer l'azimut, mais AUCUN des fichiers d'aide que j'ai trouvé n'est fichu de nous donner la formule à écrire ! ça ne leur prendrait pourtant pas plus d'une ligne ! OK, il faut utiliser Xat et Yat, mais on fait comment ? J'ai beau essayer toutes les combinaisons possibles, avec des virgules, des points, des points-virgules – genre azimuth,(Xat(0) Yat(0), Xat(-1) Yat(-1)) – rien ne marche. Quelqu'un·e aurait-il·elle la réponse ? Merci d'avance
    ______________
    Le possible est fait ; l'impossible est en cours. Pour les miracles, prévoir un délai.

  8. #8
    Modérateur
    Date d'inscription
    novembre 2012
    Localisation
    Angers
    Messages
    690

    Par défaut Re : Orientation automatique des symboles

    Bonjour,
    Citation Envoyé par papa-yankee
    mais AUCUN des fichiers d'aide que j'ai trouvé n'est fichu de nous donner la formule à écrire ! ça ne leur prendrait pourtant pas plus d'une ligne !
    Ah ces développeurs! On se demande bien ce qu'ils foutent! A part bien évidemment, nous pondre une aide sur la fonction et oser y ajouter deux exemples dont nous ne comptons pas nous inspirer!
    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		Capture d’écran 2018-10-22 à 12.49.19.png 
Affichages :	12 
Taille :		67,7 Ko 
ID : 			9091
    Quid de?
    Code:
    degrees( azimuth( make_point( xat(0),yat(0) ), make_point( xat(-1),yat(-1) ) ) )
    "Les maisons sont proches pour qu'on puisse aller chercher du feu." Proverbe Moba
    Avant de poster, lire au moins une fois : De la bonne manière de poser les questions

 

 

Discussions similaires

  1. [QGIS 2.x] Rotation automatique de symboles
    Par ChrisM dans le forum Assistance et Programmation
    Réponses: 2
    Dernier message: 14/02/2016, 14h50
  2. [QGIS 2.x] Orientation des SVG selon orientation des vecteurs
    Par Innemap dans le forum Assistance et Programmation
    Réponses: 24
    Dernier message: 15/04/2015, 15h25
  3. [QGIS 1.7] Rotation automatique symboles / polyligne
    Par dbkblk dans le forum Assistance et Programmation
    Réponses: 7
    Dernier message: 26/10/2011, 15h25
  4. GVSIG 1.11.0 Orientation des symboles
    Par Un alien du SIG dans le forum Assistance et Programmation
    Réponses: 0
    Dernier message: 04/07/2011, 11h22
  5. [ArcGIS 9.x] Orientation des symboles
    Par hvanh dans le forum Assistance Technique
    Réponses: 10
    Dernier message: 13/10/2005, 15h52

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •