Upload
athanase-monier
View
105
Download
0
Embed Size (px)
Citation preview
Martial Tola: [email protected]
Laboratoire d'InfoRmatique en Image et Systèmes d'informationLIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université Lumière Lyon 2/Ecole Centrale de
LyonUniversité Claude Bernard Lyon 1, bâtiment Nautibus
43, boulevard du 11 novembre 1918 — F-69622 Villeurbanne cedexhttp://liris.cnrs.fr
UMR 5205
Présentation équipe EDP - MEPP - 25/11/2010
MEPP
3D MEsh Processing Platform
Présentation équipe EDP - MEPP - 25/11/2010 2
Présentation : objectifs
Etablir un cadre autour des nouvelles techniques de maillages 3D
Fédérer / rassembler / pérenniser les développements de l’équipe M2DISCO
Impact minimal d’un système d’exploitation et d’un langage de programmation, dans la mesure du possible (portabilité)
Etre orienté vers la modularité (notion de composant)
Fournir une IHM et des fonctionnalités de base pour un développement plus rapide (intégration plus facile)
Installation simplifiée et rapide
Présentation équipe EDP - MEPP - 25/11/2010 3
Présentation : plateforme
Environnement de développement basé sur la classe «Polyhedron» de CGAL
Fonctionnalités / maillages
chargement : maillages multiples (mode «space», plusieurs objets chargés dans une même scène) séquences de maillages (mode «time», visualisation grâce à un magnétoscope 3D+t)
traitement visualisation
Public visé
ingénieurs, chercheurs étudiants stagiaires (prise en main rapide, facilitée par l’architecture proposée)
→ MEPP est open source (GPL v3)
Forge/svn → https://gforge.liris.cnrs.fr/projects/mepp Machine virtuelle VMware avec Linux Ubuntu 10.04 «ready to start»
Présentation équipe EDP - MEPP - 25/11/2010 4
Librairies / outils utilisés
Critères requis
C++, open source Multiplateforme (Windows, Linux et Mac OS X) Robuste, flexible, efficace
MEPP utilise les librairies :
CGAL Qt libQGLViewer Boost
MEPP est généré par un système de construction multiplateforme
CMake
Présentation équipe EDP - MEPP - 25/11/2010 5
Librairie CGAL : présentation
Computational Geometry Algorithms Library
Propose une implémentation des objets et des algorithmes utilisés couramment en géométrie algorithmique
Librairie Open Source / utilisateurs académiques GeometryFactory / licence commerciale Consortium 7 instituts de recherche en Europe et Israël INRIA Sophia-Antipolis fortement impliqué
Robuste, flexible, efficace POO et polymorphisme : généricité / template
Présentation équipe EDP - MEPP - 25/11/2010 6
Librairie CGAL : polyèdre
Fournit une représentation des polyèdres (maillages 3D)
→ Structure de données basée sur le concept des demi-arêtes (orientées) :
sommets / arêtes / facettes,
relations d’incidence et d’adjacence,
navigation rapide et aisée au sein du maillage.
Présentation équipe EDP - MEPP - 25/11/2010 7
Développement composant
Problème : comment intégrer les travaux de chaque contributeur au sein de la plateforme ?
Solution retenue : héritage multiple « conditionnel »
(→ polyhèdre enrichi)
Chaque composant peut donc (ou non) ainsi enrichir :les items géométriques (sommets, demi-arêtes, facettes),
le polyèdre lui-même,
l’IHM du logiciel (menu, toolbar, évènements, …).
Le polyèdre enrichi ainsi que ses items géométriques héritent donc de tous les enrichissements amenés par l’héritage respectif de chaque composant
Présentation équipe EDP - MEPP - 25/11/2010 8
Développement composant (suite)
Sélection des composants à la compilation (CMake)
Mise en œuvre sous forme de plugins (.dll/.so/.dylib) avec détection et chargement automatique
Possibilité de contribuer à la plateforme par la création de nouveaux composants
Création simplifiée à partir de l’exemple fourni
Composants disponibles (8 libres / 10 existants)
Analyse de courbure Opérations booléennes : union, intersection, soustraction Segmentation (Variational Shape Approximation) Distance perceptuelle ...
Présentation équipe EDP - MEPP - 25/11/2010 9
MEPP: 3D MEsh Processing Platform