FreeCAD Engrenage dans FreeCAD

  • Auteur de la discussion douardda
  • Date de début
D

douardda

Ouvrier
Bonjour à tous,

en jouant avec FreeCAD récemment, je me suis demandé comment faire un engrenage avec. Il n'y a pas encore de fonction intégrée pour cela, à part ce script
/usr/lib/freecad/Mod/PartDesign/Scripts/Gear.py qui n'est pas vraiment satisfaisant je trouve.

J'ai un peu cherché et j'ai trouvé un blog d'un gars (que je ne retrouve pas dans l'immédiat) qui propose d'utiliser l'extension intégrée à Inkscape qui génère un engrenage... enfin pas vraiment. Les profils de dent sont constitués de 2 ou 3 segments de droite.

En cherchant un peu plus, je suis tombé sur ce papier (dont je suis surpris qu'il soit aussi récent, je pensais qu'un sujet comme ça aurait été traité depuis des lustres, mais non) qui propose une méthode d'approximation du profil en développante de cercle normal d'un engrenage en courbes de Bézier à l'aide de polynômes de Tchebychev (car la développante a le mauvais goût, pour les logiciels de CAO, d'être transcendante).

J'ai commencé à implémenter la méthode en Python, puis je suis tombé sur cette implémentation de la méthode proposée en javascript. J'ai repris mon code Python pour m'inspirer de ce code JS (car j'avais 2 ou 3 petites choses un peu foireuses dans mon code).

J'ai contacté l'auteur du code JS pour lui demander la permission de redistribuer mon bout de code (qu'il m'a donnée), mais surtout il m'a donné la référence de cette implémentation de la méthode en Python sous forme d'une extension pour Inkscape qui implémente la méthode décrite dans le papier... exactement ce que j'étais en train de faire.

gear_inkscape.png
Gear2 dans Inkscape

Bref, au final, en utilisant cette extension, je peux enfin créer de jolis engrenages dans FreeCAD (car FreeCAD sait importer de format de fichier SVG tel que généré par Inkscape).

gear_freecad.png
engrenage dans FreeCAD
gear_freecad2.png
Détail du profil de dent

Je vais peut-être essayer d'en faire une extension pour FreeCAD, si je trouve le temps et le courage.

David
 
D

Daniel13

Compagnon
Comme je n'ai plus accès à Autocad, va falloir que je m'intéresse à "Librecad".
C'est très généreux de proposer ce travail.
Cordialement,
Daniel
 
D

douardda

Ouvrier
Attention à ne pas confondre librecad (qui est un "fork" de qcad, comme on dit par chez nous) qui est un logiciel de CAO 2D et FreeCAD qui est un logiciel de CAO paramétrique 3D.

Mais sont tous les 2 libres, c'est l'essentiel :)

J'ai un peu utilisé QCad/librecad, mais j'avoue que depuis que j'ai découvert FreeCAD, et les possibilités de faire des esquisses par application de contraintes, j'ai adopté. J'avais toujours trouvé frustrant de ne pas pouvoir vraiment "dessiner" comme ça dans librecad, à coup de contraintes.

David
 
M

moissan

Compagnon
librecad/qcad est beaucoup plus proche d'autocad , tu y retrouvera les calques

freecad , c'est l'equivalent de solidwork en libre

pour les engrenage il y a une vieille methode graphique pour trouver un arc de cercle remarquablement proche de la developpante de cercle pour les engrenage de plus de 30 dent , vu dans le formulaire de mecanique generale jacques muller
 
D

Daniel13

Compagnon
Bonsoir,
J'ai jamais attaqué la 3D, mais, parfois ça me manque pour les pièces complexes.
Freecad serait un choix acceptable en libre ?
 
D

douardda

Ouvrier
Freecad serait un choix acceptable en libre ?

Probablement oui. Et l'avantage c'est que tu peux tester autant que tu veux sans engagement (ni délier les cordons de la bourse).

Donc essaye, tu verras bien si tu arrives à faire ce que tu veux.

David
 
D

douardda

Ouvrier
Hé hé il est rapide le Jürgen (un peu trop même je trouve, j'aurais aimé un peu plus de revue sur le code avant qu'il ne rentre, mais bon) :

https://github.com/FreeCAD/FreeCAD_sf_master/commit/6d1d55dc1535bde73c685b6c44e26884eab7967f

Pour ceux qui ne parlent pas le git, c'est juste que mon petit bout de code pour générer des engrenages a été ajouté dans FreeCAD (pour la prochaine release donc).

Voir

http://forum.freecadweb.org/viewtopic.php?f=9&t=5703&start=10

pour la discussion sur la fonctionnalité.

Rein à voir, mais j'aime assez bien sa signature, à Jürgen Riegel : "Stop whining - start coding!"

David
 
Dernière édition par un modérateur:

Sujets similaires

Le Prolls
Réponses
28
Affichages
1 617
Doctor_itchy
D
P
Réponses
13
Affichages
1 298
pierre 76
P
esloch
Réponses
0
Affichages
176
esloch
esloch
M
Réponses
4
Affichages
368
MakerJoGa
M
lolo
Réponses
0
Affichages
269
lolo
D
Réponses
12
Affichages
1 446
pascalp
P
3
Réponses
13
Affichages
1 337
3dOxyd
3
O
Réponses
5
Affichages
1 004
thibtib
thibtib
alainbiggun
Réponses
6
Affichages
21 413
alainbiggun
alainbiggun
P
Réponses
9
Affichages
631
pro-ms
P
Haut