1
0
Fork 0
mirror of https://github.com/imjasonh/globetrotter synced 2026-07-07 01:32:20 +00:00

Add files via upload

This commit is contained in:
Jason Hall 2025-01-21 11:20:44 -05:00 committed by GitHub
parent f775e2e65f
commit af0a47a6fe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,43 +1,40 @@
// https://github.com/BelfrySCAD/BOSL2/wiki/polyhedra.scad // https://github.com/BelfrySCAD/BOSL2/wiki/polyhedra.scad
include <BOSL2/std.scad> include <BOSL2/std.scad>
$slop = 0.15; // https://github.com/BelfrySCAD/BOSL2/wiki/constants.scad#constant-slop
include <BOSL2/polyhedra.scad> include <BOSL2/polyhedra.scad>
include <BOSL2/ball_bearings.scad>
module snub_dodecahedron_with_holes() {
difference() {
regular_polyhedron("snub dodecahedron");
// Hollow it out, leaving 1/8" walls. difference() {
// With 50% infill this should be enough to be sturdy and hold magnets. regular_polyhedron("snub dodecahedron", side=INCH);
regular_polyhedron("snub dodecahedron", side=7/8);
// Subtract holes for magnets, in all faces except those adjacent to the bottom face. // Hollow it out, leaving ~1/8" walls.
regular_polyhedron("snub dodecahedron", draw=false) regular_polyhedron("snub dodecahedron", side=15/16*INCH);
if (
$faceindex != 0 &&
$faceindex != 1 &&
$faceindex != 2 &&
$faceindex != 3 &&
$faceindex != 4 &&
$faceindex != 11 &&
$faceindex != 40 &&
$faceindex != 41 &&
$faceindex != 43 &&
$faceindex != 60 &&
$faceindex != 61 &&
$faceindex != 62 &&
$faceindex != 63 &&
$faceindex != 72 &&
$faceindex != 88 &&
$faceindex != 90
)
cylinder(d=1/8, h=1/16, center=true, $fn=100);
// Hole for bottom bearing. // Subtract holes for magnets, in all faces except those adjacent to the bottom face.
translate([0,0,-1.9024]) // guessed and checked this regular_polyhedron("snub dodecahedron", draw=false, side=INCH)
cylinder(d=.35, h=.35/2, center=true, $fn=100); //9mm diam, for 8mm bearing if (
} $faceindex != 0 &&
$faceindex != 1 &&
$faceindex != 2 &&
$faceindex != 3 &&
$faceindex != 4 &&
$faceindex != 11 &&
$faceindex != 40 &&
$faceindex != 41 &&
$faceindex != 43 &&
$faceindex != 60 &&
$faceindex != 61 &&
$faceindex != 62 &&
$faceindex != 63 &&
$faceindex != 72 &&
$faceindex != 88 &&
$faceindex != 90
)
cylinder(d=1/8*INCH+get_slop(), h=1/16*INCH+get_slop(), center=true, $fn=100);
else if ($faceindex == 3)
// Hole for a bearing.
// https://www.thingiverse.com/thing:2349065
cylinder(d=INCH+get_slop(), h=INCH, center=true, $fn=100);
} }
// Render the snub dodecahedron with the holes
scale([25.4, 25.4, 25.4]) // millimeters to inches -- this ensures 1" side lengths.
snub_dodecahedron_with_holes();