.
This commit is contained in:
parent
e8a71d7415
commit
01a5ecbdbb
3 changed files with 16 additions and 18 deletions
|
|
@ -16,7 +16,7 @@ plate_margin = 6; // Rand aussen
|
|||
/* [Standflaechen] (flache Markierung, kein Loch) — passend zum Sockel Ø20 */
|
||||
spot_d = 22; // Durchmesser wie die Puck-Mulden (gleiche Ø20-Figuren stehen hier)
|
||||
spot_depth = 0.6; // Gravurtiefe
|
||||
spot_pitch = 24; // Mitte-zu-Mitte (Sockel Ø20 + Luft)
|
||||
spot_pitch = 30; // Mitte-zu-Mitte (mehr Luft zwischen den Standfeldern: ~8 mm)
|
||||
a_spot_d = spot_d; // A: GLEICHE Groesse wie die anderen — nur die Anzahl (genau 1) zaehlt
|
||||
|
||||
/* [Zonen] — [Label, cols, rows, gridX, gridY]; gridY 0 = oben */
|
||||
|
|
@ -24,8 +24,8 @@ zones = [["R", 2, 2, 0, 0], ["A", 1, 1, 1, 0],
|
|||
["C", 2, 2, 0, 1], ["I", 2, 2, 1, 1]];
|
||||
n_cols = 2;
|
||||
n_rows = 2;
|
||||
cell_pad = 13; // Rand um die Standflaechen im Feld (haelt Ø20-Sockel)
|
||||
zone_gap = 8; // Abstand zwischen den Feldern
|
||||
cell_pad = 13; // Rand um die Standflaechen im Feld
|
||||
zone_gap = 6; // Abstand zwischen den Feldern (dichter beieinander)
|
||||
|
||||
/* [Gravur] */
|
||||
frame_w = 1.5; // Strichstaerke der Feld-Umrandung
|
||||
|
|
@ -37,12 +37,12 @@ $fn = 48;
|
|||
|
||||
// --- abgeleitete Maße -------------------------------------------------------
|
||||
// QUADRATISCHE Zellen (Buchstabe in der Mittenluecke, kein Extra-Streifen).
|
||||
spots_span = (2 - 1) * spot_pitch; // 24 (2x2-Raster)
|
||||
cell_w = spots_span + 2 * cell_pad; // 50
|
||||
cell_h = cell_w; // 50 -> Platte wird quadratisch
|
||||
spots_span = (2 - 1) * spot_pitch; // 30 (2x2-Raster)
|
||||
cell_w = spots_span + 2 * cell_pad; // 56
|
||||
cell_h = cell_w; // 56 -> Platte wird quadratisch
|
||||
|
||||
plate_w = n_cols * cell_w + (n_cols - 1) * zone_gap + 2 * plate_margin; // 120
|
||||
plate_h = n_rows * cell_h + (n_rows - 1) * zone_gap + 2 * plate_margin; // 120
|
||||
plate_w = n_cols * cell_w + (n_cols - 1) * zone_gap + 2 * plate_margin; // 130
|
||||
plate_h = n_rows * cell_h + (n_rows - 1) * zone_gap + 2 * plate_margin; // 130
|
||||
|
||||
function zone_cx(gx) =
|
||||
-plate_w/2 + plate_margin + cell_w/2 + gx * (cell_w + zone_gap);
|
||||
|
|
@ -68,14 +68,11 @@ module zone_marks(z) {
|
|||
lab = z[0]; nc = z[1]; nr = z[2];
|
||||
cx = zone_cx(z[3]); cy = zone_cy(z[4]);
|
||||
if (lab == "A") {
|
||||
// genau EIN Standfeld (gleiche Groesse), leicht nach oben gerueckt; Buchstabe darunter
|
||||
translate([cx, cy + 7, plate_thick - spot_depth])
|
||||
// genau EIN Standfeld in der Rasterposition RECHTS OBEN; Buchstabe mittig (wie R/C/I)
|
||||
translate([cx + spot_pitch/2, cy + spot_pitch/2, plate_thick - spot_depth])
|
||||
cylinder(d = a_spot_d, h = spot_depth + 0.1);
|
||||
translate([cx, cy - 13, plate_thick - label_depth])
|
||||
linear_extrude(label_depth + 0.1)
|
||||
text(lab, size = label_size, halign = "center", valign = "center");
|
||||
} else {
|
||||
// 2x2 Standfelder zentriert; Buchstabe in der Mittenluecke
|
||||
// 2x2 Standfelder zentriert
|
||||
for (c = [0 : nc - 1])
|
||||
for (r = [0 : nr - 1]) {
|
||||
sx = cx + (c - (nc - 1)/2) * spot_pitch;
|
||||
|
|
@ -83,10 +80,11 @@ module zone_marks(z) {
|
|||
translate([sx, sy, plate_thick - spot_depth])
|
||||
cylinder(d = spot_d, h = spot_depth + 0.1);
|
||||
}
|
||||
translate([cx, cy, plate_thick - label_depth])
|
||||
linear_extrude(label_depth + 0.1)
|
||||
text(lab, size = label_size, halign = "center", valign = "center");
|
||||
}
|
||||
// Buchstabe in der Mittenluecke (alle Zonen gleich)
|
||||
translate([cx, cy, plate_thick - label_depth])
|
||||
linear_extrude(label_depth + 0.1)
|
||||
text(lab, size = label_size, halign = "center", valign = "center");
|
||||
}
|
||||
|
||||
module aktiv_feld() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue