Skip to content

Instantly share code, notes, and snippets.

@miloh
Last active August 29, 2015 13:59
Show Gist options
  • Save miloh/10910521 to your computer and use it in GitHub Desktop.
Save miloh/10910521 to your computer and use it in GitHub Desktop.
// hex shaped shell for building standoff guide out of loop-only print, no infill
// stl outputs from this openscad file work to create strong loop only objects
// port the no_of_loops and loop_width vars below into the slicer of choice (KISS was used for first test)
// and using hollow mode
// to do's
// figure out a way for solo-shell prints to have different inner and outer path shapes
// currently unused
$fn=96;
epsilon=0.02;
// M4 Nut dimensions
m4_hex_dia = 6.8;
m4_head_dia = 7.4;
m4_hex_thick=6.8 + 0.25;
m4_head_thick=m4_hex_thick;
m4_washer_thickness=1.13;
// variables needed to calculate simple offsets for loop only slicing
no_of_loops = 6;
loop_width = 0.5;
inner_diameter = 6.8;
coarse_inner_diameter = 7.25;
// variables for calling up the hexagon module
size = coarse_inner_diameter + (no_of_loops * loop_width);
screw_length = 35;
// call a hexagon module
hexagon(size, screw_length);
// cube object for sanity testing
//////////////////rotate([0,0,-60]) cube ( [size/1.75,size, height], true);
// size is the XY plane size, height in Z
module hexagon(size, height) {
boxWidth = size/1.75;
for (r = [-60, 0, 60]) rotate([0,0,r]) cube([boxWidth, size, height], true);
}
// hex shaped shell for building standoff guide out of loop-only print, no infill
// stl outputs from this openscad file work to create strong loop only objects
// port the no_of_loops and loop_width vars below into the slicer of choice (KISS was used for first test)
// and using hollow mode
// to do's
// figure out a way for solo-shell prints to have different inner and outer path shapes
// currently unused
$fn=96;
epsilon=0.02;
// M4 Nut dimensions
m4_hex_dia = 6.8;
m4_head_dia = 7.4;
m4_hex_thick=6.8 + 0.25;
m4_head_thick=m4_hex_thick;
m4_washer_thickness=1.13;
// variables needed to calculate simple offsets for loop only slicing
no_of_loops = 3;
loop_width = 0.5;
inner_diameter = 6.8;
coarse_inner_diameter = 7.25;
// variables for calling up the hexagon module
size = coarse_inner_diameter + (no_of_loops * loop_width);
screw_length = 25;
// call a hexagon module
hexagon(size, screw_length);
// cube object for sanity testing
//////////////////rotate([0,0,-60]) cube ( [size/1.75,size, height], true);
// size is the XY plane size, height in Z
module hexagon(size, height) {
boxWidth = size/1.75;
for (r = [-60, 0, 60]) rotate([0,0,r]) cube([boxWidth, size, height], true);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment