From: Lulu
-// Scrabble Spielbrett -// 2014-05-15 V1.1 +// Scrabble Spielbrett +// (ein Viertel) +// 2014-05-15 V1.2 // by Stratum 0 // License: WTFPL // $fn=20; -Kante = 20; -Kantenbreite = 2; +Kante = 14; +Kantenbreite = 1; Hoehe = 4; Randhoehe = 2; Abstand=0; @@ -17,6 +18,19 @@ Zaehler=1; Viertelfeld=8; + +//Hauptprogramm + +intersection() +{ + ViertelBrett(); + cube ([Kante*(Viertelfeld+0.5), Kante*(Viertelfeld+0.5), Kante*(Viertelfeld+0.5)]); +} + + +module ViertelBrett() +{ + for (i = [1:Viertelfeld]) { for (j = [1:Viertelfeld]) @@ -56,9 +70,9 @@ for (i = [1:Viertelfeld]) } // End For I +} - - // Basisfeld erstellen +// Basisfeld erstellen module Feld(Farbe) { difference() @@ -77,14 +91,14 @@ module Punkte(AnzahlPunkte) { if (AnzahlPunkte==2) { - translate ([Kante/3, Kante/3, Hoehe]) cylinder(Randhoehe/2,2,1); - translate ([Kante/3*2, Kante/3*2, Hoehe]) cylinder(Randhoehe/2,2,1); + translate ([Kante/3, Kante/3, Hoehe-Randhoehe]) cylinder(Randhoehe/2,2,1, center=false); + translate ([Kante/3*2, Kante/3*2, Hoehe-Randhoehe]) cylinder(Randhoehe/2,2,1, center=false); } if (AnzahlPunkte==3) { - translate ([Kante/4, Kante/4, Hoehe]) cylinder(Randhoehe/2,2,1); - translate ([Kante/4*2, Kante/4*2, Hoehe]) cylinder(Randhoehe/2,2,1); - translate ([Kante/4*3, Kante/4*3, Hoehe]) cylinder(Randhoehe/2,2,1); + translate ([Kante/4, Kante/4, Hoehe-Randhoehe]) cylinder(Randhoehe/2,2,1, center=false); + translate ([Kante/4*2, Kante/4*2, Hoehe-Randhoehe]) cylinder(Randhoehe/2,2,1, center=false); + translate ([Kante/4*3, Kante/4*3, Hoehe-Randhoehe]) cylinder(Randhoehe/2,2,1, center=false); } } @@ -94,14 +108,14 @@ module Striche(AnzahlStriche) { if (AnzahlStriche==2) { - translate ([Kante/3, Kante/4, Hoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); - translate ([Kante/3*2, Kante/4, Hoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); + translate ([Kante/3-Kantenbreite/2, Kante/4, Hoehe-Randhoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); + translate ([Kante/3*2-Kantenbreite/2, Kante/4, Hoehe-Randhoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); } if (AnzahlStriche==3) { - translate ([Kante/4, Kante/4, Hoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); - translate ([Kante/4*2, Kante/4, Hoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); - translate ([Kante/4*3, Kante/4, Hoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); + translate ([Kante/4, Kante/4, Hoehe-Randhoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); + translate ([Kante/4*2, Kante/4, Hoehe-Randhoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); + translate ([Kante/4*3, Kante/4, Hoehe-Randhoehe]) cube([Randhoehe/2,Kante/2,Randhoehe/2]); } }