Improve individual part rendering
This commit is contained in:
+12
-15
@@ -22,39 +22,36 @@ screw_hole_bevel_h = 1.8
|
|||||||
screw_hole_padding_lower = 1.8
|
screw_hole_padding_lower = 1.8
|
||||||
*/
|
*/
|
||||||
|
|
||||||
lower();
|
alpha_adaptor();
|
||||||
|
|
||||||
module alpha_adaptor() {
|
module alpha_adaptor() {
|
||||||
difference(){
|
|
||||||
union(){
|
union(){
|
||||||
lower();
|
lower();
|
||||||
translate([0, 0, 3.6])
|
translate([0, 0, 3.6])
|
||||||
upper();
|
upper();
|
||||||
}
|
}
|
||||||
cylinder(h = 10, r = 35 / 2);
|
|
||||||
translate([0,0,7.6 - 2.8])
|
|
||||||
base(b = 0);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module upper(h = 4, size = 59.6, r = 3.5){
|
module upper(solo = false, h = 4, size = 59.6, r = 3.5){
|
||||||
difference() {
|
difference() {
|
||||||
rounded_rect(h = h, size = size, r = r);
|
rounded_rect(h = h, size = size, r = r);
|
||||||
screw_holes();
|
screw_holes();
|
||||||
center_hole();
|
center_hole();
|
||||||
translate([0,0,h - 2.8])
|
translate([0,0,h - 2.8])
|
||||||
base(b = 0);
|
base(b = 0);
|
||||||
|
if(solo)
|
||||||
guide_posts();
|
guide_posts();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module lower(h = 3.6, size = 52.6, r = 15){
|
module lower(solo = false, h = 3.6, size = 52.6, r = 15){
|
||||||
difference() {
|
difference() {
|
||||||
union(){
|
union(){
|
||||||
rounded_rect(h = h, size = size, r = r);
|
rounded_rect(h = h, size = size, r = r);
|
||||||
|
if(solo)
|
||||||
guide_posts();
|
guide_posts();
|
||||||
}
|
}
|
||||||
screw_holes();
|
screw_holes(r2 = 4.8/2);
|
||||||
center_hole();
|
center_hole();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -63,9 +60,9 @@ module center_hole() {
|
|||||||
cylinder(h = 10, r = 35 / 2);
|
cylinder(h = 10, r = 35 / 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
module guide_posts(h = 7.6, r = 4.8 / 2) {
|
module guide_posts(h = 7.6, r = 6.5 / 2) {
|
||||||
rotate([0,0,45])
|
rotate([0,0,45])
|
||||||
screw_holes(h = 7.6, r1 = r, r2 = r);
|
screw_holes(h = 7.6, r1 = r, r2 = r, pos = 61.8 / 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
module screw_holes(h = 10, r1 = 4.8 / 2, r2 = 5.6 / 2, pos = 52.6 / 2 - 1.8){
|
module screw_holes(h = 10, r1 = 4.8 / 2, r2 = 5.6 / 2, pos = 52.6 / 2 - 1.8){
|
||||||
@@ -73,22 +70,22 @@ module screw_holes(h = 10, r1 = 4.8 / 2, r2 = 5.6 / 2, pos = 52.6 / 2 - 1.8){
|
|||||||
chamfer_height = r2 - r1;
|
chamfer_height = r2 - r1;
|
||||||
translate([offset, 0, 0]){
|
translate([offset, 0, 0]){
|
||||||
cylinder(h = h, r = r1);
|
cylinder(h = h, r = r1);
|
||||||
translate([0, 0 , 7.6 - chamfer_height])
|
translate([0, 0 ,4 - chamfer_height])
|
||||||
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
||||||
}
|
}
|
||||||
translate([-offset, 0, 0]){
|
translate([-offset, 0, 0]){
|
||||||
cylinder(h = h, r = r1);
|
cylinder(h = h, r = r1);
|
||||||
translate([0, 0 ,7.6 - chamfer_height])
|
translate([0, 0 ,4 - chamfer_height])
|
||||||
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
||||||
}
|
}
|
||||||
translate([0, offset, 0]){
|
translate([0, offset, 0]){
|
||||||
cylinder(h = h, r = r1);
|
cylinder(h = h, r = r1);
|
||||||
translate([0, 0 ,7.6 - chamfer_height])
|
translate([0, 0 ,4 - chamfer_height])
|
||||||
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
||||||
}
|
}
|
||||||
translate([0, -offset, 0]){
|
translate([0, -offset, 0]){
|
||||||
cylinder(h = h, r = r1);
|
cylinder(h = h, r = r1);
|
||||||
translate([0, 0 ,7.6 - chamfer_height])
|
translate([0, 0 ,4 - chamfer_height])
|
||||||
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
cylinder(h = chamfer_height, r1 = r1, r2 = r2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,8 +17,14 @@ $fn = 100;
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
throw_types = [
|
throw_types = [
|
||||||
[10.6, "A"],
|
[12, "A"],
|
||||||
[10.6 / sqrt(2 / 1.4), "AN"]
|
[12 / sqrt(2 / 1.4), "AN"]
|
||||||
];
|
];
|
||||||
|
|
||||||
juqs(model = OCTN, collar = FLAT, throw_type = throw_types[1], shaft_r = (7.2/2)/cos(180/$fn));
|
juqs(model = OCTN, collar = STEPPED, throw_type = throw_types[0], shaft_r = (7.2/2)/cos(180/$fn), pivot_depth = 8.05);
|
||||||
|
|
||||||
|
/*
|
||||||
|
translate([0,0,-8.05])
|
||||||
|
rotate([throw_types[0][0],0,0])
|
||||||
|
cylinder(h=100, r=(7.2/2)/cos(180/$fn));
|
||||||
|
*/
|
||||||
+28
-20
@@ -19,11 +19,13 @@ grommet_dist = 6.8; //distance the grommet sits below this component
|
|||||||
grommet_depth = 6.4; //thickness of grommet (when compressed)
|
grommet_depth = 6.4; //thickness of grommet (when compressed)
|
||||||
pivot_depth = grommet_dist + grommet_depth / 2;
|
pivot_depth = grommet_dist + grommet_depth / 2;
|
||||||
|
|
||||||
VERSION = "V2.9";
|
VERSION = "V3.0";
|
||||||
|
|
||||||
juqs(model = OCTN, collar = ISLAND, throw_type= throw_types[2]);
|
hollow(OCTN, throw_types[2][0], shaft_r, pivot_depth);
|
||||||
|
|
||||||
module juqs(model = CIR, ver = VERSION, collar = SHORT, throw_type = throw_types[0], shaft_r = shaft_r, pivot_depth = pivot_depth) {
|
//juqs(model = OCTN, collar = SHORT, throw_type= throw_types[2], production = true);
|
||||||
|
|
||||||
|
module juqs(model = CIR, ver = VERSION, collar = SHORT, throw_type = throw_types[0], shaft_r = shaft_r, pivot_depth = pivot_depth, production = false) {
|
||||||
throw = throw_type[0];
|
throw = throw_type[0];
|
||||||
collar_h = collar[0];
|
collar_h = collar[0];
|
||||||
bevel = collar[1];
|
bevel = collar[1];
|
||||||
@@ -36,25 +38,13 @@ module juqs(model = CIR, ver = VERSION, collar = SHORT, throw_type = throw_types
|
|||||||
base(b=0);
|
base(b=0);
|
||||||
collar(collar_h);
|
collar(collar_h);
|
||||||
if(stepped)
|
if(stepped)
|
||||||
collar(collar_h + step_h, 23.5 / 2);
|
collar(h = collar_h + step_h, r = 23.5 / 2, bevel = production ? 0.5 : undef);
|
||||||
};
|
};
|
||||||
bevels(collar_h + step_h, bevel[0], bevel[1]) {
|
bevels(collar_h + step_h, bevel[0], production ? 0 : bevel[1]) {
|
||||||
translate([0,0,-pivot_depth]){
|
hollow(model, throw, shaft_r, pivot_depth);
|
||||||
if(model == CIR)
|
|
||||||
cir_gate(throw, shaft_r);
|
|
||||||
if(model == SQR)
|
|
||||||
shape_gate(sqr_poly, throw, shaft_r);
|
|
||||||
if(model == OCT)
|
|
||||||
shape_gate(oct_poly, throw, shaft_r, 0.5);
|
|
||||||
if(model == OCTR)
|
|
||||||
octr_gate(throw, shaft_r);
|
|
||||||
if(model == OCTN)
|
|
||||||
shape_gate(octn_poly, throw, shaft_r, 0.5);
|
|
||||||
if(model == SQRN)
|
|
||||||
sqrn_gate(throw, shaft_r);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
if(!production) {
|
||||||
font = "Open Sans:style=Bold";
|
font = "Open Sans:style=Bold";
|
||||||
fontsize = 4.2;
|
fontsize = 4.2;
|
||||||
translate([0,0,-0.1]) {
|
translate([0,0,-0.1]) {
|
||||||
@@ -67,10 +57,28 @@ module juqs(model = CIR, ver = VERSION, collar = SHORT, throw_type = throw_types
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
module hollow(model = CIR, throw, shaft_r, pivot_depth){
|
||||||
|
translate([0,0,-pivot_depth]){
|
||||||
|
if(model == CIR)
|
||||||
|
cir_gate(throw, shaft_r);
|
||||||
|
if(model == SQR)
|
||||||
|
shape_gate(sqr_poly, throw, shaft_r);
|
||||||
|
if(model == OCT)
|
||||||
|
shape_gate(oct_poly, throw, shaft_r, 0.5);
|
||||||
|
if(model == OCTR)
|
||||||
|
octr_gate(throw, shaft_r);
|
||||||
|
if(model == OCTN)
|
||||||
|
shape_gate(octn_poly, throw, shaft_r, 0.5);
|
||||||
|
if(model == SQRN)
|
||||||
|
qrn_gate(throw, shaft_r);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
module bevels(collar_height, b_size = 0.8, t_size = 0.8){
|
module bevels(collar_height, b_size = 0.8, t_size = 0.8){
|
||||||
if(b_size > 0) {
|
if(b_size > 0) {
|
||||||
translate([0,0,-0.1])
|
translate([0,0,-0.1])
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user