Triangle

Fiche logiciel validé
  • Création ou MAJ importante : 15/07/10
  • Correction mineure : 19/07/10
  • Rédacteur de la fiche : Sylvain Faure - Laboratoire de Mathématiques Orsay (CNRS, Université Paris-Sud XI)
  • Relecteur(s) : Romaric David (Université de Strasbourg - Direction Informatique)
    Loïc Gouarin (Laboratoire de Mathématiques Orsay)
  • Responsable thématique : Violaine Louvet (Institut Camille Jordan)
Mots-clés
Pour aller plus loin

Triangle : mailleur 2D

  • Site web
  • Système : UNIX-like, Windows, MacOS X
  • Téléchargement
  • Version évaluée : 1.6
  • Langue(s) de l'interface : anglais
  • Licence : Autre

    Ce que l'on peut lire dans le fichier README :

    "These programs may be freely redistributed under the condition that the copyright notices (including the copy of this notice in the code comments and the copyright notice printed when the `-h' switch is selected) are not removed, and no compensation is received. Private, research, and institutional use is free. You may distribute modified versions of this code UNDER THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE SAME FILE REMAIN UNDER COPYRIGHT OF THE ORIGINAL AUTHOR, BOTH SOURCE AND OBJECT CODE ARE MADE FREELY AVAILABLE WITHOUT CHARGE, AND CLEAR NOTICE IS GIVEN OF THE MODIFICATIONS. Distribution of this code as part of a commercial system is permissible ONLY BY DIRECT ARRANGEMENT WITH THE AUTHOR.
    Jonathan Richard Shewchuk
    July 27, 2005"

Description
Fonctionnalités générales

Ce petit programme, écrit en C, permet de mailler par des triangles un domaine bidimensionnel (avec ou sans trous). La génération de base des triangles est effectuée par une triangulation de Delaunay à partir d'un nuage de points. Il est également possible de générer le diagramme de Voronoi, de contraindre le maillage à utiliser certaines arêtes ou certains points via un PSLG (Planar Straight Line Graph) et de faire du raffinement de maillage local.
Ce logiciel est très facile à compiler et à utiliser en ligne de commande. Deux commandes sont à la disposition des utilisateurs : "triangle" pour mailler et "showme" pour visualiser les maillages créés.
Efficace et très basique, il peut être utilisé pour des calculs 2D et il convient bien pour des étudiants n'ayant jamais utilisé de mailleurs auparavant.

Interopérabilité

Pour décrire le domaine à mailler, on donne en entrée un fichier .poly (ou éventuellement un fichier .node) contenant une description des contours du domaine et éventuellement des trous ou régions à labelliser de façon spécifique.

Après exécution de la commande triangle, on obtient les fichiers suivants :

  • un fichier .poly complété,
  • un fichier .node contenant les coordonnées, attributs et marqueurs de frontière de chaque sommet,
  • un fichier .ele contenant les numéros des sommets et les attributs de chaque triangle,
  • un fichier .area contenant l'aire de chaque triangle,
  • un fichier .edge contenant les numéros des sommets et les marqueurs de frontière de chaque arête,
  • un fichier .neigh contenant les numéros des 3 triangles voisins de chaque triangle.

Exemple : pour mailler un carré on écrit un fichier carre.poly contenant

4 2 0 1 #nb_sommets dimension=2 attributs marqueur_frontiere=0ou1
1 0 0
2 0 1
3 1 0
4 1 1
4 2 1 # nb_segments dimension=2 marqueur_frontiere=0ou1
1 1 2
2 2 4
3 4 3
4 3 1
0 # nb_trous

et on utilise la commande "triangle -qevnpa.001 carre.poly" pour obtenir un maillage constitué de triangles d'aire maximale 0.001...

Contexte d'utilisation dans mon laboratoire/service
  • Génération de maillage triangulaire 2D
  • Enseignement
Limitations, difficultés, fonctionnalités importantes non couvertes

C'est un logiciel très élémentaire, quelques lignes écrites en langage C, pas d'interopérabilité avec d'autres mailleurs, pas d'interface utilisateur,... C'est aussi ce qui peut faire sa force lorsque l'on cherche quelque chose de simple.

Environnement du logiciel
Plates-formes

Aucun binaire, le logiciel écrit en langage C doit être compilé

Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

Un développeur à l'origine du logiciel :

Jonathan Richard Shewchuk
Computer Science Division
University of California at Berkeley
Berkeley, California 94720-1776

Eléments de pérennité

Aucun développement nouveau depuis 2005

Références d'utilisateurs institutionnels

University of California at Berkeley
Université Paris-Sud
Ecole Polytechnique

Environnement utilisateur
Documentation utilisateur
Divers (astuces, actualités, sécurité)
Contributions