Defne Su Kurtoglu
Un vase:
Un vase sert à contenir des fleurs et de l’eau, tout en apportant une touche décorative. Les dimensions proposées (rayon extérieur de 50 mm, intérieur d’environ 40 mm, hauteur de 250 mm) offrent une grande capacité et une bonne stabilité. Avec une épaisseur de paroi d’environ 10 mm, ce design est robuste et bien adapté à une impression 3D solide et durable.
Le code:
$fn = 16;
curveModifier = 40;
curveModifier2 = 10;
module uncutVase(width,height,curveModifier,curveModifier2){
for(i=[0:1:height]){
translate([50,50,i]) cylinder(1,sin(i+curveModifier) * curveModifier2+width/2- curveModifier2,sin(i+1+curveModifier)* curveModifier2+width/2-curveModifier2);
}
}
module vase(width,height,wallWidth){
difference(){
uncutVase(width,height,curveModifier,curveModifier2);
translate([width/2,width/2,wallWidth]) cylinder(height,width/2-wallWidth*2.5,width/2-wallWidth*2.5);
}
}
vase(100,250,10);
La demarche:
1) Construire l’extérieur du vase en utilisant une boucle et des fonctions mathématiques pour lui donner une forme unique.
2) Creuser un cylindre intérieur pour le rendre fonctionnel et réaliste.
- Utilisation d'Idea Maker.
La deuxième objet :
Le code:
// Paramètres
taille_cube = 20; // Taille du cube extérieur
rayon_sphere = 11; // Rayon de la sphère intérieure
espace = 2; // Distance entre la sphère et le cube
rayon_trou = 8; // Rayon des trous sur les faces du cube
// Module pour le cube extérieur avec des trous
module cube_avec_trous(taille_cube, espace, rayon_trou) {
difference() {
// Cube extérieur
cube([taille_cube, taille_cube, taille_cube], center = true);
// Creux intérieur (espace pour la sphère)
cube([taille_cube - 2 * espace, taille_cube - 2 * espace, taille_cube - 2 * espace], center = true);
// Trous : Crée des trous sur les six faces du cube
for (i = [-1, 1]) {
// Trous sur les faces X
translate([i * taille_cube / 2, 0, 0])
rotate([0, 90, 0])
cylinder(h = taille_cube, r = rayon_trou, center = true);
// Trous sur les faces Y
translate([0, i * taille_cube / 2, 0])
rotate([90, 0, 0])
cylinder(h = taille_cube, r = rayon_trou, center = true);
// Trous sur les faces Z
translate([0, 0, i * taille_cube / 2])
cylinder(h = taille_cube, r = rayon_trou, center = true);
}
}
}
// Module pour la sphère intérieure
module sphere_interieure(rayon) {
translate([0, 0, 0])
sphere(r = rayon);
}
// Combinaison des modules
union() {
// Cube extérieur avec trous
cube_avec_trous(taille_cube, espace, rayon_trou);
// Sphère intérieure
sphere_interieure(rayon_sphere);
}
- Utilisation de PrusaSlicer.