work on lamp rewritr
This commit is contained in:
parent
2a6cfae60c
commit
679fa201c2
33
models.txt
33
models.txt
|
@ -1,33 +0,0 @@
|
||||||
2020_tslot_insert
|
|
||||||
bearing_post_nut
|
|
||||||
corner_foot
|
|
||||||
daylight_spool_insert_reinforced
|
|
||||||
daylight_spool_insert_reinforced_nut
|
|
||||||
electronics_panel
|
|
||||||
feed_panel_motor_mount
|
|
||||||
feed_panel_picture
|
|
||||||
feed_panel_stock
|
|
||||||
full_gate
|
|
||||||
gate_holder
|
|
||||||
idle_roller_half_a
|
|
||||||
idle_roller_half_b
|
|
||||||
lamp_cover
|
|
||||||
lamp_dual
|
|
||||||
lamp_LEDs
|
|
||||||
lamp_single
|
|
||||||
magnetic_coupling
|
|
||||||
motor_controller_panel
|
|
||||||
panel
|
|
||||||
picture_gate
|
|
||||||
slip_coupling
|
|
||||||
sound_gate
|
|
||||||
sprocketed_roller
|
|
||||||
sprocketed_roller_invert
|
|
||||||
sprocketed_roller_invert_solid
|
|
||||||
sprocketed_roller_solid
|
|
||||||
sprocketed_wheel
|
|
||||||
super_gate
|
|
||||||
takeup_panel_picture
|
|
||||||
takeup_panel_picture_motor_mount
|
|
||||||
takeup_panel_stock
|
|
||||||
takeup_panel_stock_motor_mount
|
|
|
@ -20,9 +20,9 @@ Film16mmStandardZ = -0.7;
|
||||||
Film16mmFull = 16;
|
Film16mmFull = 16;
|
||||||
Film16mmFullZ = -1.1;
|
Film16mmFullZ = -1.1;
|
||||||
Film16mmSuper = 13.25;
|
Film16mmSuper = 13.25;
|
||||||
Film16mmSuperZ = -(16 - Film16mmSuper) + 0.7;
|
Film16mmSuperZ = ((16 / 2) - (Film16mmSuper / 2) - 1.1);
|
||||||
Film16mmSound = Film16mmSuper - Film16mmStandard;
|
Film16mmSound = Film16mmSuper - Film16mmStandard;
|
||||||
Film16mmSoundZ = -7.75;
|
Film16mmSoundZ = ((16 / 2) - (Film16mmSuper - Film16mmStandard) / 2) - 1.1;
|
||||||
|
|
||||||
Sprockets = 18;
|
Sprockets = 18;
|
||||||
SprocketedRollerBevel = true;
|
SprocketedRollerBevel = true;
|
||||||
|
@ -102,6 +102,7 @@ LampWireX = 25;
|
||||||
LampWireY = 20;
|
LampWireY = 20;
|
||||||
|
|
||||||
LampGateX = 11;
|
LampGateX = 11;
|
||||||
|
LampGateZ = 1.1;
|
||||||
|
|
||||||
IdleRollerPrintX = 55;
|
IdleRollerPrintX = 55;
|
||||||
IdleRollerPrintY = 0;
|
IdleRollerPrintY = 0;
|
||||||
|
@ -399,21 +400,72 @@ module sound_gate_bracket (pos = [0, 0, 0], rot = [0, 0, 0]) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module gate_blank () {
|
module rectangular_pyramid(width, depth, height) {
|
||||||
X = LampGateX;
|
difference() {
|
||||||
//front
|
cube([width, depth, 0.01]);
|
||||||
//translate([0, -6.25, 0]) cube([X-7.2, 1.2, 19.25], center = true);
|
translate([width/2, depth/2, 0]) {
|
||||||
//middle
|
cube([width, depth, height]);
|
||||||
difference () {
|
|
||||||
union () {
|
|
||||||
translate([0, -5.1, -0.5]) cube([7.8, 1.8, 18], center = true);
|
|
||||||
translate([0, -8, -.75]) cube([4.8, 4, 17.5], center = true);
|
|
||||||
translate([0, -8.75, -.75]) cube([7.8, 3, 17.5], center = true);
|
|
||||||
}
|
}
|
||||||
translate([0, -9, -7.5]) cube([8, 4, 5], center = true);
|
|
||||||
translate([0, (-42.39 / 2) - 9.5, 0]) cylinder(r = R(42.39), h = 18 + 1, center = true, $fn = 240);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Add the pyramid faces
|
||||||
|
|
||||||
|
for (i = [0, 1]) {
|
||||||
|
translate([i * width, 0, 0]) {
|
||||||
|
translate([width/2, depth/2, 0]) {
|
||||||
|
linear_extrude(height = height, size = [width/2, 0, 0]) {
|
||||||
|
|
||||||
|
polygon([[0, 0], [width/2, 0], [width/2, depth], [0, depth]]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
translate([0, i * depth, 0]) {
|
||||||
|
|
||||||
|
translate([width/2, depth/2, 0]) {
|
||||||
|
|
||||||
|
linear_extrude(height = height, size = [0, depth/2, 0]) {
|
||||||
|
|
||||||
|
polygon([[0, 0], [width, 0], [width, depth/2], [0, depth/2]]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module gate_blank () {
|
||||||
|
X = 15;
|
||||||
|
Z = 18;
|
||||||
|
SidesX = 2;
|
||||||
|
SidesY = 2;
|
||||||
|
RollerVoidY = -2;
|
||||||
|
SprocketShelfZ = 4.25;
|
||||||
|
RollerShelfZ = 1;
|
||||||
|
|
||||||
|
RoundedBevelD = 55;
|
||||||
|
RoundedBevelY = -3;
|
||||||
|
difference () {
|
||||||
|
union () {
|
||||||
|
intersection () {
|
||||||
|
cube([X, 7.5, 18], center = true);
|
||||||
|
translate([0, (RoundedBevelD / 2) + RoundedBevelY, 0]) cylinder(r = R(RoundedBevelD), h = Z + 1, center = true, $fn = 260);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
translate([0, (-42.39 / 2) + RollerVoidY, 0]) cylinder(r = R(42.39), h = 18 + 1, center = true, $fn = 240);
|
||||||
|
//sprocket shelf
|
||||||
|
translate([0, (-42.39 / 2) + RollerVoidY, (-Z / 2) + (SprocketShelfZ / 2) - 0.01]) cylinder(r = R(47.39), h = SprocketShelfZ, center = true, $fn = 240);
|
||||||
|
//roller shelf
|
||||||
|
translate([0, (-42.39 / 2) + RollerVoidY, (Z / 2) - (RollerShelfZ / 2) + 0.01]) cylinder(r = R(45.39), h = RollerShelfZ, center = true, $fn = 240);
|
||||||
|
|
||||||
|
//gate notches
|
||||||
|
translate([(X / 2) + SidesX, SidesY, 0]) rotate([0, 0, 45]) cube([5, 5, Z + 1], center = true);
|
||||||
|
translate([(-X / 2) - SidesX, SidesY, 0]) rotate([0, 0, 45]) cube([5, 5, Z + 1], center = true);
|
||||||
|
}
|
||||||
//top
|
//top
|
||||||
//translate([0, -5.9, 9]) cube([X-4.2, 3, 2], center = true);
|
//translate([0, -5.9, 9]) cube([X-4.2, 3, 2], center = true);
|
||||||
}
|
}
|
||||||
|
@ -425,14 +477,16 @@ module picture_gate (pos = [0, 0, 0], rot = [0, 0, 0], Type = "full", Width = 2)
|
||||||
union () {
|
union () {
|
||||||
gate_blank();
|
gate_blank();
|
||||||
}
|
}
|
||||||
|
translate([0, 0, LampGateZ]) {
|
||||||
if (Type == "standard") {
|
if (Type == "standard") {
|
||||||
translate([0, -6, Film16mmStandardZ]) cube([Width, 10, Film16mmStandard], center = true);
|
translate([0, -6, Film16mmStandardZ]) cube([Width, 20, Film16mmStandard], center = true);
|
||||||
} else if (Type == "full") {
|
} else if (Type == "full") {
|
||||||
translate([0, -6, Film16mmFullZ]) cube([Width, 10, Film16mmFull], center = true);
|
translate([0, -6, Film16mmFullZ]) cube([Width, 20, Film16mmFull], center = true);
|
||||||
} else if (Type == "super16") {
|
} else if (Type == "super16") {
|
||||||
translate([0, -6, Film16mmSuperZ]) cube([Width, 10, Film16mmSuper], center = true);
|
translate([0, -6, Film16mmSuperZ]) cube([Width, 20, Film16mmSuper], center = true);
|
||||||
} else if (Type == "sound") {
|
} else if (Type == "sound") {
|
||||||
translate([0, -6, Film16mmSoundZ]) cube([Width, 10, Film16mmSound], center = true);
|
translate([0, -6, Film16mmSoundZ]) cube([Width, 20, Film16mmSound], center = true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1145,13 +1199,14 @@ module sprocketed_roller_invert_solid (pos = [0, 0, 0]) {
|
||||||
}
|
}
|
||||||
|
|
||||||
module lamp_LED_side (pos = [0, 0, 0], rot = [0, 0, 0]) {
|
module lamp_LED_side (pos = [0, 0, 0], rot = [0, 0, 0]) {
|
||||||
D = 5.1;
|
D = 5.3;
|
||||||
|
SpacingZ = 11.5;
|
||||||
translate(pos) rotate(rot) {
|
translate(pos) rotate(rot) {
|
||||||
difference () {
|
difference () {
|
||||||
cube([LampGateX - 4.2, 10, 18], center = true);
|
cube([LampGateX - 4.2, 10, 18], center = true);
|
||||||
rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
|
rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
|
||||||
translate([0, 0, 5.5]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
|
translate([0, 0, SpacingZ / 2]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
|
||||||
translate([0, 0, -5.5]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
|
translate([0, 0, -SpacingZ / 2]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
|
||||||
|
|
||||||
translate([0, -6, 0]) cube([5.2 + 4, 10, 18 + 1], center = true);
|
translate([0, -6, 0]) cube([5.2 + 4, 10, 18 + 1], center = true);
|
||||||
}
|
}
|
||||||
|
@ -1167,30 +1222,7 @@ module lamp_LEDs (pos = [0, 0, 0], rot = [0, 0, 0]) {
|
||||||
lamp_LED_side([-3.1, LEDOffsetY, 0], [0, 0, 7.5]);
|
lamp_LED_side([-3.1, LEDOffsetY, 0], [0, 0, 7.5]);
|
||||||
translate([0, 3.4 + LEDOffsetY, 0]) cube([0.8, 4, 18], center = true);
|
translate([0, 3.4 + LEDOffsetY, 0]) cube([0.8, 4, 18], center = true);
|
||||||
}
|
}
|
||||||
|
|
||||||
translate([0, -LightChannelY / 2, 0]) difference() {
|
|
||||||
cube([15, LightChannelY, 18], center = true);
|
|
||||||
//translate([0, 7.6, 0]) cube([11, LightChannelY, 18 + 1], center = true);
|
|
||||||
translate([0, -1, 0]) cube([5, LightChannelY, 18 + 1], center = true);
|
|
||||||
//void for diffusion
|
|
||||||
translate([0, (LightChannelY / 2) -18.9, 0]) cube([12, 0.5, 18 + 1], center = true);
|
|
||||||
|
|
||||||
translate([6.5, (LightChannelY / 2) -18.9, 2]) cube([3, 1.5, 18], center = true);
|
|
||||||
translate([-6.5, (LightChannelY / 2) -18.9, 2]) cube([3, 1.5, 18], center = true);
|
|
||||||
|
|
||||||
translate([3.1, (LightChannelY / 2) + LEDOffsetY, 0]) rotate([0, 0, -7.5]) cube([LampGateX - 4.2, 28, 18 + 1], center = true);
|
|
||||||
translate([-3.1, (LightChannelY / 2) + LEDOffsetY, 0]) rotate([0, 0, 7.5]) cube([LampGateX - 4.2, 28, 18 + 1], center = true);
|
|
||||||
|
|
||||||
//bevel light
|
|
||||||
translate([0, (LightChannelY / 2) - 18.9 + 2.5, 0]) rotate([0, 0, 45]) cube([6.5, 6.5, 18 + 1], center = true);
|
|
||||||
|
|
||||||
//slide for gate
|
|
||||||
translate([0, (LightChannelY / 2) -22, 0]) cube([8, 2, 18 + 1], center = true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//translate([0, -18.9, 0]) cube([5, 1/16, 16], center = true);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module gate_holder () {
|
module gate_holder () {
|
||||||
|
@ -1279,6 +1311,7 @@ module debug () {
|
||||||
|
|
||||||
panel([0, -10, PanelOffsetZ]);
|
panel([0, -10, PanelOffsetZ]);
|
||||||
|
|
||||||
|
color("red") translate([0, -8.5, 10.2]) cube([200, 0.1, 16], center = true);
|
||||||
if (!FrameOnly) {
|
if (!FrameOnly) {
|
||||||
translate([0, RollerY, 18]) rotate([180, 0, 0]) difference () {
|
translate([0, RollerY, 18]) rotate([180, 0, 0]) difference () {
|
||||||
//sprocketed_roller_upright();
|
//sprocketed_roller_upright();
|
||||||
|
@ -1292,7 +1325,7 @@ module debug () {
|
||||||
//lamp_dual([0, LampY, 0 + 1]);
|
//lamp_dual([0, LampY, 0 + 1]);
|
||||||
//lamp_single([0, 10, 0 + 1]);
|
//lamp_single([0, 10, 0 + 1]);
|
||||||
lamp_LEDs([0, 19, 10]);
|
lamp_LEDs([0, 19, 10]);
|
||||||
picture_gate([0, 2.1, 10.5]);
|
picture_gate([0, -3.1, 10.5], Type = "super16");
|
||||||
// translate([45, LampY, 0 + 2]) cube([100, 100, 100], center = true);
|
// translate([45, LampY, 0 + 2]) cube([100, 100, 100], center = true);
|
||||||
//}
|
//}
|
||||||
//color("green") lamp_cover([0, LampY + 5, 21]);
|
//color("green") lamp_cover([0, LampY + 5, 21]);
|
||||||
|
@ -1408,7 +1441,7 @@ module debug () {
|
||||||
electronics_panel([0, -100, -3]);
|
electronics_panel([0, -100, -3]);
|
||||||
}
|
}
|
||||||
|
|
||||||
PART = "picture_gatex";
|
PART = "lamp_LEDsx";
|
||||||
LIBRARY = true;
|
LIBRARY = true;
|
||||||
|
|
||||||
if (PART == "panel") {
|
if (PART == "panel") {
|
||||||
|
|
Loading…
Reference in New Issue