added part selection for debug to facilitate individual part work and prints
This commit is contained in:
@@ -42,6 +42,7 @@
|
|||||||
is not movable, finished indents for select components and orientations.
|
is not movable, finished indents for select components and orientations.
|
||||||
20221011 Version 2.0.1 adjusted cases and accessories, updated README.md and SBC_Case_Builder_Cases.gif
|
20221011 Version 2.0.1 adjusted cases and accessories, updated README.md and SBC_Case_Builder_Cases.gif
|
||||||
20221101 Version 2.0.2 updated sbc model framework, h3/h3+ model and rockpi5b adjustments
|
20221101 Version 2.0.2 updated sbc model framework, h3/h3+ model and rockpi5b adjustments
|
||||||
|
2022xxxx Version 2.x.x added individual part selection for debug to facilitate individual part prints
|
||||||
|
|
||||||
see https://github.com/hominoids/SBC_Case_Builder
|
see https://github.com/hominoids/SBC_Case_Builder
|
||||||
*/
|
*/
|
||||||
@@ -55,6 +56,7 @@ include <./sbc_case_builder_accessories.cfg>;
|
|||||||
/* [View] */
|
/* [View] */
|
||||||
// viewing mode "platter", "model", "debug"
|
// viewing mode "platter", "model", "debug"
|
||||||
view = "model"; // [platter, model, debug]
|
view = "model"; // [platter, model, debug]
|
||||||
|
debug_part = "bottom"; // [top, bottom, right, left, front, rear, accessories]
|
||||||
// sbc off in model view
|
// sbc off in model view
|
||||||
sbc_off = false;
|
sbc_off = false;
|
||||||
// enable highlight for sbc component subtarctive geometry
|
// enable highlight for sbc component subtarctive geometry
|
||||||
@@ -266,6 +268,12 @@ if (view == "platter") {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(case_design == "tray") {
|
||||||
|
echo(width=width+2*sidethick,depth=depth,top=top_height,bottom=bottom_height);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
echo(width=width,depth=depth,top=top_height,bottom=bottom_height);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// model view
|
// model view
|
||||||
@@ -542,12 +550,107 @@ if (view == "model") {
|
|||||||
//}
|
//}
|
||||||
// debug
|
// debug
|
||||||
if (view == "debug") {
|
if (view == "debug") {
|
||||||
case_top(case_design);
|
if(debug_part == "top") {
|
||||||
// case_bottom(case_design);
|
if(case_design == "shell") {
|
||||||
// case_side(case_design,case_style,"rear");
|
translate([0,depth,case_z]) rotate([180,0,0]) case_top(case_design);
|
||||||
// case_side(case_design,case_style,"front");
|
}
|
||||||
// case_side(case_design,case_style,"left");
|
if(case_design == "panel") {
|
||||||
// case_side(case_design,case_style,"right");
|
case_bottom(case_design);
|
||||||
|
translate([0,depth,case_z]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
if(case_design == "stacked") {
|
||||||
|
translate([0,depth,case_z]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
if(case_design == "tray") {
|
||||||
|
translate([0,depth,case_z]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
if(case_design == "round") {
|
||||||
|
translate([width+30,depth,case_z-floorthick-gap]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
if(case_design == "hex") {
|
||||||
|
translate([2*width,depth,case_z]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
if(case_design == "snap") {
|
||||||
|
translate([0,depth,case_z+2*floorthick]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
if(case_design == "fitted") {
|
||||||
|
translate([0,depth,case_z+floorthick]) rotate([180,0,0]) case_top(case_design);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(debug_part == "bottom") {
|
||||||
|
case_bottom(case_design);
|
||||||
|
}
|
||||||
|
if(debug_part == "front") {
|
||||||
|
if(case_design == "panel") {
|
||||||
|
translate([0,case_z,-depth+wallthick+gap+floorthick])
|
||||||
|
rotate([90,0,0]) case_side(case_design,case_style,"front");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(debug_part == "rear") {
|
||||||
|
if(case_design == "panel") {
|
||||||
|
translate([0,0,-gap]) rotate([-90,0,0]) case_side(case_design,case_style,"rear");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(debug_part == "right") {
|
||||||
|
if(case_design == "panel") {
|
||||||
|
translate([gap,0,-width+(2*wallthick)+gap]) rotate([0,-90,-90])
|
||||||
|
case_side(case_design,case_style,"right");
|
||||||
|
}
|
||||||
|
if(case_design == "tray") {
|
||||||
|
if(case_style == "vu5" || case_style == "vu7" || case_style == "sides") {
|
||||||
|
translate([depth,0,width-gap]) rotate([0,90,90])
|
||||||
|
case_side(case_design,case_style,"right");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(debug_part == "left") {
|
||||||
|
if(case_design == "panel") {
|
||||||
|
translate([depth,0,-gap]) rotate([0,90,90])
|
||||||
|
case_side(case_design,case_style,"left");
|
||||||
|
}
|
||||||
|
if(case_design == "tray") {
|
||||||
|
if(case_style == "vu5" || case_style == "vu7" || case_style == "sides") {
|
||||||
|
translate([gap,0,2*sidethick+gap]) rotate([0,-90,-90])
|
||||||
|
case_side(case_design,case_style,"left");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(debug_part == "accessories") {
|
||||||
|
if(accessory_name != "none") {
|
||||||
|
for (i=[1:15:len(accessory_data[a[0]])-1]) {
|
||||||
|
class = accessory_data[a[0]][i];
|
||||||
|
type = accessory_data[a[0]][i+1];
|
||||||
|
loc_x = accessory_data[a[0]][i+2];
|
||||||
|
loc_y = accessory_data[a[0]][i+3];
|
||||||
|
loc_z = accessory_data[a[0]][i+4];
|
||||||
|
face = accessory_data[a[0]][i+5];
|
||||||
|
rotation = accessory_data[a[0]][i+6];
|
||||||
|
parametric = accessory_data[a[0]][i+7];
|
||||||
|
size_x = accessory_data[a[0]][i+8];
|
||||||
|
size_y = accessory_data[a[0]][i+9];
|
||||||
|
size_z = accessory_data[a[0]][i+10];
|
||||||
|
data_1 = accessory_data[a[0]][i+11];
|
||||||
|
data_2 = accessory_data[a[0]][i+12];
|
||||||
|
data_3 = accessory_data[a[0]][i+13];
|
||||||
|
data_4 = accessory_data[a[0]][i+14];
|
||||||
|
|
||||||
|
if (class == "platter" && type != "button_top") {
|
||||||
|
add(type,loc_x,loc_y,loc_z,face,rotation,size_x,size_y,size_z,data_1,data_2,data_3,data_4);
|
||||||
|
}
|
||||||
|
if (class == "platter" && type == "button_top") {
|
||||||
|
translate([loc_x,loc_y,loc_z+1.25]) rotate([-90,0,0]) button_plunger(data_3, size_x, size_z);
|
||||||
|
translate([loc_x-20,loc_y-10,loc_z+3]) rotate([0,0,0]) button_top(data_3, size_x, size_z);
|
||||||
|
translate([loc_x-20,loc_y-20,loc_z]) rotate([0,0,0]) button_clip(data_3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(case_design == "tray") {
|
||||||
|
echo(width=width+2*sidethick,depth=depth,top=top_height,bottom=bottom_height);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
echo(width=width,depth=depth,top=top_height,bottom=bottom_height);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user