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

Tous à Arras les 2 et 3 juillet (2019), aux Geodatadays !

#1 Sun 18 November 2018 22:30

Sim Bast
Membre
Date d'inscription: 18 Nov 2018
Messages: 1

QGIS: Création d'une grille triangulaire

Bonjour à toutes et à tous,
Je suis débutant sur Qgis et j'ai donc du mal à comprendre toutes ses fonctions. Mon objectif est de pouvoir créer une grille triangulaire, je m'explique..
L'idée est d'utiliser une grille hexagonale ou chaque hexagone est divisé en 6 triangles équilatéraux sur une emprise donnée.
Il est important que chaque triangle soit une entité unique.
J'ai donc commencé par créer une grille hexagonale, j'ai fait apparaître les centroïdes de chaque hexagone sur une nouvelle couche ainsi que les sommets.
Je n'arrive pas à tracer les lignes qui relie ces deux couches de points. Mais cela ne marche pas, j'imagine que je suis parti dans la mauvaise direction..
Avez-vous des idées?

Merci d'avances.

Hors ligne

 

#2 Mon 19 November 2018 11:26

Renaud
Membre
Lieu: Olivet (45)
Date d'inscription: 9 Mar 2006
Messages: 2255

Re: QGIS: Création d'une grille triangulaire

Bonjour,

Il est possible de créer dans un champ la géométrie des 6 triangles équilatéraux de chaque hexagone avec les fonctions de géométrie de QGIS.
Il faudra créer un champ géométrie par triangle, ou créer 6 occurrences numérotées de chaque hexagone avant le calcul.

Les fonctions à utiliser :
make_polygon : sert à construire la géométrie du triangle
make_line : sert à construire la géométrie de l'enveloppe du triangle
centroid : pour extraire le centroïde de l'hexagone
point_n : pour extraire un point de l'hexagone en fonction de son index

Sans avoir testé, la fonction de création du premier triangle devrait ressembler à ça :
make_polygon(make_line(centroid($geometry),point_n($geometry,1),point_n($geometry,2),centroid($geometry)))

Pour les autres triangles, il faut changer les index des 2 point_n

Remarque : avec cette méthode, il n'est pas utile de créer les centroïdes et sommets en tant qu'objets. On passe directement des hexagones aux triangles.

Dernière modification par Renaud (Mon 19 November 2018 11:28)


Renaud Mouche

Hors ligne

 

#3 Mon 19 November 2018 11:49

SANTANNA
Membre
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 2243

Re: QGIS: Création d'une grille triangulaire

Bonjour,

Et si on prenait le problème dans l'autre sens? càd
- créer le triangle équilateral (pour info, dans QGIS 3 l'outil Polygone régulier devrait aider à construire ça rapidement)
- Faire une copie rotation de l'objet autour d'un sommet pour obtenir l'hexagone
- QGIS 3.4 embarque un algorithme de translation en masse (https://docs.qgis.org/testing/en/docs/u … eatures-34): en choisissant le bon x, y de décalage et le nombre d'entités pour couvrir la zone,  translater simultanément les 6 triangles devrait faire l'affaire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |