MathMod 11.0, modélisation et manipulation d'objets mathématiques

Posté par  (site web personnel) . Édité par Ysabeau 🧶, Benoît Sibaud, palm123 et ted. Modéré par Ysabeau 🧶. Licence CC By‑SA.
42
17
mar.
2021
Science

Je suis heureux d’annoncer la sortie de la version 11.0 de MathMod (anciennement connu sous le nom K3DSurf), le logiciel libre de modélisation et de manipulation des objets mathématiques décrits par des équations implicites ou paramétriques. Cette version contient le développement le plus excitant depuis le support des processeurs multi-cœurs : compatibilité avec OpenGLES. MathMod peut maintenant tirer pleinement parti des CPU et GPU modernes !

MathMod, développé en C++/Qt5 et sous licence GPL v3, permet de manipuler les objets mathématiques 3D/4D, de changer leurs propriétés visuelles (textures 3D, transparence, luminosité…), calculer les lignes d’intersections et exporter le résultat final sous le format de fichier OBJ.

Le module graphique de MathMod est optimisé pour les animations temps réel et la manipulation de plusieurs dizaines de surfaces (paramétriques et/ou implicites) formant un unique objet.

Capture d'écran de mathmod 11.0

Améliorations apportées par la version MathMod-11.0 :

  • réécriture complète du module graphique pour qu’il soit compatible avec OpenGLES-2.0, le standard graphique supporté par une large base d’appareils portables et ordinateurs ( voir comment MathMod-11.0 fonctionne désormais sur un RaspberryPi) ;
  • ajout de deux scripts pour la manipulation des nœuds et courbes Lissajous (pour un total de 373 scripts) ;
  • possibilité de cacher une ou plusieurs composantes d’un objet graphique.

N’hésitez pas à apporter vos réactions et vos suggestions !

Aller plus loin

  • # Infos pour compiler

    Posté par  . Évalué à 4.

    Il manque les infos pour compiler le package à partir de github, mais c'est simple. Sous Debian SID:
    1. installation de libqt5opengl5-dev et qt5-qmake (et toute la ribambelle qui vient avec; il y a peut-être besoin d'autre chose, mais qui était déjà installé chez moi)
    2. qmake (si toutes les lib sont là, ça devrait passer)
    3. make

    Par contre il doit falloir des librairies assez à jour. La compil échoue avec Ubuntu focal.

    • [^] # Re: Infos pour compiler

      Posté par  (site web personnel) . Évalué à 5.

      Bonjour,
      Pour l'installation des packages, il suffit de faire:
      1) sudo apt-get update -y
      2) sudo apt-get install -y qt5-default
      Pour les problèmes de compilation, j'imagine que c'est a cause de la version qt < 5.12 qui cause problème? Si c'est le cas, ouvrir le fichier "drawingoptions.ui" avec qtcreator et sauvegarder a nouveau devrait résoudre le problème.

      • [^] # Re: Infos pour compiler

        Posté par  (site web personnel) . Évalué à 2.

        Bonjour,

        Sur Ubuntu Focal, je confirme qu'avec c'est trois étapes, la compilation de la branche master se passe sans problème et le soft tourne nickel. Merci !

        • [^] # Re: Infos pour compiler

          Posté par  . Évalué à 2.

          Effectivement, ça marche très bien. Quelle magie opère qtcreator sur ce fichier, et que n'arrives pas à gérer qmake?

          • [^] # Re: Infos pour compiler

            Posté par  (site web personnel) . Évalué à 3.

            C'est un bug dans les récentes versions de qtcreator qui ont commencé a introduire un nouveau attribut "placeholder" non supporté par les anciennes versions de qt < 5.12 .
            Vous pouvez vous amuser a éditer le fichier "drawingoptions.ui" avec un éditeur de text et supprimer les blocs contenant l'attribut de QPalette "placeholder" mais ce n'est pas conseillé.

  • # Changer le nom ?

    Posté par  (Mastodon) . Évalué à 6.

    la sortie de la version 11.0 de MathMod (anciennement connu sous le nom K3DSurf),

    On voit de temps en temps passer des logiciels assez connus qui changent de nom, et je me demande pour quelles raisons ? Surtout que dans ce cas K3D était assez connu.

    • [^] # Re: Changer le nom ?

      Posté par  (site web personnel) . Évalué à 10.

      Bonne question.
      Il y'a plusieurs raisons a cela mais les plus évidente pour moi sur la nécessité de ce changement:
      1) Le code de K3DSurf était difficilement extensible pour le support de nouvelles fonctionnalités (dessin d'objets contenant plusieurs dizaines voir centaines de composants, textures 3D…) Son interface et scripts devaient de toute façon aussi changer pour supporter ces objets plus complexes.
      2) Le passage de qt3 a qt4/5 nécessitait a lui seul beaucoup de travail mais ne ferait qu'adapter l'interface graphique.
      3) La base d'utilisateurs de K3dSurf était grande et il m'était difficile
      de prétendre que le nouveau logiciel était K3dSurf alors que ni son interface ni les scripts utilisés étaient les mêmes.
      4) La lettre "K" dans K3DSurf faisait référence a KDE alors que K3DSurf était basé sur Qt. Aussi, le nom ne fait ni référence au dessin de surfaces mathématique ni a la modélisation…d'ou le nom MathMod.
      Il est à noté que MathMod supporte les scripts de K3DSurf a travers un convertisseur de scripts
      Pour toutes ces raisons, j'ai décidé de me lancer dans une aventure qui a pris quelques années et j'espère que les utilisateurs de K3DSurf verraient dans MathMod une progression naturelle et non une cassure avec le passé :-)

      • [^] # Re: Changer le nom ?

        Posté par  (site web personnel, Mastodon) . Évalué à 6.

        En tout cas, je trouve que le nom est meilleur car plus explicite sur ce que fait le logiciel. Et bravo pour le boulot.

        « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

        • [^] # Re: Changer le nom ?

          Posté par  . Évalué à 4.

          C'est marrant comme un nom reste en tête. Mathmod 1.0 est sorti il y a 7 ans alors que K3DSurf était au point mort depuis 7 ans aussi. Pourtant, l'ancien nom trotte encore dans nos tête.

          Ça me fait penser à la discussion récente avec ceux qui pensaient que le nom OpenOffice était oublié.

          • [^] # Re: Changer le nom ?

            Posté par  (site web personnel) . Évalué à 4.

            J'avoue que c'était très surprenant pour moi aussi au début avant que je comprenne que les besoins et les attentes des utilisateurs ne sont pas toujours les mêmes que les besoins des développeurs.
            Paradoxalement, je me réjouis encore d'avoir changé le nom du logiciel sinon une majorité d'utilisateurs de K3DSurf auraient fort probablement été mécontents des changements profonds (GUI/Scripts) apportés a leur logiciel préféré :-)

            • [^] # Re: Changer le nom ?

              Posté par  . Évalué à 4.

              À propos tu connais un peu le type d'utilisateurs ?
              Est-ce que c'est utilisé pour des cours de maths ?

              Est-ce que tu reçois des demandes, des suggestions, des patchs ?

              • [^] # Re: Changer le nom ?

                Posté par  (site web personnel) . Évalué à 3.

                C'est vraiment large comme type d'utilisateurs mais les plus nombreux seraient effectivement les étudiants en Mathématiques qui font des recherches sur les propriétés de certaines formes et qui ont besoin de faire des impressions 3D.
                Pour les patchs et les suggestions, je dirais que c'est assez rare. Par contre, je reçois pas mal de questionnement sur certaines fonctionnalités de MathMod … et surtout sur ses scripts intégrés: Au-delà des différences fonctionnelles entre MathMod et K3DSurf, MathMod a une collection de scripts qui m'a demandé probablement plus de temps de développement que le développement de MathMod lui même.
                Pour faire un parallèle, je dirais que MathMod et ses scripts forment un couple de même qu'un violon et de la musique écrite et que maitriser le développement des deux demande des compétences très différentes.
                Cette partie du programme MathMod intéresse de plus en plus de gens qui commencent a la découvrir mais malheureusement sa compréhension est certainement plus complexe que la maitrise des fonctionnalités du logiciel lui même…

                • [^] # Re: Changer le nom ?

                  Posté par  . Évalué à 3.

                  Et toi-même tu t'en sers ? qu'est-ce qui t'a poussé à l'écrire ?

                  • [^] # Re: Changer le nom ?

                    Posté par  (site web personnel) . Évalué à 3.

                    Oui je m'en sers beaucoup et les scripts intégrés sont le résultat de ce travail.
                    Pour une raison quelconque, j'ai toujours aimé voir les courbes et les surfaces mathématiques et il se trouve qu'a l'époque ou j'ai commencé a utiliser Linux, très peu de programmes libres existait sous cette plateforme (surtout en 3D)
                    Il y'avait aussi de la curiosité, l'envie de pratiquer la programmation 3D.
                    Tout ca au c'était au début mais par la suite c'était surtout la joie de partager qui a fait que ca a duré tout ce temps… :-)

                    • [^] # Re: Changer le nom ?

                      Posté par  . Évalué à 3.

                      J'ai mal posé ma question :-)
                      Tu t'en sers pour un travail mathématique, artistique (vu les magnifiques photos sur Facebook), pour enseigner, …?

                      • [^] # Re: Changer le nom ?

                        Posté par  (site web personnel) . Évalué à 4.

                        Je ne suis pas un enseignant mathématicien ni un artiste mais un peu des deux (je pense).
                        MathMod est essentiel pour moi car c'est surtout un outil ou je me sens libre et avec lequel j'exprime au mieux le fond de mes pensées.
                        Il se trouve aussi que j'aime partager avec les autres le meilleur de moi même et j'ai une conviction profonde que toute chose a plus de valeur quand on est plusieurs a l'apprécier.

  • # Export

    Posté par  (site web personnel) . Évalué à 6.

    Ça exporte les objets vers le format STL ? Je trouve que ça serait cool de pouvoir faire des impressions 3D d'objets paramétriques comme ça !

    • [^] # Re: Export

      Posté par  (site web personnel) . Évalué à 6.

      Non MathMod supporte juste le format OBJ, par contre, beaucoup de programmes 3D peuvent être utiles pour la conversion du format OBJ en d'autres formats de fichiers (Blender, MeshLab…)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.