aboutsummaryrefslogtreecommitdiff
path: root/lib/connectors.scad
diff options
context:
space:
mode:
Diffstat (limited to 'lib/connectors.scad')
-rw-r--r--lib/connectors.scad19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/connectors.scad b/lib/connectors.scad
index dd4a973..078844e 100644
--- a/lib/connectors.scad
+++ b/lib/connectors.scad
@@ -61,3 +61,22 @@ module star_connector(radius, wall, len, angles) {
}
}
}
+
+module cross_connector(radius, wall, len, angle) {
+ cc_cylinder_len = len + (radius+wall)*tan(angle)*2;
+ intersection() {
+ difference() {
+ union() {
+ translate([0, radius, 0]) rotate([0, angle, 0])
+ cylinder(r=radius + wall, h=cc_cylinder_len, center=true);
+ translate([0, -radius, 0]) rotate([0, -angle, 0])
+ cylinder(r=radius + wall, h=cc_cylinder_len, center=true);
+ }
+ translate([0, radius + 0.2, 0]) rotate([0, angle, 0])
+ cylinder(r=radius, h=cc_cylinder_len+2, center=true);
+ translate([0, -radius + 0.2, 0]) rotate([0, -angle, 0])
+ cylinder(r=radius, h=cc_cylinder_len+2, center=true);
+ }
+ cube([(len+radius)*2, (len+radius)*2, len*sin(90-angle)], center=true);
+ }
+}