Gesellschaftsspiel-Replikator/Connect V1: Unterschied zwischen den Versionen
Lulu (Diskussion | Beiträge) K |
Lulu (Diskussion | Beiträge) K (Update) |
||
| Zeile 1: | Zeile 1: | ||
<pre> | <pre> | ||
| − | + | // Rivers, Roads and Rails / Contact | |
| − | // | ||
// 2014-01-23 V1 | // 2014-01-23 V1 | ||
// by Stratum 0 | // by Stratum 0 | ||
| Zeile 15: | Zeile 14: | ||
RadiusC=Kante*3/4; | RadiusC=Kante*3/4; | ||
Strichdicke=8; | Strichdicke=8; | ||
| − | Kachelnummer= | + | Kreisdicke=Strichdicke*1.5; |
| + | Kachelnummer=93; | ||
| − | if (Kachelnummer== | + | |
| + | // 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 | ||
| + | // 28 rot: kleine Kurve schwarz: Leer blau: Geradeaus Weiche | ||
| + | // 29 rot: kleine Kurve schwarz: Leer blau: Endet Normalteil | ||
| + | // 30 rot: kleine Kurve schwarz: Kurve gen rot blau: Leer Normalteil | ||
| + | // 31 rot: kleine Kurve schwarz: Kurve gen rot blau: kleine Kurve Gabel | ||
| + | // 32 rot: kleine Kurve schwarz: Kurve gen rot blau: Große Kurve Normalteil | ||
| + | // 33 rot: kleine Kurve schwarz: Kurve gen rot blau: Geradeaus Weiche | ||
| + | // 34 rot: kleine Kurve schwarz: Kurve gen rot blau: Endet Normalteil | ||
| + | // 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 | ||
| + | // 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==32) | ||
{ | { | ||
difference() | difference() | ||
| Zeile 27: | Zeile 73: | ||
} | } | ||
}; | }; | ||
| + | |||
| + | 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 | ||
| + | // 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 | ||
| + | // 90 rot: Geradeaus schwarz: Geradeaus blau: Leer Normalteil | ||
| + | // 91 rot: Geradeaus schwarz: Geradeaus blau: kleine Kurve Weiche | ||
| + | // 92 rot: Geradeaus schwarz: Geradeaus blau: Große Kurve Normalteil | ||
| − | if (Kachelnummer== | + | // 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() | 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 ([-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 273: | ||
{ | { | ||
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> | ||
Version vom 23. Januar 2014, 16:37 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=93;
// 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
// 28 rot: kleine Kurve schwarz: Leer blau: Geradeaus Weiche
// 29 rot: kleine Kurve schwarz: Leer blau: Endet Normalteil
// 30 rot: kleine Kurve schwarz: Kurve gen rot blau: Leer Normalteil
// 31 rot: kleine Kurve schwarz: Kurve gen rot blau: kleine Kurve Gabel
// 32 rot: kleine Kurve schwarz: Kurve gen rot blau: Große Kurve Normalteil
// 33 rot: kleine Kurve schwarz: Kurve gen rot blau: Geradeaus Weiche
// 34 rot: kleine Kurve schwarz: Kurve gen rot blau: Endet Normalteil
// 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
// 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==32)
{
difference()
{
CreateTile("white");
translate ([Kante/2,Kante/2,0]) CreateArch(RadiusA,"red");
translate ([Kante/2,Kante/2,0]) CreateArch(RadiusB,"black");
translate ([Kante/2,Kante/2,0]) CreateArch(RadiusC,"blue");
}
};
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
// 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
// 90 rot: Geradeaus schwarz: Geradeaus blau: Leer Normalteil
// 91 rot: Geradeaus schwarz: Geradeaus blau: kleine Kurve Weiche
// 92 rot: Geradeaus schwarz: Geradeaus blau: Große Kurve Normalteil
// 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);
};

