Etablir un cadre autour des nouvelles techniques de maillages 3D



Yüklə 444 b.
tarix03.01.2018
ölçüsü444 b.
#36861



Etablir un cadre autour des nouvelles techniques de maillages 3D

  • 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



Environnement de développement basé sur la classe «Polyhedron» de CGAL

  • 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»


Critères requis

  • 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


Computational Geometry Algorithms Library

  • 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


Fournit une représentation des polyèdres (maillages 3D)

  • 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.


Problème : comment intégrer les travaux de chaque contributeur au sein de la plateforme ?

  • 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


Sélection des composants à la compilation (CMake)

  • 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
    • ...




Yüklə 444 b.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin