That shit's cool! Is this open source?
3DPrinting
3DPrinting is a place where makers of all skill levels and walks of life can learn about and discuss 3D printing and development of 3D printed parts and devices.
The r/functionalprint community is now located at: [email protected] or [email protected]
There are CAD communities available at: [email protected] or [email protected]
Rules
-
No bigotry - including racism, sexism, ableism, homophobia, transphobia, or xenophobia. Code of Conduct.
-
Be respectful, especially when disagreeing. Everyone should feel welcome here.
-
No porn (NSFW prints are acceptable but must be marked NSFW)
-
No Ads / Spamming / Guerrilla Marketing
-
Do not create links to reddit
-
If you see an issue please flag it
-
No guns
-
No injury gore posts
If you need an easy way to host pictures, https://catbox.moe may be an option. Be ethical about what you post and donate if you are able or use this a lot. It is just an individual hosting content, not a company. The image embedding syntax for Lemmy is ![](URL)
Moderation policy: Light, mostly invisible
Soon to be - I need to clean up the script a bit, improve documentation and the post it to printables. I'll let you guys know ^^
Oooh, that's really cool!
It might be interesting to make a variant with straight lines: https://en.wikipedia.org/wiki/Hyperboloid_structure
That would be indeed interesting - goes onto my pile of things I want to do :D Thank you!
I just printed this one 80mm tall. I need to fix the stringing:
$fn = 10;
// small
/*
radius = 15;
height = 40;
thickness = 1;
*/
// how much can I scale this before thickness=1 fails?
// this one is a bit wobbly, probably near the practical limit.
radius = 15*2;
height = 40*2;
thickness = 1;
num_lines = 12;
rotation_angle = 180/num_lines*9;
module draw_line(i, rotation_angle) {
angle = 360 * i / num_lines;
bottom_x = radius * cos(angle);
bottom_y = radius * sin(angle);
top_x = radius * cos(angle + rotation_angle);
top_y = radius * sin(angle + rotation_angle);
hull() {
translate([bottom_x, bottom_y, 0])
linear_extrude(0.1) circle(d=thickness);
translate([top_x, top_y, height])
sphere(d=thickness);
}
}
for(i = [0 : num_lines - 1]) {
draw_line(i, rotation_angle);
draw_line(i, -rotation_angle);
}
linear_extrude(0.6)
difference() {
$fn = 50;
circle(radius * 1.1);
circle(radius / 1.1);
}