URL: https://linuxfr.org/users/omc/journaux/sortie-de-la-version-2-00-de-openmeca Title: Sortie de la version 2.00 de Openmeca Authors: omc Date: 2016年01月06日T22:08:09+01:00 License: CC By-SA Tags: logiciel, libre, mécanique, simulation et vœux Score: 38 Cher Journal, Tout d'abord, je te souhaite une bonne et heureuse année 2016. Ensuite, je voudrais te parler du logiciel libre [Openmeca](https://gitlab.com/damien.andre/openmeca), dont une nouvelle version majeure (la `2.0`) vient juste de paraître sur [gitlab](https://gitlab.com/). Un bref historique =========== Openmeca est un projet personnel. Pour être honnête avec toi, cher Journal, la première version était un peu brouillonne, voir même carrément cracra. Tu comprendras qu'à cette époque, il y a 8 ans, j'étais jeune, fougueux et surtout très ignorant des bonnes pratiques élémentaires de programmation. Alors, j'ai tout recommencé depuis le début, en espérant que, cette fois, le code serait un peu moins moche. C'est donc une version `2.0` qui fait (pour l'instant) moins de chose que la version `1.x` mais qui le fait avec plus de classe et de panache et ça, c'est déjà pas mal. Openmeca... c'est quoi ? =========== Openmeca, c'est un logiciel de simulation sans prétention de système mécanique. Il permet de simuler des mécanismes avec des engrenages, des courroies, des liaisons pivots, des glissières, des ressorts... bref, tout ces petits mécanismes qui, mis bout à bout, permettent à une voiture d'avancer, à une fusée de décoller, un compresseur de compresser ou bien à un tire-bouchon de faire *plop* ! Attention, Openmeca n'est pas un modeleur volumique comme [freecad](http://www.freecadweb.org/), [catia](http://www.3ds.com/fr/produits-et-services/catia/) ou bien [solidworks](http://www.solidworks.fr/). Le but d'Openmeca est de pouvoir prototyper et simuler rapidement un système mécanique sans s'embarrasser de la définition complète du mécanisme : géométrie, assemblage, etc. Comme une image vaut mieux qu'un grand discours, tu verras un aperçu d'openmeca ci-dessous.  Openmeca permet donc de dessiner des [schémas cinématiques](https://fr.wikipedia.org/wiki/Mod%C3%A9lisation_cin%C3%A9matique_des_m%C3%A9canismes) en 3D et de les animer en appliquant des forces ou en imposant des déplacements. Il est également possible de placer des capteurs numériques afin de récupérer des données au cours d'une simulation. Enfin, et c'est une nouveauté par rapport à la version précédente, la gestion des contacts entre des géométries simples est disponible. Architecture =========== Openmeca est écrit en C++ 98 et utilise les bibliothèques suivantes : * [qt4](http://www.qt.io/developers/) pour l'interface graphique, * [qwt6](http://qwt.sourceforge.net/) pour faire des graphiques sympas, * [qglviewer](http://libqglviewer.com/) pour gérer la scène 3D, * [boost](http://www.boost.org/) pour la sauvegarde (sérialisation) ainsi que tout un tas de trucs et * [chronoengine](http://chronoengine.info/chronoengine/) pour le moteur physique. Et maintenant ? =========== Openmeca est loin d'être achevé. Il reste tout un tas de fonctionnalités rigolotes à ajouter : nouvelles liaisons mécaniques, nouvelles géométries de contact, amélioration de l'ergonomie de l'interface, rédaction d'une aide, traduction, etc. Mais, avant de réaliser toutes ces belles choses, ce qu'il serait bien, c'est de tester l'architecture déjà existante. Car comme dit le maçon : _avant de construire la charpente il faut commencer par les fondations_. Je t'écris donc aussi avec ce secret espoir, cher Journal, celui de susciter l’intérêt de quelques barbus (ou pas) pour m'aider à améliorer/participer à ce projet ! contact: openmeca (at) yakuru.fr Bien à toi, omc.