<pre><nowiki>
// Blindenpöppel
// (c) Stratum 0 e.V.
-// 2014-04-14 V3.0
-// License: CC0
+// 2014-04-14 V2.2
+// License: WTF
$fn=50;
Hoehe=15;
Teiler=2;
Radius1=Hoehe/Teiler;
-
Randdicke=1;
Ringhoehe=3;
-rotate ([180,0,0])
-{
-difference()
-{
- union()
- {
- // Kegel erzeugen
- color("red") cylinder(Hoehe,Radius1,Radius1 / Teiler);
+rotate([180,0,0])
+ union()
+ {
+ difference()
+ {
+ union()
+ {
+ // Kegel erzeugen
+ color("red") cylinder(Hoehe,Radius1,Radius1 / Teiler);
+
+ // Rand auftragen
+ color("blue") cylinder(Ringhoehe,Radius1,Radius1);
+ }
+
+ // Hohlraum abziehen
+ color("green") cylinder(Hoehe-1,Radius1-1,Radius1 / Teiler -1);
+ }
+
+
+ // Randverzierungen: nach Wunsch einkommentieren, oder ganz ohne
+
+ // StricheHorizontal(20);
+ StricheVertikal(20);
+ // QuadratischePunkte(32);
+ }
- // Rand auftragen
- color("blue") cylinder(Ringhoehe,Radius1,Radius1);
- }
-// Hohlraum abziehen
-color("green") cylinder(Hoehe-1,Radius1-1,Radius1 / Teiler -1);
-}
+// Striche horizontal
+
+module StricheHorizontal(n) // Anzahl der Striche rundherum n=20
+{
+ Strichlaenge = 3;
+ for(i = [1:n])
+ {
+ rotate([0,0,360/n*i])
+ translate([Radius1,0,Ringhoehe/2])
+ cube ([1,Strichlaenge,1], center=true);
+ }
+} // end module
-// Randverzierungen: nach Wunsch einkommentieren, oder ganz ohne
-// Neu
// Striche vertikal
-// Anzahl der Striche rundherum: n
-//n=20;
-//for(i = [1:n])
-//{
-// rotate([0,0,360/n*i])
-// {
-// translate([Radius1,0,0]) cube ([1,1,Randdicke], center=false);
-// }
-//}
+module StricheVertikal(m) // Anzahl der Striche rundherum m
+{
+ for(j = [1:m])
+ {
+ rotate([0,0,360/m*j])
+ {
+ translate([Radius1,0,0]) cube ([1,1,Ringhoehe], center=false);
+ }
+}
-// Striche horizontal
-// Anzahl der Striche rundherum: n
-n=20;
-Strichlaenge = 3;
-for(i = [1:n])
+// Quadratische Punkte horizontal
+module QuadratischePunkte(o) // Anzahl der Striche rund herum o=32
{
- rotate([0,0,360/n*i])
+ Strichlaenge2 = 1;
+ for(k = [1:o])
{
- translate([Radius1,0,Ringhoehe/2]) cube ([1,Strichlaenge,1], center=true);
+ rotate([0,0,360/o*k])
+ {
+ translate([Radius1,0,Ringhoehe/2]) cube ([1,Strichlaenge2,1], center=true);
+ }
}
-}
-// Quadratische Punkte horizontal
-// Anzahl der Striche rundherum: n
-//n=32;
-//Strichlaenge = 1;
-//for(i = [1:n])
-//{
-// rotate([0,0,360/n*i])
-// {
-// translate([Radius1,0,Ringhoehe/2]) cube ([1,Strichlaenge,1], center=true);
-// }
-//}
-
-// alt
-
-
-// Kegel:
-//randverzierung(n=4) {
-// rotate([0,90,0])
-// cylinder(r1=0.5, r2=0, h=0.5, center=true);
-//}
-
-
-// Striche quer:
-//randverzierung(n=9) {
-// cube([0.5,2,0.5], center=true);
-//}
-
-// Pyramiden:
-//randverzierung(n=11) {
-// rotate([0,90,0])
-// cylinder(r1=0.5, r2=0, h=0.4, center=true, $fn=4);
-//}
-
-// Plusse:
-//randverzierung(n=12) {
-// rotate([0,90,0]) {
-// cube([1,0.3,0.5], center=true);
-// cube([0.3,1,0.5], center=true);
-// }
-//}
-}
+} // end module
-// Randverzierungen als Kindelemente übergeben
-//module randverzierung(n = 12) {
-// for(i = [1:n]) {
-// rotate([0,0,i*(360/n)])
-// translate([Radius1+0.1,0,0.5])
-// child();
-// }
-//}
+}
</nowiki></pre>