55 lines
1.5 KiB
OpenSCAD
55 lines
1.5 KiB
OpenSCAD
width = 337;
|
|
height = 174;
|
|
thickness = 3;
|
|
|
|
tube_diam = 125;
|
|
wall_thickness = 3;
|
|
tube_mount_height = 30;
|
|
|
|
conical_height = 40;
|
|
|
|
cone_scale_x = 2.5;
|
|
cone_scale_y = 1.2;
|
|
|
|
$fn = 100;
|
|
difference(){
|
|
union(){
|
|
difference(){
|
|
cube(size=[width, height, thickness], center=true);
|
|
scale([cone_scale_x, cone_scale_y, 1])
|
|
cylinder(r=tube_diam/2-wall_thickness, h=2*thickness, center=true);
|
|
}
|
|
translate([0,0, (tube_mount_height+thickness)/2+conical_height])
|
|
difference(){
|
|
cylinder(r=tube_diam/2, h=tube_mount_height, center=true);
|
|
cylinder(r=tube_diam/2-wall_thickness, h=tube_mount_height+1, center=true);
|
|
}
|
|
translate([0, 0, (conical_height+thickness)/2])
|
|
walledCone(tube_diam);
|
|
|
|
|
|
// translate([0, 0, (conical_height+thickness)/2])
|
|
// difference(){
|
|
// cylinder(h=conical_height, r1=tube_diam/2+20, r2=tube_diam/2, center=true);
|
|
// cylinder(h=conical_height+1, r1=tube_diam/2+20-wall_thickness, r2=tube_diam/2-wall_thickness, center=true);
|
|
// }
|
|
}
|
|
translate([width/2, 0, -5])
|
|
cube([width,height+5,200], center=true);
|
|
}
|
|
|
|
|
|
module cone(diam, hei=conical_height){
|
|
hull(){
|
|
scale([cone_scale_x, cone_scale_y, 1])
|
|
cylinder(h=hei, r1=diam/2, r2=0, center=true);
|
|
cylinder(h=hei, r=diam/2, center=true);
|
|
}
|
|
}
|
|
|
|
module walledCone(diam){
|
|
difference(){
|
|
cone(diam);
|
|
cone(diam-2*wall_thickness, hei=conical_height+0.1);
|
|
}
|
|
} |