/* Hacken Open Air */ Materialwartungstreffen
[stratum0-wiki.git] / Gesellschaftsspiel-Replikator%2FPoeppel_V1.mw
index 8f1bf8a..2cf85e4 100644 (file)
@@ -1,79 +1,87 @@
 <pre><nowiki>
 // Blindenpöppel
-// Stratum 0
-// 2014-01-21 V1.5
+// (c) Stratum 0 e.V.
+// 2014-04-14 V2.2
 // License: WTF
 
 $fn=50;
 
-Hoehe=30;
-Teiler=3;
+Hoehe=15;
+Teiler=2;
 Radius1=Hoehe/Teiler;
-RadiusM=Hoehe*(Teiler-1)/Teiler/Teiler;
-
-// 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();
-       }
+Randdicke=1;
+Ringhoehe=3;
+
+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);
+    }
+
+
+
+
+// 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
+
+
+
+// Striche vertikal
+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);
+    }
 }
 
-difference()
+
+// Quadratische Punkte horizontal
+module QuadratischePunkte(o) // Anzahl der Striche rund herum o=32
 {
-     union()
-     {
-          // Kegel erzeugen
-          color("red") cylinder(Hoehe,Radius1,Radius2);
-
-          // Rand auftragen
-          color("blue") cylinder(1,Radius1,Radius1);
-     }
-
-     // Spitze abschneiden
-     translate([0,0,Hoehe/3])        
-     color("orange")cylinder(Hoehe,Radius1,Radius2);
-
-     // Hohlraum abziehen
-     color("green") cylinder(Hoehe-1,Radius1-1,Radius2);
-};
-
-// Deckel draufsetzen
-color("black") 
-translate ([0,0,Radius1-1])
- cylinder(1,RadiusM,RadiusM);
-
-// Randverzierungen: nach Wunsch einkommentieren, oder ganz ohne
-
-// Kegel:
-//randverzierung(n=4) {
-//     rotate([0,90,0])
-//             cylinder(r1=0.5, r2=0, h=0.5, center=true);
-//}
-
-// Striche hochkant:
-//randverzierung(n=5) {
-//     rotate([0,90,0])
-//             cube([1,0.5,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);
-//     }
-//}
+    Strichlaenge2 = 1;
+    for(k = [1:o]) 
+    {
+         rotate([0,0,360/o*k])
+         {
+             translate([Radius1,0,Ringhoehe/2])  cube ([1,Strichlaenge2,1], center=true);
+         }
+    }
+
+} // end module
+
+}
 </nowiki></pre>
This page took 0.027293 seconds and 4 git commands to generate.