« Presentation openscad : Etape 3 » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 16 : | Ligne 16 : | ||
Prenons un cas simple en deux dimensions pour illustrer visuellement cette somme. | Prenons un cas simple en deux dimensions pour illustrer visuellement cette somme. | ||
Supposons que le premier objet soit : | Supposons que le premier objet soit : | ||
[[Fichier:Oscc etape3b.png|200x200px|vignette|centre]] | |||
et que le second objet soit : | |||
[[Fichier:Oscc etape3c.png|200x200px|vignette|centre]] | |||
Le second objet va balayer la surface du premier objet : | |||
[[Fichier:Oscc etape3d.png|200x200px|vignette|centre]] | |||
ce qui va entrainer une surface de balayage pour chaque point, qui misent bout a bout, vont entrainer une surface de balayage globale : | |||
[[Fichier:Oscc etape3f.png|200x200px|vignette|centre]] | |||
C'est l'union de ces surfaces de balayage qui ca donner l'objet correspondant a la somme de minkowski des 2 objets de depart : | |||
[[Fichier:Oscc etape3e.png|200x200px|vignette|centre]] | |||
== Resultat de l'etape 3 == | == Resultat de l'etape 3 == |
Version du 22 août 2014 à 18:14
Etape 3 : la fonction de minkowski
Pour cette etape, nous allons ajouter l'element suivant aux elements deja crees :
Pour pouvoir realiser cet objet, nous allons utiliser la fonction minkowski()
de openscad.
Cette fonction correspond a une somme de minkowski entre 2 objets.
A quoi correspond une somme de minkowski ?
Elle correspond a la trace d'un balayage du premier objet par le second.
Prenons un cas simple en deux dimensions pour illustrer visuellement cette somme. Supposons que le premier objet soit :
et que le second objet soit :
Le second objet va balayer la surface du premier objet :
ce qui va entrainer une surface de balayage pour chaque point, qui misent bout a bout, vont entrainer une surface de balayage globale :
C'est l'union de ces surfaces de balayage qui ca donner l'objet correspondant a la somme de minkowski des 2 objets de depart :
Resultat de l'etape 3
Le code apres l'etape 3 est donc le suivant :
$fn=60;
union()
{
intersection()
{
translate([-10,-10,-10]) cube([20,20,20]);
sphere(r=12);
}
cylinder(r=7.5, h=20);
minkowski()
{
translate([-10,-10,-25]) cube([20,20,20]);
cylinder(r=2,h=1);
}
}
Ce qui nous donne cet objet :