[ -block_x, block_y_min ]);
}
+module MainExtrude(){
+ linextr(0, main_sz_z)
+ children();
+}
+module RackShear(){
+ multmatrix([ [ 1, 0, 0, 0 ],
+ [ 0, 1, 0.1, 0 ],
+ [ 0, 0, 1, 0 ],
+ [ 0, 0, 0, 1 ] ])
+ children();
+}
+
module GraspFixingElevation(){
intersection(){
union(){
difference(){
union(){
- linextr(0, main_sz_z){
+ MainExtrude(){
GraspElevation();
BlockElevation();
+ }
+ RackShear() MainExtrude(){
StrapBarrelElevation();
}
difference(){
- linextr(0, main_sz_z){
+ RackShear() MainExtrude(){
GraspFixingElevation();
}
}
}
- linextr(-10, main_sz_z+10) {
+ RackShear() linextr(-10, main_sz_z+10) {
for (mx=[0,1]) {
mirror([mx,0]) {
translate([ rack_rail_x, $rack_rail_y ]){