Nous sommes le Dim 29 Juin, 2025 10:54
Supprimer les cookies

Page 1 sur 21, 2 Suivantde la CAO libre sous windows

Sur le logiciel libre en général ou un logiciel libre en particulier

Lun 06 Août, 2007 21:02

Bonjour,

Attention ce message est un peu long, et il ne sert presque à rien. Donc lisez-le seulement si vous avez du temps à perdre.

Mon besoin
Je suis prof dans le technique, et en tant que prof, je suis à la recherche d'un logiciel libre et gratuit de C.A.O. parce que ça m'embête toujours de pousser mes élèves à acheter (pirater? qui a dit pirater?) les logiciels qu'on utilise, et sur lesquels ils sont évalués.

Actuellement la solution dans mon établissement c'est SolidWorks, auquel il faut rajouter EfiCN pour la F.A.O. et éventuellement Meca3D pour les analyses mécaniques.

Je cherche donc depuis un certain (voire un temps certain) une solution qui permettrait de remplacer au moins solidworks, entre autres parce que c'est le dernier logiciel qui m'impose de rester sous windows.

Je vous présente ici le bilan de mes recherches.

Terminologie:
Pour comprendre ce qui suit je dois expliquer quelques termes et le sens que je leur donne:
- la Conception Assistée par Ordinateur c'est de pouvoir créer des pièces en 3D, de les intégrer dans un assemblage, ... en pouvant donner des dimensions qui sont modifiables ensuite. C'est donc un modeleur volumique paramétré.

- Le Dessin Assisté par Ordinateur (et pas la DAO, ou alors on parle de Dessination, ou de Dessinitude, à vous de voir) , c'est de faire avec un logiciel ce qu'on fait sur une table à dessin: tracer une vue, hachurer des zones, ... bref de la mise en plan 2D, éventuellement avec des cotes modifiables.

Ce qu'on trouve aujourd'hui

Pour l'instant voici ce que j'ai pu trouvé en logiciel libre, et ce que j'en pense:

- BRL CAD:
CAO basée sur des volumes primitifs (modeleur CSG) mais pas de possibilité de créer un volume à partir d'une esquisse (cas des Modeleurs Boundary-REPresentation) . De plus il n'y a pas arbre de construction, ce qui pédagogiquement est un vrai handicap. Je l'ai peu testé (10 minutes environ);

- Qcad:
en version démo pour la 2.1: c'est du DAO, aucun volume 3D. Pas de possibilités de modifications d'une dimension a posteriori .

- Varicad:
il n'est pas gratuit, n'a pas d'arbre de construction, et je n'ai pas trouvé de détails sur sa licence.

- PythonCAD:
c'est du D.A.O. a priori, donc sans arbre de construction. Je ne peux en dire grand chose, il ne se lance pas ("module pygtk not found" lorsque j'exécute gtkpycad.py, alors que gtk, python25 et pygtk sont installés sur windows.)

- OpenCascade:
ce n'est pas un logiciel mais un ensemble de modules basiques. Je n'ai pas réussi à faire grand chose de plus que créer un cylindre (ou d'autres volumes basiques) et à les déplacer. Les modules sont a priori de bonne qualité puisqu'ils servent si j'ai bien compris à CATIA et solidworks. Mais la société ne délivre aucune documentation abordable, puisque c'est justement leur gagne-pain de former les gens ou de développer des applications à partir de ces modules.

-Salome:
Ce n'est ni de la CAO ni du DAO, c'est un logiciel de dimensionnement, je ne l'ai pas testé.

Conclusion de toutes ces recherches: il n'y a aucun logiciel libre et gratuit qui fasse de la CAO paramétrée.
Par conséquent, il faudrait en créer une.

LA solution
En toute logique, l'Education Nationale aurait tout intérêt à ce que cela se fasse: cela limiterait les coûts d'investissement en finançant un développement plutôt que des milliers de licence. Que ce soit un produit basé sur Open Cascade par exemple, ou développé depuis le départ. Et puis cela permettrait d'ajouter des outils complémentaires (F.A.O., module de calcul, simulation, ...).

DE plus, dans le cas de l'Education, elle maitriserait ainsi mieux d'autres budgets: aujourd'hui, les systèmes vendus aux établissements sont avec des fichiers sous SolidWorks en version récente. Et Comme un vieux SolidWorks ne peut pas ouvrir un fichier dans une version ultérieure, il faut régulièrement mettre à jour la version du logiciel. Et donc changer de matériel, puisque les nouvelles versions sont trop gourmandes pour de vieilles configurations.

Mais ne rêvons pas, jamais le mammouth ne s'engagera dans un développement de logiciel à long terme. Sauf si M. le Ministre vient à lire mon message, le trouve extrêmement pertinent, et est prêt à affronter tous les lobbies industriels qui s'enrichissent du mécanisme que j'évoquais ci-dessus - Dassault Système , propriétaire de CATIA et de Solidworks, en tête - ce dont je doute.

La réalité

L'autre solution c'est de s'y coller. Et là, je veux bien essayer des trucs, mais aujourd'hui j'en suis à la page 38 du manuel d'apprentissage du python, et même si j'ai plein d'idées, j'ai du mal à croire qu'un projet aussi lourd puisse aboutir avant que je mange les pissenlits par la racine, sauf si:
- Je ne suis pas le seul à ramer dans cette galère;
- On peut recycler à bon escient certains logiciels déjà existants (par exemple Python CAD pour les esquisses 2D qui servent de base pour les créations de volume);

pourquoi ce message
J'en appelle donc à votre bon vouloir, vous peuple de framagora, framasoft et tutti quanti framawiki pour deux raisons:

- j'ai peut-être raté un logiciel qui ferait l'affaire, donc si vous en connaissez ne me laissez pas dans l'ignorance;

- Si j'ai bien recensé ce qu'on trouve aujourd'hui, je crois que créer ce logiciel de CAO paramétrée libre et gratuit est possible et que ce pourrait être une avancée aussi importante qu'Open Office dans son domaine.
Mais je suis loin d'être assez compétent pour y parvenir tout seul. Donc si quelqu'un a déjà des capacités dans le domaine, a déjà un embryon de logiciel, ou même si vous êtes comme moi ignorant mais que vous ressentez le même besoin, faites-le savoir, que je me sente moins seul.

Par contre si je suis le seul à croire que ce logiciel serait utile à quelqu'un, oubliez-moi, ne me dîtes pas que je me trompe, laissez-moi m'emmurer dans mes délires.

Encore tous les voeux de bonheur à frama...truc c'est vraiment génial ce que vous faites.
xavier01

Messages : 3

Mar 07 Août, 2007 01:03

Juste pour te dire que :
1) j'ai cherché un produit libre qui fonctionne il y à 1 an environ pour un de mes client et je suis
rentré bredouille !
2) effectivement l'idéal serait que l'Éducation Nationale lance un projet de ce type, à mon avis
cela ne prendrais pas trop longtemps pour avoir une communauté prête à s'investir.
3) par contre je ne pense pas que l'impératif soit que cela fonctionne sous Windows :wink:
Marnic

Avatar de l’utilisateur
Messages : 1724
Géo : Prémian (34 hérault)

Mar 07 Août, 2007 03:21

Bonjour,

Voilà un autre message long qui ne sert presque à rien. :) :wink:

Il me semble qu'un moteur de CFAO assez bon et assez pro avait été libéré mais je ne retrouve plus le projet. Ca fait longtemps maintenant que j'avais trouvé ça, je vais refaire des recherches.

Si je ne retrouve plus la perle rare, plutôt que de repartir de A à Z, pourquoi ne pas partir d'un soft déjà existant, personnaliser l'interface et l'améliorer ou y ajouter des plugins...

Pour ajouter un peu à ce que tu as déjà écrit, ce qui me semble important par rapport à un soft de 3D orienté artistique, c'est qu'un logiciel de CFAO, c'est avant tout un soft qui respecte des primitives de formes réalistes et des opérations réalistes de moulage, d'ajustage, de pliage, d'usinage, de placement et d'assemblage, etc...le plus proche possible des méthodes exploitées dans un métier précis.

On peut aussi parler d'une bonne segmentation et une bonne orientation des différentes phases du travail de conception : une partie de design 2D-3D avec des traits à la volée, la conception 2D-3D de pièces à partir du design, un système de contraintes et d'assemblage intelligent, un système de tracage de plan aux normes et une partie de simulation pour le mouvement, l'articulation, l'usure, le frottement, la torsion, l'échauffement, les contacts, etc...et une partie de test de montage.

Plus la logique et la base d'organisation du résultat par opérations, par fonctions, par objets, par matériaux et par métier (aviation, automobile, tissage, moulage, chaoutchouc,...).

Plus des normes de pièces,...plus une plétore de petits outils plus astucieux les uns que les autres.

En revanche, pour avoir bossé chez DS sur CATIA V5 a la base la CAO, ça reste un moteur 2D ou 3D. Le reste, c'est essentiellement une question d'ergonomie, d'interface et de classification.

D'ailleurs je trouve les interfaces des soft de CAO 1000 fois plus productive que les soft de 3D "artistique" pour arriver à faire quelque chose de "beau". Ca peut choquer mais je trouve CATIA bien plus intuitif que 3DS ou autre maya, rhino,etc...Sauf pour les matériaux fins, liquides, souples et mous.

Conclusion, si on veut faire un soft de CAO GPL, on peut, sans réinventer la roue, participer au travail d'une communauté déjà préexistante, déjà stable et compétente.

En toute logique, on pourrait regarder ce que Blender propose, et de son système d'extention (avec du Python...). Trier, simplifier et réorganiser tout ce qu'il y a dedans, et ajouter une logique d'arbre de parties, d'assemblages (et de fonctions et d'opérations), c'est déjà plus envisageable que de tout refaire. Si on arrive déjà à proposer des ajouts à blender qui ergonomiquement permettent de faire quelque chose de plus proche de la CAO, à mon avis on aura déjà fait un sacré travail.

Il faut voir aussi si un outils comme blender est capable de supporter la charge de milliers de pièces, de parties,etc...

Selon une autre logique, on peut ajouter des fonctionnalités manquantes aux soft CAO GPL déjà existants (si on sait être patient et programmer), ou bien partir d'un moteur CAO "brut" et ne travailler que sur l'interface, ou encore soumettre les fonctionnalités à la communauté de programmeur, ou faire des documentations, etc...

Bref, l'étendu des possibles à partir du travail déjà existant, et d'une communauté existante, est déjà très large, même si l'outils idéal n'existe peu être pas encore.

Au plaisir.

Au passage j'ai une question : On ne pourrait pas faire avancer les choses dans cette direction en associant le travail de vues dans un soft de modélisation 3D, comme blender, pour le travail des parties et l'affichage, et un moteur de base de donnée, comme postgresql, pour stocker, organiser et retrouver la logique de conception ?
pbouge

Messages : 2

Mar 07 Août, 2007 13:40

Ca ne correspond pas exactement aux attentes exprimées, mais c'est une solution complète et gratuite...
Ca ne tourne pas sous Windows, mais c'est un live-DVD: CAELinux
http://www.caelinux.com/CMS/index.php.
Basé sur Salome et code ASTER... le tout étant déjà paramétré et prêt à l'emploi dans le live-DVD.

Bon test
Droopy_37

Messages : 72
Géo : Tours

Mar 07 Août, 2007 19:25

Historiquement, en tout cas dans mon académie, nous utilisions solidconcept. C'était développé par une petite boite, il y avait des bugs, mais cela suffisait pour l'usage que l'on en avait. Aujourd'hui, Solidconcept existe toujours, il est la propriété de la société SESCOI, très connue pour son logiciel professionnel de FAO WorkNC.
Après, il y a eu le "choix" de Solidworks, un logiciel professionnel et performant, dont le professeur moyen n'utilise qu'une infime partie des capacités. Solidworks et sa non compatibilité descendante, qui oblige l'Education Nationale à une course en avant coûteuse, afin d'avoir toujours la dernière version, pour pouvoir ouvrir les fichiers de certains examens, réalisés quasi-systématiquement avec la version la plus récente, ce qui oblige tout le monde à évoluer... Si déjà l'Education Nationale faisait pression sur Dassault Système pour obliger à une certaine compatibilité entre version : un cylindre reste défini par les mêmes paramètres (position du centre, diamètre, longueur), et ce, qu'elle que soit la version du logiciel, non ? Avec la publicité que l'Education Nationale fait pour ce logiciel (des milliers d'élèves formés sur ce logiciel, qui demanderont à leur patron d'acheter le même logiciel une fois en entreprise), c'est un minimum.
L'an prochain, ça change encore, vers Topsolid en section BTS productique...

Alors, oui, une solution libre de CAO/FAO performante serait très utile. Cela éviterait de devoir reprendre tous nos cours à chaque changement de logiciel, et on pourrait donner ce logiciel librement aux élèves, notamment. OpenCascade semble pouvoir être un bon support (logiciel libre) pour démarrer.

D'ailleurs, il existe déjà un simulateur mécanique libre : Decade. Il s'interface avec... Solidworks et Catia !
Dans le domaine de la conception d'une liaison pivot par élément roulant, il faut aussi signaler Pyvot, codé en langage Python

Je signale aussi Alibre design, une solution propriétaire et payante, qui semble sympathique (avec simulateur mécanique et tutti quanti).

Mais il y a une certaine inertie. Des intérêts cachés peut-être... Il suffit de regarder la promotion faite pour TPWorks ! Mon inspecteur me demande, dans son rapport d'inspection, d'utiliser TPWorks, bien que je présente déjà mes TP "Tpworks like", sous forme de page html standard (réalisée avec un logiciel libre, Kompozer, version debuggé de nvu) : c'est pas gagné !
dubdub

Messages : 870

Mar 07 Août, 2007 21:37

Bien je suis très content de voir que je ne suis pas le seul à chercher, à avoir cherché, et/ou à ressentir ce besoin (non je ne parle du besoin pressant qui vient après la énième bière, celui-là je sais que je ne suis pas le seul à le connaître).

Pour te répondre restouble je suis d'accord qu'il n'y a aucune raison d'imposer Windows , sauf que si on veut que les gens (notamment les profs) l'utilisent vraiment, il faut qu'il ne les oblige pas à changer de système d'exploitation.

pbouge,
tu as raison j'avais oublié de citer blender et les autres logiciels de modélisation 3D à visée artistiques, alors qu'ils comprennent les fonctions de création de volume nécessaires à toute CFAO.

En fait une solution serait de rajouter deux particularités à Blender (ou autre):
- un historique des opérations qui ont permis de créer le volume courant (ce qui est décrit dans l'arbre de construction par les CAO);
- une possibilité de paramétrer les dimensions choisies, pour les modifier notamment;
Il reste aussi à créer toute la partie contraintes, en 2D comme en 3D, et à vérifier comme tu le soulignes ses capacités à gérer des assemblages.

Par contre tu me parais très ambitieux dans ta vision d'un logiciel de CAO: je m'en fais peut-être une montagne, mais avant de créer une application se déclinant selon les différents corps de métier, il me semble qu'un logiciel qui permette de créer:
- des pièces = volumes et surfaces par extrusion, révolution, et balayage d'une courbe par un profil, congés, chanfreins, et opérations booléennes avec les entités créées;
- des assemblages avec les pièces créées, en gérant des contraintes pas trop tarabiscotées;
- des mises en plan assez propres même dans ces cas complexes (normalisées, qui puissent être des coupes développées, ...)
serait déjà une excellente base de départ.

Ce que je crains avec Blender c'est la qualité des algorithmes, parce que les 3D à vocation artistique sont peu regardantes habituellement. Essayez de créer un fichier STL ou VRML sous 3DS et ouvrez-le dans une CAO pour en calculer par exemple le volume, et vous serez d'accord avec moi.
Mais peut-être que blender est de meilleure qualité, ou qu'il peut être amélioré.

Ta question sur l'utilisation d'une base de données pour la gestion des infos brutes et d'un moteur + visualiseur 3D existant pour l'affichage me paraît un excellent compromis. Mais je ne peux pas répondre faute de compétences.

Droopy_37, d'après le site internet de CAELinux, ce logiciel part d'un fichier IGES ou STEP, et assure des calculs. C'est donc une bonne solution en complément d'un logiciel de CAO, mais il manque toujours le moyen de créer les volumes sur lesquels CAELinux calcule.

dubdub , je crois que le passage de SolidConcept à Solidworks fut une bonne chose. Il n'y a qu'a consulter leurs sites internet respectifs pour voir que leur portée industrielle est très différente.

Par contre comme toi j'assiste à l'effroyable arrivée de TpWorks . Pour les non-profs, il s'agit d'un éditeur HTML, qui n'apporte rien par rapport à d'autres solutions, mais qui coûte 2000€ pour un lycée sans compter les modules complémentaires (qui sont juste des cours en html sur un thème donné) lesquels sont facturés 300€ chacun. Je ne comprends toujours pas pourquoi nos inspecteurs nous l'imposent, mais je suis sûrement trop bête. Je parle de tout ça même si ça n'a rien à voir avec la CAO parce quand je vois un truc pareil s'imposer en face de solution performantes, gratuites et documentées (Nvu, Komposer et autres) je me dis que pour remplacer SolidWorks faut vraiment un bon logiciel et beaucoup de chances.

Reste maintenant à faire des choix:
- qui est prêt à se lancer dans un travail sur le développement d'un tel logiciel? (ne répondez pas tous en même temps)
- qui parmi les volontaires s'y connaît en modeleur volumique?
- comment s'organiser?

Je peux me lancer en créant un joomla sur le sujet, on verra bien si ça fédère une communauté.

Dès que c'est fait, je viendrai donner l'adresse ici.

D'ici là continuez à donner vos idées, toutes vos réactions montrent que le projet est prometteur.
xavier01

Messages : 3

Mer 08 Août, 2007 17:08

La distribution CAELinux permet aussi de générer des volumes. Je l'avais expérimenté...
Pour s'en convaincre, allez jeter un coup d'oeil à la section "tutorials". On peut mener un etude mecanique complète: design, maillage, calcul, pré- et post-traitement.
D'autre part, ces tutoriaux sont riches en captures d'écran et permettent de se rendre compte de l'ergonomie de l'outil.
Droopy_37

Messages : 72
Géo : Tours

Mer 08 Août, 2007 17:21

si une structure se déploie, il y a de forte chance que cela fonctionne
voir pourquoi pas, en faire un projet universitaire (voir le succès de VLC)
Dernière édition par Marnic le Jeu 09 Août, 2007 09:23, édité 1 fois au total.
Marnic

Avatar de l’utilisateur
Messages : 1724
Géo : Prémian (34 hérault)

Jeu 09 Août, 2007 07:51

Je signale Cycas, logiciel propriétaire de cao architecturale, qui est proposé en version pour linux : c'est suffisament rare pour être signalé.
Existe en version limitée, pour test.
dubdub

Messages : 870

Jeu 09 Août, 2007 09:59

Je suis une véritable bille en programmation donc ce que je vais dire n'est peu être pas vrai, mais il me paraît difficile d'intégrer un arbre de construction (que je considère paramétrique, sinon il n'a pas d'interêts) dans un logiciel de type blender.

Et ce parce qu'avant d'être généralement considérés comme "volumique" ou "surfaciques", les logiciels de CAO sont avant tout définis par leur méthode de description de la géométrie : l'objet est soit défini par ses limites géométriques, dans l'espace, soit par l'historique de sa construction. (J'avais trouvé un document explicite la dessus, si je remet la main dessus je vous donne le lien).

Donc un logiciel qui a été développé selon un principe de description de la géométrie, doit difficilement accepter l'autre type de description. Mais ça semble faisable, d'une façon ou d'une autre puisque Catia dans sa version V5R16 intègre ce qu'ils appellent un surfacique maillé, cad une surface nurbs définie par des points de contrôles plutôt que par les courbes de définitions.

Rhino, quand à lui, commence à integrer les déformations UDT et un semblant d'historique (en fait il recalcule une surface en fonction des courbes de définitions, jusqu'a ce que la surface soit modifiée; le contrôle est alors perdu)

A savoir aussi que le paramétrique convient mieux au la modélisation volumique (je suppose que c'est simplement dû au fait qu'il y ai moins de paramètres à prendre en compte dans l'historique).


Un point me paraît être une autre difficulté importante dans l'intégration d'un logiciel déjà existant d'un arbre paramétrique :

un logiciel surfacique nurbs (type rhino) permet de créer des surfaces complexes à partir de courbes de contrôle , ce qui permet une excellent maîtrise de la géométrie de la surface, parrallèlement à la complexité des surface. Disons qu'on connais virtuellement l'emplacement de chaque point de la surface que l'on crée; cela se fait au dépend de la "maniabilité" de la surface. Ce tyoe de logiciel est à mon avis le plus polyvalent, il est entre le volumique et le surfacique maillé et donne la possibilité de faire de tout (mais plus difficilement :p )

un logiciel type blender, maya, etc, lui, décrit sa surface par la méthode "surfacique maillé" : on connait l'emplacement de quelques points (les coordonnées des polys), et le logiciel fait le reste. On gagne en maniabilité, en poids et en ressources necessaires, on perd beaucoup en définition de la surface. Ca convient donc pour des formes organiques , mais dans l'optique de production d'un objet ça peut être plus embettant, puisqu'on est, virtuellement, ignorant de la définition exacte de la surface. (exemple : si je veux faire un ajustage de deux pièces, je ne suis pas certain que les deux surfaces s'épouseront parfaitement)

un logiciel volumique (type solidworks, bien qu'il integre le surfacique depuis son rachat par dassault), permet d'etre certain de la validité de la géométrie, parrallelement à la maitrise dimensionnelle. Il bénéficie généralement d'un arbre paramétrique et permet de faire des surfaces simples, c'est plus difficile pour les surfaces complexes.



Il y a des ponts entre ces catégories un peu caricaturées de logiciels : un surfacique type rhino peu bénéficier d'un arbre paramétrique ; ou bien de déformations type UDT qui se rapprochent des surfaciques maillés . Un volumique peut intégrer (genre solidworks) les fonctions surfaciques avancées. Mais généralement, l'utilisation d'un type de modélisation rend impossible les autres méthodes : je peux partir d'une surface paramétrée, mais ds que je la modifie en UDT, je perd la définition première de la surface.


Ceci dit, Catia (je n'en connais pas d'autre ayant réussi jusqu'a présent) sais faire les 3, en gardant les définitions paramétriques des objets qui en ont, donc c'est quelque chose de possible :p J'imagine que la description des objets doit être tès complexe.

A noter également que les softs type Catia ont pour la plupart été développés sur unix, et qu'il est possible moyennant finance de le porter sur l'OS de votre choix (d'apres le commercial, la demande n'est pas assez forte pour qu'ils investissent eux même) Quelques autres aussi peuvent le faire, mais attendent d'être sûrs du retour sur investissement. Il parait que Renault utilise catia sur freebsd, et certaines rumeurs (ce sont des rumeurs :p ) que les devs de catia l'utiliseraient déjà sur linux... a prendre avec des pincettes.

Mais bon, catia sur linux ca ne fait pas un logiciel libre, alors si j'ai pu éclairer des gens qui savent programmer sur certains points de la CAO, j'en serai heureux :)


PS: j'ai trouvé ça sur wikipédia, en cherchant sans succes la doc sur la définition de la géométrie : http://fr.wikipedia.org/wiki/Brlcad
Shimegi

Messages : 524
Géo : Tours

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit