Label the gate masks

This commit is contained in:
Matt McWilliams 2024-09-13 19:01:20 -04:00
parent b4271c3c86
commit 750cd3e67c
8 changed files with 26 additions and 9 deletions

View File

@ -1,5 +1,5 @@
{ {
"version": "1.8.127", "version": "1.8.128",
"ext_port": 1111, "ext_port": 1111,
"profiles": { "profiles": {
"mcopy": { "mcopy": {

2
app/package-lock.json generated
View File

@ -1,6 +1,6 @@
{ {
"name": "mcopy-app", "name": "mcopy-app",
"version": "1.8.127", "version": "1.8.128",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {

View File

@ -1,6 +1,6 @@
{ {
"name": "mcopy-app", "name": "mcopy-app",
"version": "1.8.127", "version": "1.8.128",
"description": "GUI for the mcopy small gauge film optical printer platform", "description": "GUI for the mcopy small gauge film optical printer platform",
"main": "main.js", "main": "main.js",
"scripts": { "scripts": {

View File

@ -1,5 +1,5 @@
{ {
"version": "1.8.127", "version": "1.8.128",
"ext_port": 1111, "ext_port": 1111,
"profiles": { "profiles": {
"mcopy": { "mcopy": {

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{ {
"name": "mcopy", "name": "mcopy",
"version": "1.8.127", "version": "1.8.128",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "mcopy", "name": "mcopy",
"version": "1.8.127", "version": "1.8.128",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"alert": "file:app/lib/alert", "alert": "file:app/lib/alert",

View File

@ -1,6 +1,6 @@
{ {
"name": "mcopy", "name": "mcopy",
"version": "1.8.127", "version": "1.8.128",
"description": "Small gauge film optical printer platform", "description": "Small gauge film optical printer platform",
"main": "build.js", "main": "build.js",
"directories": { "directories": {

View File

@ -1,5 +1,5 @@
{ {
"version": "1.8.127", "version": "1.8.128",
"ext_port": 1111, "ext_port": 1111,
"profiles": { "profiles": {
"mcopy": { "mcopy": {

View File

@ -71,12 +71,27 @@ module front_plate () {
} }
} }
module text_void (string = "example", pos = [0, 0, 0], rot = [0, 0, 0], letter_size = 5, letter_height = 2) {
translate(pos) rotate(rot) linear_extrude(height = letter_height) {
text(string, size = letter_size, font = "Liberation Sans", halign = "center", valign = "center", $fn = 16);
}
}
module gate_mask_text (format = "") {
if (format == "standard16") {
text_void("16mm", pos= [11.5, 0, -3], rot = [90, 0, 90], letter_size = 4);
} else if (format == "super16") {
text_void("super16", pos= [11.5, 0, -4], rot = [90, 0, 90], letter_size = 4);
}
}
module gate_mask_slide (pos = [0, 0, 0], pad = 0.0, format = "") { module gate_mask_slide (pos = [0, 0, 0], pad = 0.0, format = "") {
Z = -1; Z = -1;
GuideAdjust = -1.5; GuideAdjust = -1.5;
FormatBevelY = format == "super16" ? 5 : 5.5; FormatBevelY = format == "super16" ? 5 : 5.5;
translate(pos) { translate(pos) {
//gate_mask_text(format);
difference () { difference () {
union () { union () {
translate([0, 0, Z]) cube([20, FrontPlateVoidY + pad, PlateZ + 2], center = true); translate([0, 0, Z]) cube([20, FrontPlateVoidY + pad, PlateZ + 2], center = true);
@ -88,15 +103,17 @@ module gate_mask_slide (pos = [0, 0, 0], pad = 0.0, format = "") {
} }
} }
if (format != "") { if (format != "") {
translate([(20 / 2) + .6, 0, -3.5]) cube([2, FrontPlateVoidY + 8, PlateZ + 2 + 5], center = true); translate([(20 / 2) + .6, 0, -3.5]) rotate([0, 90, 0]) rounded_cube([PlateZ + 2 + 5, FrontPlateVoidY + 8, 2], d = 2, $fn = 20, center = true);
} }
} }
// difference // difference
if (format != "") { if (format != "") {
gate_mask_text(format);
difference () { difference () {
film_clearance_void([0, 0, 1 + 0.2]); film_clearance_void([0, 0, 1 + 0.2]);
if (format == "standard16" || format == "super16") { if (format == "standard16" || format == "super16") {
difference () { difference () {
cube([BackPlateVoidX + 10, BackPlateVoidY + 6, 10], center = true); cube([BackPlateVoidX + 10, BackPlateVoidY + 6, 10], center = true);
translate([0, BackPlateVoidY / 2 + FormatBevelY, 4.5]) rotate([-20, 0, 0]) cube([FrontPlateClearanceX + 3, 10, 10], center = true); translate([0, BackPlateVoidY / 2 + FormatBevelY, 4.5]) rotate([-20, 0, 0]) cube([FrontPlateClearanceX + 3, 10, 10], center = true);