// Gate-Tor — Bogen, steckt mit 2 Zapfen in ein Gate-Tile (keine eigenen Fuesse) // SLC-Workshop Tabletop · Einheiten: mm // Die Figuren stehen auf dem GATE-TILE (nicht am Tor). Das Tor traegt oben eine // Gate-Beschreibungskarte; keine feste Gravur. /* [Tor] */ opening_w = 68; // lichte Weite (Action-Stein Ø59 + 60-mm-Karte passt durch) opening_h = 100; // lichte Hoehe thick = 8; // Materialstaerke (Tiefe) post_w = 12; // Pfostenbreite top_h = 14; // Hoehe des Querbalkens /* [Kartenschlitz oben] */ card_w = 65; // Gate-Beschreibungskarte 60 mm + Spiel card_t = 3; card_depth = 10; /* [Stecksockel-Zapfen] — stecken in die Gate-Tile-Loecher (Ø10,4) */ tenon_d = 10; tenon_h = 5; tenon_dx = 40; // halber Abstand = Pfostenmitte (opening_w/2 + post_w/2) $fn = 48; total_w = opening_w + 2*post_w; // 92 -> passt auf das 100er Gate-Tile module arch() { difference() { translate([-total_w/2, 0, 0]) cube([total_w, thick, opening_h + top_h]); translate([-opening_w/2, -0.1, 0]) cube([opening_w, thick + 0.2, opening_h]); } } module card_slot() { translate([-card_w/2, thick/2 - card_t/2, opening_h + top_h - card_depth]) cube([card_w, card_t, card_depth + 0.1]); } module tenons() { // 2 Zapfen unter den Pfosten -> stecken ins Gate-Tile for (x = [-1, 1]) translate([x*tenon_dx, thick/2, -tenon_h]) cylinder(d = tenon_d, h = tenon_h + 0.1); } // Bogen inkl. Kartenschlitz difference() { arch(); card_slot(); } // Stecksockel-Zapfen tenons(); echo(total_w = total_w, opening_w = opening_w, tenon_dx = tenon_dx);