resin settings, some tines support tweaks

This commit is contained in:
Bob 2022-02-21 16:02:37 -05:00
parent 1a10d1e5bc
commit 2429384b51
4 changed files with 26 additions and 11 deletions

View File

@ -1130,7 +1130,7 @@ module upside_down() {
module sideways() { module sideways() {
$key_shape_type = "flat_sided_square"; $key_shape_type = "flat_sided_square";
$dish_overdraw_width = abs(extra_keytop_length_for_flat_sides()); $dish_overdraw_width = abs(extra_keytop_length_for_flat_sides());
extra_y_rotation = atan2($width_difference/2,$total_depth); extra_y_rotation = atan2($width_difference/2,$total_depth); // TODO assumes centered top
translate([0,0,cos(extra_y_rotation) * total_key_width()/2]) translate([0,0,cos(extra_y_rotation) * total_key_width()/2])
rotate([0,90 + extra_y_rotation ,0]) children(); rotate([0,90 + extra_y_rotation ,0]) children();
} }
@ -1158,7 +1158,14 @@ module auto_place() {
translate_u(x,-y) children(child_index); translate_u(x,-y) children(child_index);
} }
} }
module arrows(profile, rows = [4,4,4,3]) {
// suggested settings for resin prints
module resin() {
$stem_slop = 0;
$stem_inner_slop = 0;
$stem_support_type = "disable";
children();
}module arrows(profile, rows = [4,4,4,3]) {
positions = [[0, 0], [1, 0], [2, 0], [1, 1]]; positions = [[0, 0], [1, 0], [2, 0], [1, 1]];
legends = ["←", "↓", "→", "↑"]; legends = ["←", "↓", "→", "↑"];
@ -3308,7 +3315,7 @@ function unit_length(length) = $unit * (length - 1) + 18.16;
// extra length to the vertical tine of the inside cherry cross // extra length to the vertical tine of the inside cherry cross
// splits the stem into halves - allows easier fitment // splits the stem into halves - allows easier fitment
extra_vertical = 0.6; extra_vertical = 100;
module inside_cherry_cross(slop) { module inside_cherry_cross(slop) {
// inside cross // inside cross
@ -3494,7 +3501,7 @@ function unit_length(length) = $unit * (length - 1) + 18.16;
// extra length to the vertical tine of the inside cherry cross // extra length to the vertical tine of the inside cherry cross
// splits the stem into halves - allows easier fitment // splits the stem into halves - allows easier fitment
extra_vertical = 0.6; extra_vertical = 100;
module inside_cherry_cross(slop) { module inside_cherry_cross(slop) {
// inside cross // inside cross
@ -3690,7 +3697,7 @@ function unit_length(length) = $unit * (length - 1) + 18.16;
// extra length to the vertical tine of the inside cherry cross // extra length to the vertical tine of the inside cherry cross
// splits the stem into halves - allows easier fitment // splits the stem into halves - allows easier fitment
extra_vertical = 0.6; extra_vertical = 100;
module inside_cherry_cross(slop) { module inside_cherry_cross(slop) {
// inside cross // inside cross
@ -4049,7 +4056,7 @@ function unit_length(length) = $unit * (length - 1) + 18.16;
// extra length to the vertical tine of the inside cherry cross // extra length to the vertical tine of the inside cherry cross
// splits the stem into halves - allows easier fitment // splits the stem into halves - allows easier fitment
extra_vertical = 0.6; extra_vertical = 100;
module inside_cherry_cross(slop) { module inside_cherry_cross(slop) {
// inside cross // inside cross
@ -4292,7 +4299,7 @@ function unit_length(length) = $unit * (length - 1) + 18.16;
// extra length to the vertical tine of the inside cherry cross // extra length to the vertical tine of the inside cherry cross
// splits the stem into halves - allows easier fitment // splits the stem into halves - allows easier fitment
extra_vertical = 0.6; extra_vertical = 100;
module inside_cherry_cross(slop) { module inside_cherry_cross(slop) {
// inside cross // inside cross
@ -4361,7 +4368,7 @@ module tines_support(stem_type, stem_support_height, slop) {
} }
// 2 vertical tines holding either side of the cruciform // 2 vertical tines holding either side of the cruciform
for (x = [1.15, -1.15]) { for (x = [2, -2]) {
translate([x,0,$stem_support_height / 2]) { translate([x,0,$stem_support_height / 2]) {
cube([ cube([
0.5, 0.5,

View File

@ -195,7 +195,7 @@ module upside_down() {
module sideways() { module sideways() {
$key_shape_type = "flat_sided_square"; $key_shape_type = "flat_sided_square";
$dish_overdraw_width = abs(extra_keytop_length_for_flat_sides()); $dish_overdraw_width = abs(extra_keytop_length_for_flat_sides());
extra_y_rotation = atan2($width_difference/2,$total_depth); extra_y_rotation = atan2($width_difference/2,$total_depth); // TODO assumes centered top
translate([0,0,cos(extra_y_rotation) * total_key_width()/2]) translate([0,0,cos(extra_y_rotation) * total_key_width()/2])
rotate([0,90 + extra_y_rotation ,0]) children(); rotate([0,90 + extra_y_rotation ,0]) children();
} }
@ -223,3 +223,11 @@ module auto_place() {
translate_u(x,-y) children(child_index); translate_u(x,-y) children(child_index);
} }
} }
// suggested settings for resin prints
module resin() {
$stem_slop = 0;
$stem_inner_slop = 0;
$stem_support_type = "disable";
children();
}

View File

@ -36,7 +36,7 @@ module tines_support(stem_type, stem_support_height, slop) {
} }
// 2 vertical tines holding either side of the cruciform // 2 vertical tines holding either side of the cruciform
for (x = [1.15, -1.15]) { for (x = [2, -2]) {
translate([x,0,$stem_support_height / 2]) { translate([x,0,$stem_support_height / 2]) {
cube([ cube([
0.5, 0.5,

View File

@ -2,7 +2,7 @@ include <../functions.scad>
// extra length to the vertical tine of the inside cherry cross // extra length to the vertical tine of the inside cherry cross
// splits the stem into halves - allows easier fitment // splits the stem into halves - allows easier fitment
extra_vertical = 0.6; extra_vertical = 100;
module inside_cherry_cross(slop) { module inside_cherry_cross(slop) {
// inside cross // inside cross