ribdepth = 3;
ribheight = 4;
+backxgap = 1;
+
blockoverlapcnr = 5;
+screwholedia = 4 + 0.5;
+
module Oval(centredist, rad) {
hull() {
translate([-centredist/2,0,0]) circle(r=rad);
}
module Positive(){
- translate([0,0, -height/2])
- linear_extrude(height=20)
- Hoop();
+ difference(){
+ translate([0,0, -height/2])
+ linear_extrude(height=20)
+ Hoop();
+
+ rotate([90,0,0])
+ translate([0,0,-50])
+ cylinder(r=screwholedia/2, h=100);
+ }
}
module Ribs(){
}
}
-module Division(biggerpi) {
- xgap = feedxgap * biggerpi;
- zgap = feedzgap * biggerpi;
-
+module Division(cutmore) {
mirror([0,0,1]) {
- translate([0, 0, zgap/2 * (1 - 2*biggerpi)]) {
- translate([-ziglen + xgap/2, -100, 0])
+ translate([0, 0, -cutmore*feedzgap/2]) {
+ translate([-ziglen + -cutmore*feedxgap/2, -100, 0])
cube([100, 100, 50]);
}
}
- translate([blockwidth/2 - blockoverlapcnr, -0.1, 0])
+ translate([blockwidth/2 - blockoverlapcnr + -cutmore*backxgap/2,
+ -1,
+ -50])
cube([100, 100, 100]);
- translate([50, houterrad + blockdepth/2 + ribsgap * biggerpi, 0])
+ translate([ziglen + -cutmore*feedxgap/2,
+ -50,
+ -50])
+ cube([100, 51, 100]);
+
+ translate([50,
+ hinnerrad/2 + houterrad/2 + blockdepth/2 + -cutmore*ribsgap/2,
+ 0])
rotate([-90,0,90])
linear_extrude(height=100)
Ribs();
% Positive();
// Division(0);
//}
- Division(0);
+ Division(-1);
}
module A(){
difference(){
Positive();
- Division(0);
+ Division(+1);
}
}
module B(){
intersection(){
Positive();
- Division(1);
+ Division(-1);
}
}
module Demo(){
color("red") A();
-// color("blue") B();
+ color("blue") B();
}
//Ribs();
//Demo();
//A();
-B();
-%Division(0);
+//B();
+//%Division(+1);
-//Demo();
+//Hoop();
+
+Demo();