Add adjustments for new filmless library
This commit is contained in:
parent
ff927564b6
commit
e9b89bd10b
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"ext_port": 1111,
|
||||
"profiles": {
|
||||
"mcopy": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy-app",
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy-app",
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"description": "GUI for the mcopy small gauge film optical printer platform",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"ext_port": 1111,
|
||||
"profiles": {
|
||||
"mcopy": {
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "mcopy",
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "mcopy",
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"alert": "file:app/lib/alert",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy",
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"description": "Small gauge film optical printer platform",
|
||||
"main": "build.js",
|
||||
"directories": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "1.8.142",
|
||||
"version": "1.8.143",
|
||||
"ext_port": 1111,
|
||||
"profiles": {
|
||||
"mcopy": {
|
||||
|
|
|
@ -0,0 +1,77 @@
|
|||
//OpenSCAD representation of small gauge film formats
|
||||
//Website: https://git.sixteenmillimeter.com/16mm/filmless.git
|
||||
|
||||
module rounded_cube (cube_arr = [1, 1, 1], d = 0, center = false) {
|
||||
off_x = 0;
|
||||
off_y = 0;
|
||||
r = d/2;
|
||||
union () {
|
||||
cube([cube_arr[0] - d, cube_arr[1], cube_arr[2]], center = center);
|
||||
cube([cube_arr[0], cube_arr[1] - d, cube_arr[2]], center = center);
|
||||
translate ([1 * (cube_arr[0] / 2) - r , 1 * (cube_arr[1] / 2)- r, 0]) cylinder(r = r, h = cube_arr[2], center = center);
|
||||
translate ([-1 * (cube_arr[0] / 2) + r, -1 * (cube_arr[1] / 2) + r, 0]) cylinder(r = r, h = cube_arr[2], center = center);
|
||||
translate ([1 * (cube_arr[0] / 2) - r, -1 * (cube_arr[1] / 2) + r, 0]) cylinder(r = r, h = cube_arr[2], center = center);
|
||||
translate ([-1 * (cube_arr[0] / 2) + r, 1 * (cube_arr[1] / 2)- r, 0]) cylinder(r = r, h = cube_arr[2], center = center);
|
||||
}
|
||||
}
|
||||
|
||||
module 16mm_perf () {
|
||||
$fn = 10;
|
||||
PERF_W = 1.829;
|
||||
PERF_H = 1.27;
|
||||
rounded_cube([PERF_W, PERF_H, 2], d = .5, center = true);
|
||||
}
|
||||
|
||||
module 16mm_film (frames = 10, double = false, long = true) {
|
||||
THICKNESS = 0.0047 * 25.4;
|
||||
WIDTH = 16;
|
||||
SPACING_LONG = 7.62; //long pitch (projection)
|
||||
SPACING_SHORT = 7.605; //short pitch
|
||||
PERF_OFFSET = (1.829 / 2) + .85;
|
||||
difference () {
|
||||
if (long) {
|
||||
cube([WIDTH, SPACING_LONG * frames, THICKNESS], center = true);
|
||||
} else {
|
||||
cube([WIDTH, SPACING_SHORT * frames, THICKNESS], center = true);
|
||||
}
|
||||
if (long) {
|
||||
OFFSET = (SPACING_LONG * frames) / 2;
|
||||
for (i = [0 : frames]) {
|
||||
translate([8 - PERF_OFFSET, -OFFSET + SPACING_LONG * i, 0]) 16mm_perf();
|
||||
}
|
||||
if (double) {
|
||||
for (i = [0 : frames]) {
|
||||
translate([-8 + PERF_OFFSET, -OFFSET + SPACING_LONG * i, 0]) 16mm_perf();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
OFFSET = (SPACING_SHORT * frames) / 2;
|
||||
for (i = [0 : frames]) {
|
||||
translate([8 - PERF_OFFSET, -OFFSET + SPACING_LONG * i, 0]) 16mm_perf();
|
||||
}
|
||||
if (double) {
|
||||
for (i = [0 : frames]) {
|
||||
translate([-8 + PERF_OFFSET, -OFFSET + SPACING_LONG * i, 0]) 16mm_perf();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module film_sheet () {
|
||||
STRIPS = 12;
|
||||
FRAMES = 33;
|
||||
PERFS = "single";
|
||||
PITCH = "long";
|
||||
projection() for (i = [0:STRIPS - 1]) {
|
||||
translate([16.01 * i, 0, 0]) {
|
||||
16mm_film(FRAMES, PERFS == "double", PITCH == "long");
|
||||
}
|
||||
}
|
||||
echo("STRIP LENGTH", (PITCH == "long" ? 7.62 : 7.605) * FRAMES, "mm");
|
||||
echo("PAGE WIDTH", 16 * STRIPS, "mm");
|
||||
echo("PITCH", PITCH);
|
||||
echo("PERFS", PERFS);
|
||||
}
|
||||
|
||||
//film_sheet();
|
|
@ -1,5 +1,6 @@
|
|||
use <./common/common.scad>;
|
||||
use <./sprocketed_roller/sprocketed_roller_var.scad>;
|
||||
use <./filmless.scad>;
|
||||
|
||||
PlateZ = 1.3 + 1;
|
||||
PlateX = 35.1;
|
||||
|
@ -115,6 +116,7 @@ module front_plate_void (pos = [0, 0, 0]) {
|
|||
}
|
||||
}
|
||||
|
||||
//BOM: 1, M2.5x10mm
|
||||
module front_plate () {
|
||||
difference () {
|
||||
union () {
|
||||
|
@ -692,7 +694,7 @@ module debug () {
|
|||
}
|
||||
}
|
||||
|
||||
PART="front_block_16mm";
|
||||
PART="front_block_16mmx";
|
||||
|
||||
if (PART == "front_plate") {
|
||||
rotate([0, 180, 0]) front_plate();
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
include <arduino.scad>;
|
||||
include <common/common.scad>;
|
||||
|
||||
PART="usb_protector";
|
||||
PART="electronics_mount";
|
||||
|
||||
CaseX = 121;
|
||||
CaseY = 172;
|
||||
|
|
Loading…
Reference in New Issue