OrganicSupportMushroom: Unterschied zwischen den Versionen

Aus /dev/tal
Wechseln zu: Navigation, Suche
(Creepy Pilze drucken)
 
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 32: Zeile 32:
 
r_cap = 6; // Basisradius der Pilzhüte
 
r_cap = 6; // Basisradius der Pilzhüte
 
n_cap = 50; // Anzahl der Pilzhüte
 
n_cap = 50; // Anzahl der Pilzhüte
 +
s_cap = 0.5; // Wandstärke der Pilzhüte
  
  
Zeile 47: Zeile 48:
 
             cylinder(r = r, h = r);
 
             cylinder(r = r, h = r);
 
         }
 
         }
         sphere(r=r-0.5);
+
         sphere(r=r - s_cap);
 
     }
 
     }
 
}
 
}
Zeile 55: Zeile 56:
 
for(i=[0:n_cap-1]) {
 
for(i=[0:n_cap-1]) {
 
     translate([rand_x[i], rand_y[i], rand_z[i]])
 
     translate([rand_x[i], rand_y[i], rand_z[i]])
    cap(scale_cap[i] * r_cap);
+
        cap(scale_cap[i] * r_cap);
 
}
 
}
cylinder(d = 20, h = 0.01); // notwendig, damit der Slicer weiß, wo die Höhe 0 ist
+
cylinder(d = 20, h = 0.01); // notwendig, damit der Slicer weiß, wo die Höhe 0 ist. Aufgrund der geringen Höhe wird dieses Objekt beim slicen übergangen.
  
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
[[Kategorie:Projekt]]

Aktuelle Version vom 19. Dezember 2024, 14:13 Uhr

 
Organic Support Mushroom

Release status: stable [box doku]

Description Creepy Pilze drucken
Author(s)  rono



„User:rono|rono“ kann nicht als Seitenname in diesem Wiki verwendet werden.
„{{{username}}}“ kann nicht als Seitenname in diesem Wiki verwendet werden.




Supports im 3D-Druck landen immer im Müll. Aber die organischen Stützen sehen doch auch gar nicht so schlecht aus. Also warum nicht mal ein bisschen damit spielen? Hier erstellen wir damit herrlich gruselig aussehende Pilzstrukturen.

Mushroom openscad.png
Mushroom slicer.png

Mit einem OpenSCAD-Script (s.u.) wird zunächst eine zufällige Anordnung von "Pilzhüten" erstellt. Dann ab damit in den Slicer und mit organischen Supports gesliced. Bei den Einstellungen muss etwas rumexperimentiert werden bis besonders hübsche Strukturen erzeugt werden.



  1. $fn = 30;
  2. x_range = 50; // Ausdehnung in x
  3. y_range = 50; // Ausdehnung in y
  4. z_range = 80; // Ausdehnung in z
  5. z_offset = 40; // unterste Höhe der Pilzhüte. Die Gesamthöhe ergibt sich aus z_offset + z_range
  6. scale_range = 0.5; // Skalierung der Pilzhüte
  7. r_cap = 6; // Basisradius der Pilzhüte
  8. n_cap = 50; // Anzahl der Pilzhüte
  9. s_cap = 0.5; // Wandstärke der Pilzhüte
  10.  
  11.  
  12. // Größe und Position der Pilzhüte erzeugen:
  13. rand_x = rands(-x_range/2,x_range/2,n_cap);
  14. rand_y = rands(-y_range/2,y_range/2,n_cap);
  15. rand_z = rands(z_offset,z_offset + z_range,n_cap);
  16. scale_cap = rands(1-scale_range/2,1+scale_range/2,n_cap);
  17.  
  18. // Pilzhut zeichnen
  19. module cap(r) {
  20.     difference(){
  21.         intersection(){
  22.             sphere(r=r);
  23.             cylinder(r = r, h = r);
  24.         }
  25.         sphere(r=r - s_cap);
  26.     }
  27. }
  28.  
  29.  
  30. //Pilzhüte anordnen
  31. for(i=[0:n_cap-1]) {
  32.     translate([rand_x[i], rand_y[i], rand_z[i]])
  33.         cap(scale_cap[i] * r_cap);
  34. }
  35. cylinder(d = 20, h = 0.01); // notwendig, damit der Slicer weiß, wo die Höhe 0 ist. Aufgrund der geringen Höhe wird dieses Objekt beim slicen übergangen.