more designs
This commit is contained in:
84
ac_bus_mount_2.scad
Normal file
84
ac_bus_mount_2.scad
Normal file
@@ -0,0 +1,84 @@
|
||||
width = 140;
|
||||
height = 85;
|
||||
|
||||
diameter = 120;
|
||||
shape_length = 50;
|
||||
vent_length = 18;
|
||||
|
||||
wall_thickness = 3;
|
||||
|
||||
$fn = 100;
|
||||
|
||||
module squareToCircle(width, height, length, diameter, ovalfactor) {
|
||||
ovalf_h = 1.15;
|
||||
ovalf_w = 0.70;
|
||||
hull(){
|
||||
rotate([90,0,0])
|
||||
linear_extrude(1)
|
||||
square(size=[width, height], center=true);
|
||||
|
||||
translate([0, length])
|
||||
rotate([90,0,0])
|
||||
linear_extrude(1)
|
||||
scale([ovalf_h, ovalf_w, 1])
|
||||
circle(r=diameter/2);
|
||||
}
|
||||
translate([0, length+10, 0])
|
||||
rotate([90, 0, 0])
|
||||
linear_extrude(10)
|
||||
scale([ovalf_h, ovalf_w, 1])
|
||||
circle(r=diameter/2);
|
||||
}
|
||||
|
||||
module hollowStoC(width, height, length, diameter, ovalfactor, wall_thickness){
|
||||
difference(){
|
||||
squareToCircle(width, height, length, diameter, ovalfactor);
|
||||
translate([0, -0.005, 0])
|
||||
squareToCircle(width-2*wall_thickness, height-2*wall_thickness, length+0.01, diameter-2*wall_thickness, ovalfactor);
|
||||
}
|
||||
}
|
||||
|
||||
module squareHole(width, height, length, wall_thickness) {
|
||||
translate([0, -length/2-1, 0])
|
||||
rotate([90, 0, 0])
|
||||
difference(){
|
||||
cube(size=[width, height, length], center=true);
|
||||
cube(size=[width-2*wall_thickness, height-2*wall_thickness, length+0.01], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
module diagonalPlate(width, length, thickness){
|
||||
difference(){
|
||||
rotate([-45, 0, 0])
|
||||
cube(size=[width, length, thickness], center=true);
|
||||
translate([0, -length*cos(45), 0])
|
||||
cube(size=[width+3, length, 20], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
module vent(width, height, length, wall_thickness) {
|
||||
squareHole(width, height, length, wall_thickness);
|
||||
translate([0, -length+1.1, 30])
|
||||
diagonalPlate(width, 10, 2);
|
||||
translate([0, -length+1.1, 15])
|
||||
diagonalPlate(width, 10, 2);
|
||||
translate([0, -length+1.1, 0])
|
||||
diagonalPlate(width, 10, 2);
|
||||
translate([0, -length+1.1, -15])
|
||||
diagonalPlate(width, 10, 2);
|
||||
translate([0, -length+1.1, -30])
|
||||
diagonalPlate(width, 10, 2);
|
||||
|
||||
translate([0, -length, 0])
|
||||
rotate([90,0,0])
|
||||
difference(){
|
||||
cube(size=[width+15, height+15, 2], center=true);
|
||||
cube(size=[width, height, 2.01], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
hollowStoC(width, height, shape_length, diameter, 1, wall_thickness);
|
||||
vent(width, height, vent_length, wall_thickness);
|
||||
|
||||
// translate([-120,0,0])
|
||||
// cube(size=[100, 250, 10], center=true);
|
||||
Reference in New Issue
Block a user