}
}
-ts_floorceil = 1.5;
-ts_outer = [20,20,20];
-ts_wall = [wallthick,wallthick,ts_floorceil];
+floorth = 2.5;
+ceilth = 2.5;
+innertube = 1.0 + 0.2;
+lidoverlap = 1.5;
+lidoverhang = 4;
ts_xbox = 30;
ts_ybox = 25;
ts_cnrrad = 10;
ts_zbox = 15;
-ts_innertube = 0.1;
-
m4_dnl Box_Part($1=transl_x,$2=transl_y, $3=rot_z,$4=mirror_xy)
m4_dnl $5=kind, $6=kindargs, $7=profile(profileargsargs))
m4_define(`Box_Part',`
m4_dnl '
-module TestSealWallProfile(){
- z = ts_zbox - ts_innertube - wallthick/2;
+module WallProfile(){
+ z = ts_zbox - innertube - wallthick/2;
translate([0, -0.1]) square([wallthick, z]);
translate([wallthick/2, z]) circle(r = wallthick/2, $fn=20);
}
+module FloorProfile(){
+ mirror([0,1]) square([wallthick, floorth]);
+}
+
+module LidProfile(){
+ rad = wallthick/2 + innertube;
+ morex = wallthick;
+ difference(){
+ translate([-lidoverlap - innertube,
+ ts_zbox - lidoverhang - innertube])
+ square([lidoverlap + innertube + wallthick + morex,
+ lidoverhang + innertube + ceilth]);
+ hull(){
+ translate([wallthick/2, ts_zbox - innertube - wallthick/2])
+ for (t=[ [0,0],
+ [morex*2, 0],
+ [0, -ts_zbox]
+ ]) {
+ translate(t)
+ circle(r= wallthick/2 + innertube, $fn=20);
+ }
+ }
+ }
+}
+
module TestSealBox(){
- TestSealDoBoxShape(`TestSealWallProfile();');
+ TestSealDoBoxShape(WallProfile(););
+ hull(){ TestSealDoBoxShape(FloorProfile();); }
}
+module ProfileDemos(){
+ WallProfile();
+ color("blue")
+ FloorProfile();
+ LidProfile();
+}
+
//TestWall();
-//TestSealWallProfile();
-TestSealBox();
+//TestSealBox();
+ProfileDemos();
//FArcSegment_mask(350);