X-Git-Url: https://git.rohieb.name/stratum0-wiki.git/blobdiff_plain/4a332ac59881dc673f6b4a95d3425619f727b593..9fee64e950eb349c750e4f6ce22755051e3ed3c2:/Gesellschaftsspiel-Replikator%2FDomino_V1.mw diff --git a/Gesellschaftsspiel-Replikator%2FDomino_V1.mw b/Gesellschaftsspiel-Replikator%2FDomino_V1.mw index 185d6715c..68f196402 100644 --- a/Gesellschaftsspiel-Replikator%2FDomino_V1.mw +++ b/Gesellschaftsspiel-Replikator%2FDomino_V1.mw @@ -1,5 +1,17 @@ -
+[[Datei:Blinden-Domino.png|thumb|Blinden-Domino]] + +[[Datei:Stratum0 Dominosteine V1.png|thumb|Dominosteine für Blinde]] + + +==Regeln== +* [http://www.pegasus.de/fileadmin/_downloads/_regeln/Domino_Dominoes.pdf http://www.pegasus.de/fileadmin/_downloads/_regeln/Domino_Dominoes.pdf] +* Wikipedia: [http://de.wikipedia.org/wiki/Domino http://de.wikipedia.org/wiki/Domino] +* Online-Spiel und Regeln: [http://www.brettspielnetz.de/spielregeln/domino.php http://www.brettspielnetz.de/spielregeln/domino.php] + +== OpenSCAD Code für Steine == + +// Blindendomino // 2014-01-22 V1 @@ -21,88 +33,180 @@ Punkthoehe=Kerbe; Punktbasis=2; Punktspitze=0; Punktabstand=4; +Rechts=1; +Links=-1; +Abstand=2; +//MyDomino(); -intersection() -{ -sphere (LangeKante*0.8); -MyDomino(); -} -module MyDomino() +//module MyDomino() { -CutDomino(); -AddPoints(); -} + + +for (i = [1:6]) + { + for (j = [1:6]) + { + translate([(LangeKante+Abstand)*i+Abstand,(KurzeKante+Abstand)*j,0]) CutDomino(); + translate([(LangeKante+Abstand)*i+Abstand,(KurzeKante+Abstand)*j,0]) CreateValue("purple", i, Links); + translate([(LangeKante+Abstand)*i+Abstand,(KurzeKante+Abstand)*j,0]) CreateValue("pink", j, Rechts); + } // End For J + } // End For I +} // End Module module CutDomino() { difference() -{ + { // Basisdomino erstellen cube([LangeKante, KurzeKante, Hoehe], center=true); // Ausschnitt für Einkerbungen erstellen // Rechte Seite - color("red") translate ([LangeKante/4,0,Kerbe]) cube([Ausschnitt, Ausschnitt,Kerbe],center=true); + color("lightblue") translate ([LangeKante/4,0,Kerbe]) cube([Ausschnitt, Ausschnitt, Kerbe*2],center=true); // Ausschnitt für Einkerbungen erstellen // Linke Seite - color("blue") translate ([-LangeKante/4,0,Kerbe]) cube([Ausschnitt, Ausschnitt,Kerbe],center=true); - - + color("blue") translate ([-LangeKante/4,0,Kerbe]) cube([Ausschnitt, Ausschnitt,Kerbe*2],center=true); -};// End Difference + };// End Difference }; // End Module + // Punkte hinzufügen +module CreateValue(Farbe, Value, Seite) +{ + if (Value==1) + { + punkt(Farbe, 8, Seite); + } + + if (Value==2) + { + punkt(Farbe, 1, Seite); + punkt(Farbe, 6, Seite); + } + + if (Value==3) + { + punkt(Farbe, 1, Seite); + punkt(Farbe, 8, Seite); + punkt(Farbe, 6, Seite); + } + + if (Value==4) + { + punkt(Farbe, 1, Seite); + punkt(Farbe, 3, Seite); + punkt(Farbe, 4, Seite); + punkt(Farbe, 6, Seite); + } + + if (Value==5) + { + punkt(Farbe, 1, Seite); + punkt(Farbe, 3, Seite); + punkt(Farbe, 8, Seite); + punkt(Farbe, 4, Seite); + punkt(Farbe, 6, Seite); + } + + if (Value==6) + { + punkt(Farbe, 1, Seite); + punkt(Farbe, 2, Seite); + punkt(Farbe, 3, Seite); + punkt(Farbe, 4, Seite); + punkt(Farbe, 5, Seite); + punkt(Farbe, 6, Seite); + + } +}; + + + + + +module punkt(Farbe,PunktPos,Seite) +{ -module AddPoints(){ +if (PunktPos==1) + { + color(Farbe) + translate([LangeKante/4*Seite-Punktabstand,Punktabstand,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -// Seite Z: 1 -color("orange") -translate([-LangeKante/4,0,Kerbe]) -cylinder(Punkthoehe,Punktbasis,Punktspitze); +if (PunktPos==2) + { + color(Farbe) + translate([LangeKante/4*Seite-Punktabstand,0,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -// Seite -Z: 6 -color("cyan") -translate([LangeKante/4+Punktabstand,0,Kerbe]) +if (PunktPos==3) + { + color(Farbe) + translate([LangeKante/4*Seite-Punktabstand,-Punktabstand,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -cylinder(Punkthoehe,Punktbasis,Punktspitze); -color("white") -translate([LangeKante/4-Punktabstand,0,Kerbe]) +if (PunktPos==4) + { + color(Farbe) + translate([LangeKante/4*Seite+Punktabstand,+Punktabstand,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -cylinder(Punkthoehe,Punktbasis,Punktspitze); -color("green") -translate([LangeKante/4+Punktabstand,Punktabstand,Kerbe]) +if (PunktPos==5) + { + color(Farbe) + translate([LangeKante/4*Seite+Punktabstand,0,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -cylinder(Punkthoehe,Punktbasis,Punktspitze); -color("blue") -translate([LangeKante/4-Punktabstand,Punktabstand,Kerbe]) +if (PunktPos==6) + { + color(Farbe) + translate([LangeKante/4*Seite+Punktabstand,-Punktabstand,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -cylinder(Punkthoehe,Punktbasis,Punktspitze); -color("yellow") -translate([LangeKante/4+Punktabstand,-Punktabstand,Kerbe]) +if (PunktPos==7) + { + color(Farbe) + translate([LangeKante/4*Seite,Punktabstand,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -cylinder(Punkthoehe,Punktbasis,Punktspitze); -color("black") -translate([LangeKante/4-Punktabstand,-Punktabstand,Kerbe]) +if (PunktPos==8) + { + color(Farbe) + translate([LangeKante/4*Seite,0,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -cylinder(Punkthoehe,Punktbasis,Punktspitze); +if (PunktPos==9) + { + color(Farbe) + translate([LangeKante/4*Seite,-Punktabstand,Kerbe*0]) + cylinder(Punkthoehe,Punktbasis,Punktspitze,center=yes); + } -} +};