Gesellschaftsspiel-Replikator/Connect V1: Unterschied zwischen den Versionen
Aus Stratum 0
Lulu (Diskussion | Beiträge) (Seite angelegt: Anlegespiel Connect) |
Lulu (Diskussion | Beiträge) (Erweitert) |
||
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<pre> | <pre> | ||
− | |||
// Rivers, Roads and Rails / Contact | // Rivers, Roads and Rails / Contact | ||
Zeile 15: | Zeile 14: | ||
RadiusC=Kante*3/4; | RadiusC=Kante*3/4; | ||
Strichdicke=8; | Strichdicke=8; | ||
− | Kachelnummer=5; | + | Kreisdicke=Strichdicke*1.5; |
+ | Kachelnummer=27; | ||
+ | |||
+ | // Es fehlen noch die Teile, wo eine Farbe endet und eine andere beginnt. | ||
+ | |||
+ | // 1 rot: Leer schwarz: Leer blau: kleine Kurve Normalteil | ||
+ | // 2 rot: Leer schwarz: Leer blau: Große Kurve Normalteil | ||
+ | // 3 rot: Leer schwarz: Leer blau: Geradeaus Normalteil | ||
+ | // 4 rot: Leer schwarz: Leer blau: Endet Normalteil | ||
+ | // 5 rot: Leer schwarz: Kurve gen rot blau: Leer Normalteil | ||
+ | // 6 rot: Leer schwarz: Kurve gen rot blau: kleine Kurve Gabel | ||
+ | // 7 rot: Leer schwarz: Kurve gen rot blau: Große Kurve Normalteil | ||
+ | // 8 rot: Leer schwarz: Kurve gen rot blau: Geradeaus Weiche | ||
+ | // 9 rot: Leer schwarz: Kurve gen rot blau: Endet Normalteil | ||
+ | // 10 rot: Leer schwarz: Kurve gen blau blau: Leer Normalteil | ||
+ | // 11 rot: Leer schwarz: Kurve gen blau blau: kleine Kurve Normalteil | ||
+ | // 15 rot: Leer schwarz: Geradeaus blau: Leer Normalteil | ||
+ | // 16 rot: Leer schwarz: Geradeaus blau: kleine Kurve Weiche | ||
+ | // 18 rot: Leer schwarz: Geradeaus blau: Geradeaus Normalteil | ||
+ | // 19 rot: Leer schwarz: Geradeaus blau: Endet Normalteil | ||
+ | // 20 rot: Leer schwarz: Endet blau: Leer Normalteil | ||
+ | // 21 rot: Leer schwarz: Endet blau: kleine Kurve Normalteil | ||
+ | // 23 rot: Leer schwarz: Endet blau: Geradeaus Normalteil | ||
+ | // 25 rot: kleine Kurve schwarz: Leer blau: Leer Normalteil | ||
+ | // 26 rot: kleine Kurve schwarz: Leer blau: kleine Kurve Weiche | ||
+ | // 27 rot: kleine Kurve schwarz: Leer blau: Große Kurve Normalteil | ||
+ | if (Kachelnummer==27) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusC,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 28 rot: kleine Kurve schwarz: Leer blau: Geradeaus Weiche | ||
+ | if (Kachelnummer==28) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 29 rot: kleine Kurve schwarz: Leer blau: Endet Normalteil | ||
+ | if (Kachelnummer==29) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([-RadiusA,-RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 30 rot: kleine Kurve schwarz: Kurve gen rot blau: Leer Normalteil | ||
+ | if (Kachelnummer==30) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
+ | } | ||
+ | }; | ||
+ | // 31 rot: kleine Kurve schwarz: Kurve gen rot blau: kleine Kurve Gabel | ||
+ | if (Kachelnummer==31) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 32 rot: kleine Kurve schwarz: Kurve gen rot blau: Große Kurve Normalteil | ||
− | if (Kachelnummer== | + | |
+ | if (Kachelnummer==32) | ||
{ | { | ||
difference() | difference() | ||
{ | { | ||
CreateTile("white"); | CreateTile("white"); | ||
− | translate ([Kante/2,Kante/2,0]) CreateArch(RadiusA," | + | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); |
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusC,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 33 rot: kleine Kurve schwarz: Kurve gen rot blau: Geradeaus Weiche | ||
+ | if (Kachelnummer==33) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
+ | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 34 rot: kleine Kurve schwarz: Kurve gen rot blau: Endet Normalteil | ||
+ | if (Kachelnummer==34) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
+ | translate ([-RadiusA,-RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 35 rot: kleine Kurve schwarz: Kurve gen blau blau: Leer Gabel | ||
+ | // 36 rot: kleine Kurve schwarz: Kurve gen blau blau: kleine Kurve Gabel | ||
+ | // 39 rot: kleine Kurve schwarz: Kurve gen blau blau: Endet Gabel | ||
+ | // 40 rot: kleine Kurve schwarz: Geradeaus blau: Leer Weiche | ||
+ | // 41 rot: kleine Kurve schwarz: Geradeaus blau: kleine Kurve Kreuzung | ||
+ | // 43 rot: kleine Kurve schwarz: Geradeaus blau: Geradeaus Weiche | ||
+ | // 44 rot: kleine Kurve schwarz: Geradeaus blau: Endet Weiche | ||
+ | // 45 rot: kleine Kurve schwarz: Endet blau: Leer Normalteil | ||
+ | // 48 rot: kleine Kurve schwarz: Endet blau: Geradeaus Weiche | ||
+ | // 49 rot: kleine Kurve schwarz: Endet blau: Endet Normalteil | ||
+ | // 50 rot: Große Kurve schwarz: Leer blau: Leer Normalteil | ||
+ | if (Kachelnummer==50) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([RadiusA*2,RadiusA*2,Hoehe-Kerbe]) CreateArch(RadiusC,"red"); | ||
+ | } | ||
+ | }; | ||
+ | // 51 rot: Große Kurve schwarz: Leer blau: kleine Kurve Normalteil | ||
+ | // 60 rot: Große Kurve schwarz: Kurve gen blau blau: Leer Normalteil | ||
+ | // 61 rot: Große Kurve schwarz: Kurve gen blau blau: kleine Kurve Normalteil | ||
+ | if (Kachelnummer==61) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([Kante/2,Kante/2,0]) CreateArch(RadiusA,"blue"); | ||
translate ([Kante/2,Kante/2,0]) CreateArch(RadiusB,"black"); | translate ([Kante/2,Kante/2,0]) CreateArch(RadiusB,"black"); | ||
− | translate ([Kante/2,Kante/2,0]) CreateArch(RadiusC,"blue"); | + | translate ([Kante/2,Kante/2,0]) CreateArch(RadiusC,"red"); |
+ | } | ||
+ | }; | ||
+ | // 71 rot: Große Kurve schwarz: Endet blau: kleine Kurve Normalteil | ||
+ | // 75 rot: Geradeaus schwarz: Leer blau: Leer Normalteil | ||
+ | // 76 rot: Geradeaus schwarz: Leer blau: kleine Kurve Weiche | ||
+ | if (Kachelnummer==76) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); | ||
+ | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 78 rot: Geradeaus schwarz: Leer blau: Geradeaus Normalteil | ||
+ | // 79 rot: Geradeaus schwarz: Leer blau: Endet Normalteil | ||
+ | // 86 rot: Geradeaus schwarz: Kurve gen blau blau: kleine Kurve Weiche | ||
+ | if (Kachelnummer==86) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); | ||
+ | translate ([-RadiusB,-RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
+ | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 90 rot: Geradeaus schwarz: Geradeaus blau: Leer Normalteil | ||
+ | if (Kachelnummer==90) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); | ||
+ | } | ||
+ | }; | ||
+ | |||
+ | // 91 rot: Geradeaus schwarz: Geradeaus blau: kleine Kurve Weiche | ||
+ | if (Kachelnummer==91) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); | ||
+ | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | ||
} | } | ||
}; | }; | ||
− | if (Kachelnummer== | + | // 93 rot: Geradeaus schwarz: Geradeaus blau: Geradeaus Normalteil |
+ | if (Kachelnummer==93) | ||
{ | { | ||
+ | |||
difference() | difference() | ||
{ | { | ||
CreateTile("white"); | CreateTile("white"); | ||
− | translate ([ | + | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); |
− | translate ([ | + | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); |
− | translate ([- | + | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); |
} | } | ||
}; | }; | ||
+ | // 94 rot: Geradeaus schwarz: Geradeaus blau: Endet Normalteil | ||
+ | if (Kachelnummer==94) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); | ||
+ | translate ([-RadiusA,-RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | |||
− | if (Kachelnummer== | + | // 95 rot: Geradeaus schwarz: Endet blau: Leer Normalteil |
+ | if (Kachelnummer==95) | ||
{ | { | ||
difference() | difference() | ||
{ | { | ||
CreateTile("white"); | CreateTile("white"); | ||
− | translate ([ | + | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); |
− | translate ([ | + | translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); |
− | |||
} | } | ||
}; | }; | ||
− | if (Kachelnummer== | + | // 96 rot: Geradeaus schwarz: Endet blau: kleine Kurve Weiche |
+ | if (Kachelnummer==96) | ||
{ | { | ||
difference() | difference() | ||
{ | { | ||
CreateTile("white"); | CreateTile("white"); | ||
− | translate ([-Kante/2,-Kante/2, | + | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); |
− | translate ([-Kante/ | + | translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); |
− | translate ([ | + | translate ([0,Kante/4,Hoehe-Kerbe]) CreateStraigt(RadiusC,"red"); |
} | } | ||
}; | }; | ||
+ | // 98 rot: Geradeaus schwarz: Endet blau: Geradeaus Normalteil | ||
+ | if (Kachelnummer==98) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); | ||
+ | translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); | ||
+ | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); | ||
+ | } | ||
+ | };// 99 rot: Geradeaus schwarz: Endet blau: Endet Normalteil | ||
+ | // 101 rot: Endet schwarz: Leer blau: kleine Kurve Normalteil | ||
+ | // 103 rot: Endet schwarz: Leer blau: Geradeaus Normalteil | ||
+ | // 110 rot: Endet schwarz: Kurve gen blau blau: Leer Normalteil | ||
− | if (Kachelnummer== | + | if (Kachelnummer==1096) |
{ | { | ||
− | + | ||
difference() | difference() | ||
{ | { | ||
CreateTile("white"); | CreateTile("white"); | ||
translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); | ||
+ | translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); | ||
+ | translate ([0,Kante/4,Hoehe-Kerbe]) CreateStraigt(RadiusC,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | |||
+ | |||
+ | // 111 rot: Endet schwarz: Kurve gen blau blau: kleine Kurve Normalteil | ||
+ | if (Kachelnummer==111) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-Kante/4,Kante/4,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); | ||
− | + | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | |
} | } | ||
}; | }; | ||
+ | // 115 rot: Endet schwarz: Geradeaus blau: Leer Normalteil | ||
+ | if (Kachelnummer==115) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-Kante/4,Kante/4,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); | ||
+ | } | ||
+ | }; | ||
+ | // 116 rot: Endet schwarz: Geradeaus blau: kleine Kurve Weiche | ||
+ | if (Kachelnummer==116) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-Kante/4,Kante/4,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); | ||
+ | translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | |||
+ | // 118 rot: Endet schwarz: Geradeaus blau: Geradeaus Normalteil | ||
+ | if (Kachelnummer==118) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); | ||
+ | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusC,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 119 rot: Endet schwarz: Geradeaus blau: Endet Normalteil | ||
+ | if (Kachelnummer==119) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
+ | translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); | ||
+ | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusC,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 121 rot: Endet schwarz: Endet blau: kleine Kurve Normalteil | ||
+ | if (Kachelnummer==121) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
+ | translate ([-RadiusA,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); | ||
+ | translate ([-RadiusA*2,-RadiusA*2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
+ | // 123 rot: Endet schwarz: Endet blau: Geradeaus Normalteil | ||
+ | if (Kachelnummer==123) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | CreateTile("white"); | ||
+ | translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); | ||
+ | translate ([-RadiusA,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); | ||
+ | translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); | ||
+ | } | ||
+ | }; | ||
module CreateTile(myColor) | module CreateTile(myColor) | ||
Zeile 99: | Zeile 384: | ||
{ | { | ||
color(myColor) cube([Kante/2,Strichdicke*2, Hoehe], center=true); | color(myColor) cube([Kante/2,Strichdicke*2, Hoehe], center=true); | ||
− | + | color(myColor) translate ([Kante/4,0,0]) cylinder(Hoehe, Kreisdicke, Kreisdicke, center=true, $fn=60); | |
}; | }; | ||
+ | module CreateStraight(myLane, myColor) | ||
+ | { | ||
+ | color(myColor) cube([Kante,Strichdicke*2, Hoehe], center=true); | ||
+ | |||
+ | }; | ||
</pre> | </pre> |
Aktuelle Version vom 23. Januar 2014, 17:25 Uhr
// Rivers, Roads and Rails / Contact // 2014-01-23 V1 // by Stratum 0 // License: WTF $fn=20; Kante=100; Hoehe=4; Kerbe=2; RadiusA=Kante/4; RadiusB=Kante*2/4; RadiusC=Kante*3/4; Strichdicke=8; Kreisdicke=Strichdicke*1.5; Kachelnummer=27; // Es fehlen noch die Teile, wo eine Farbe endet und eine andere beginnt. // 1 rot: Leer schwarz: Leer blau: kleine Kurve Normalteil // 2 rot: Leer schwarz: Leer blau: Große Kurve Normalteil // 3 rot: Leer schwarz: Leer blau: Geradeaus Normalteil // 4 rot: Leer schwarz: Leer blau: Endet Normalteil // 5 rot: Leer schwarz: Kurve gen rot blau: Leer Normalteil // 6 rot: Leer schwarz: Kurve gen rot blau: kleine Kurve Gabel // 7 rot: Leer schwarz: Kurve gen rot blau: Große Kurve Normalteil // 8 rot: Leer schwarz: Kurve gen rot blau: Geradeaus Weiche // 9 rot: Leer schwarz: Kurve gen rot blau: Endet Normalteil // 10 rot: Leer schwarz: Kurve gen blau blau: Leer Normalteil // 11 rot: Leer schwarz: Kurve gen blau blau: kleine Kurve Normalteil // 15 rot: Leer schwarz: Geradeaus blau: Leer Normalteil // 16 rot: Leer schwarz: Geradeaus blau: kleine Kurve Weiche // 18 rot: Leer schwarz: Geradeaus blau: Geradeaus Normalteil // 19 rot: Leer schwarz: Geradeaus blau: Endet Normalteil // 20 rot: Leer schwarz: Endet blau: Leer Normalteil // 21 rot: Leer schwarz: Endet blau: kleine Kurve Normalteil // 23 rot: Leer schwarz: Endet blau: Geradeaus Normalteil // 25 rot: kleine Kurve schwarz: Leer blau: Leer Normalteil // 26 rot: kleine Kurve schwarz: Leer blau: kleine Kurve Weiche // 27 rot: kleine Kurve schwarz: Leer blau: Große Kurve Normalteil if (Kachelnummer==27) { difference() { CreateTile("white"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusC,"blue"); } }; // 28 rot: kleine Kurve schwarz: Leer blau: Geradeaus Weiche if (Kachelnummer==28) { difference() { CreateTile("white"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); } }; // 29 rot: kleine Kurve schwarz: Leer blau: Endet Normalteil if (Kachelnummer==29) { difference() { CreateTile("white"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([-RadiusA,-RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusA,"blue"); } }; // 30 rot: kleine Kurve schwarz: Kurve gen rot blau: Leer Normalteil if (Kachelnummer==30) { difference() { CreateTile("white"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); } }; // 31 rot: kleine Kurve schwarz: Kurve gen rot blau: kleine Kurve Gabel if (Kachelnummer==31) { difference() { CreateTile("white"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 32 rot: kleine Kurve schwarz: Kurve gen rot blau: Große Kurve Normalteil if (Kachelnummer==32) { difference() { CreateTile("white"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusC,"blue"); } }; // 33 rot: kleine Kurve schwarz: Kurve gen rot blau: Geradeaus Weiche if (Kachelnummer==33) { difference() { CreateTile("white"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); } }; // 34 rot: kleine Kurve schwarz: Kurve gen rot blau: Endet Normalteil if (Kachelnummer==34) { difference() { CreateTile("white"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([-RadiusB,RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); translate ([-RadiusA,-RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusA,"blue"); } }; // 35 rot: kleine Kurve schwarz: Kurve gen blau blau: Leer Gabel // 36 rot: kleine Kurve schwarz: Kurve gen blau blau: kleine Kurve Gabel // 39 rot: kleine Kurve schwarz: Kurve gen blau blau: Endet Gabel // 40 rot: kleine Kurve schwarz: Geradeaus blau: Leer Weiche // 41 rot: kleine Kurve schwarz: Geradeaus blau: kleine Kurve Kreuzung // 43 rot: kleine Kurve schwarz: Geradeaus blau: Geradeaus Weiche // 44 rot: kleine Kurve schwarz: Geradeaus blau: Endet Weiche // 45 rot: kleine Kurve schwarz: Endet blau: Leer Normalteil // 48 rot: kleine Kurve schwarz: Endet blau: Geradeaus Weiche // 49 rot: kleine Kurve schwarz: Endet blau: Endet Normalteil // 50 rot: Große Kurve schwarz: Leer blau: Leer Normalteil if (Kachelnummer==50) { difference() { CreateTile("white"); translate ([RadiusA*2,RadiusA*2,Hoehe-Kerbe]) CreateArch(RadiusC,"red"); } }; // 51 rot: Große Kurve schwarz: Leer blau: kleine Kurve Normalteil // 60 rot: Große Kurve schwarz: Kurve gen blau blau: Leer Normalteil // 61 rot: Große Kurve schwarz: Kurve gen blau blau: kleine Kurve Normalteil if (Kachelnummer==61) { difference() { CreateTile("white"); translate ([Kante/2,Kante/2,0]) CreateArch(RadiusA,"blue"); translate ([Kante/2,Kante/2,0]) CreateArch(RadiusB,"black"); translate ([Kante/2,Kante/2,0]) CreateArch(RadiusC,"red"); } }; // 71 rot: Große Kurve schwarz: Endet blau: kleine Kurve Normalteil // 75 rot: Geradeaus schwarz: Leer blau: Leer Normalteil // 76 rot: Geradeaus schwarz: Leer blau: kleine Kurve Weiche if (Kachelnummer==76) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 78 rot: Geradeaus schwarz: Leer blau: Geradeaus Normalteil // 79 rot: Geradeaus schwarz: Leer blau: Endet Normalteil // 86 rot: Geradeaus schwarz: Kurve gen blau blau: kleine Kurve Weiche if (Kachelnummer==86) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([-RadiusB,-RadiusB,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 90 rot: Geradeaus schwarz: Geradeaus blau: Leer Normalteil if (Kachelnummer==90) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); } }; // 91 rot: Geradeaus schwarz: Geradeaus blau: kleine Kurve Weiche if (Kachelnummer==91) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 93 rot: Geradeaus schwarz: Geradeaus blau: Geradeaus Normalteil if (Kachelnummer==93) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); } }; // 94 rot: Geradeaus schwarz: Geradeaus blau: Endet Normalteil if (Kachelnummer==94) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusA,"black"); translate ([-RadiusA,-RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusA,"blue"); } }; // 95 rot: Geradeaus schwarz: Endet blau: Leer Normalteil if (Kachelnummer==95) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); } }; // 96 rot: Geradeaus schwarz: Endet blau: kleine Kurve Weiche if (Kachelnummer==96) { difference() { CreateTile("white"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); translate ([0,Kante/4,Hoehe-Kerbe]) CreateStraigt(RadiusC,"red"); } }; // 98 rot: Geradeaus schwarz: Endet blau: Geradeaus Normalteil if (Kachelnummer==98) { difference() { CreateTile("white"); translate ([0,RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"red"); translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); } };// 99 rot: Geradeaus schwarz: Endet blau: Endet Normalteil // 101 rot: Endet schwarz: Leer blau: kleine Kurve Normalteil // 103 rot: Endet schwarz: Leer blau: Geradeaus Normalteil // 110 rot: Endet schwarz: Kurve gen blau blau: Leer Normalteil if (Kachelnummer==1096) { difference() { CreateTile("white"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"red"); translate ([-Kante/4,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); translate ([0,Kante/4,Hoehe-Kerbe]) CreateStraigt(RadiusC,"blue"); } }; // 111 rot: Endet schwarz: Kurve gen blau blau: kleine Kurve Normalteil if (Kachelnummer==111) { difference() { CreateTile("white"); translate ([-Kante/4,Kante/4,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusB,"black"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 115 rot: Endet schwarz: Geradeaus blau: Leer Normalteil if (Kachelnummer==115) { difference() { CreateTile("white"); translate ([-Kante/4,Kante/4,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); } }; // 116 rot: Endet schwarz: Geradeaus blau: kleine Kurve Weiche if (Kachelnummer==116) { difference() { CreateTile("white"); translate ([-Kante/4,Kante/4,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); translate ([-Kante/2,-Kante/2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 118 rot: Endet schwarz: Geradeaus blau: Geradeaus Normalteil if (Kachelnummer==118) { difference() { CreateTile("white"); translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusC,"blue"); } }; // 119 rot: Endet schwarz: Geradeaus blau: Endet Normalteil if (Kachelnummer==119) { difference() { CreateTile("white"); translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([0,0,Hoehe-Kerbe]) CreateStraight(RadiusB,"black"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusC,"blue"); } }; // 121 rot: Endet schwarz: Endet blau: kleine Kurve Normalteil if (Kachelnummer==121) { difference() { CreateTile("white"); translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([-RadiusA,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); translate ([-RadiusA*2,-RadiusA*2,Hoehe-Kerbe]) CreateArch(RadiusA,"blue"); } }; // 123 rot: Endet schwarz: Endet blau: Geradeaus Normalteil if (Kachelnummer==123) { difference() { CreateTile("white"); translate ([-RadiusA,RadiusA,Hoehe-Kerbe]) CreateEnd(RadiusC,"red"); translate ([-RadiusA,0,Hoehe-Kerbe]) CreateEnd(RadiusB,"black"); translate ([0,-RadiusA,Hoehe-Kerbe]) CreateStraight(RadiusA,"blue"); } }; module CreateTile(myColor) { // Basisdomino erstellen color(myColor) cube([Kante, Kante, Hoehe], center=true); }; // End Module module CreateArch(myRadius, myColor) { difference () // Innenkreis vom Außenkreis abziehen. { color (myColor) cylinder(Hoehe, myRadius+Strichdicke, myRadius+Strichdicke, center=true, $fn=60); cylinder(Hoehe, myRadius-Strichdicke, myRadius-Strichdicke, center=true, $fn=60); } }; module CreateEnd(myLane, myColor) { color(myColor) cube([Kante/2,Strichdicke*2, Hoehe], center=true); color(myColor) translate ([Kante/4,0,0]) cylinder(Hoehe, Kreisdicke, Kreisdicke, center=true, $fn=60); }; module CreateStraight(myLane, myColor) { color(myColor) cube([Kante,Strichdicke*2, Hoehe], center=true); };