CruiserBC_Case/CruiserBC.scad

75 lines
2.3 KiB
OpenSCAD

include <ks0454.scad>;
include <PololuMiniPushbutton.scad>
thickness = 10;
handlebar_diameter = 22;
render = "housing";
module CruiserBC_Housing() {
difference() {
translate([0,0,-1]) cylinder(r=25, h=1, $fn=100);
translate([-7.5,-3,-1.5]) cube([3,6,3]);
translate([6,-3,-1.5]) cube([3,6,3]);
}
difference() {
union() {
cylinder(r=25, h=thickness, $fn=100);
translate([-20,-35,-1]) cube([40,20,thickness+1]);
}
translate([-1.75,-33, thickness-1]) {
translate([-16.75,-0.75, -thickness+2]) cube([37,20, thickness+1]);
#translate([-14,0,-2.4]) pmpb2p();
#translate([0,0,-2.4]) pmpb2p();
#translate([14,0,-2.4]) pmpb2p();
}
translate([0,0,-0.1]) cylinder(r=24, h=thickness+0.2);
translate([0,0,thickness-6]) ks0454_noholes();
translate([10,-28.2,-2.5]) cylinder(h=5, r=3.2, $fn=100);
}
translate([-15, -20, 0]) cylinder(d=10, h=thickness-5.9);
translate([15, -20, 0]) cylinder(d=10, h=thickness-5.9);
//%translate([0,0,thickness-5.9]) ks0454();
}
module CruiserBC_Mount() {
cube([15,15,5]);
}
module CruiserBC_Cover() {
difference() {
union() {
cylinder(r=25, h=3, $fn=100);
translate([-20,-35,0]) cube([40,20,3]);
}
translate([0,0,-0.5]) cylinder(r=17.5, h=4, $fn=100);
//translate([0,0,-0.1]) cylinder(r=19.5, h=2.1, $fn=100);
difference() {
translate([-19,-19,-0.1]) cube([38,38,2.1]);
rotate([0,0,45]) translate([-19,-19,-0.1]) difference() {
translate([-9,-9,0])cube([55,55,2.1]);
cube([38,38,2.1]);
}
}
translate([-1.75,-33, thickness-8.4]) {
translate([-14,0,-2.4]) pmpb2p_bohrung();
translate([0,0,-2.4]) pmpb2p_bohrung();
translate([14,0,-2.4]) pmpb2p_bohrung();
}
}
}
if (render == "housing" || render == "all") {
rotate([0, 0, 270]) CruiserBC_Housing();
}
if (render == "cover" || render == "all") {
!rotate([0, 0, 270]) translate([0,0,thickness]) CruiserBC_Cover();
}
if (render == "mount" || render == "all") {
//translate([0,0,-5]) CruiserBC_Mount();
}
#translate([-300,0,-12]) rotate([0,90,0]) cylinder(d=handlebar_diameter, 600);