include ; include include thickness = 10; handlebar_diameter = 22; render = "housing"; module nutHouse() { difference() { cylinder(d=6, h=thickness+1, $fn=100); translate([0,0,-0.1]) cylinder(d=2.2, h=thickness+1.2, $fn=100); scale(1.1) translate([0,0,-0.1])nutHole(2); scale(1.1) translate([0,0,1.4])nutHole(2); scale(1.1) translate([0,0,2.9])nutHole(2); scale(1.1) translate([0,0,3.4])nutHole(2); scale(1.1) translate([0,0,4.9])nutHole(2); } } module CruiserBC_Housing() { difference() { union() { 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([6,-28.8,-2.5]) cylinder(h=5, r=4.5, $fn=100); translate([9,-32,4.5]) rotate([90,0,0]) cylinder(h=5, r=4.5, $fn=100); translate([4.2,-33.8,-0.8]) cube([10,2,5]); } translate([-15, -22, 0]) difference() { cylinder(d=10, h=thickness-5.9); translate([0,0,-0.1])cylinder(d=4, h=thickness-5.7); } translate([15, -22, 0]) difference() { cylinder(d=10, h=thickness-5.9); translate([0,0,-0.1])cylinder(d=4, h=thickness-5.7); } } translate([-15,-22,-2])cylinder(d=4.2, h=thickness-5.7); translate([15,-22,-2])cylinder(d=4.2, h=thickness-5.7); translate([-15,-22,-1.1]) nutHole(3); translate([15,-22,-1.1]) nutHole(3); } //%translate([0,0,thickness-5.9]) ks0454(); translate([0,27,-1]) nutHouse(); translate([27,0,-1]) nutHouse(); translate([-27,0,-1]) nutHouse(); translate([-19.2,19.2,-1]) nutHouse(); translate([19.2,19.2,-1]) nutHouse(); translate([22.5,-15.5,-1]) nutHouse(); translate([-22.5,-15.5,-1]) nutHouse(); translate([-22,-33,-1]) nutHouse(); translate([22,-33,-1]) nutHouse(); translate([0,-37,-1]) nutHouse(); } module CruiserBC_Mount() { cube([15,15,5]); } module CruiserBC_Cover() { union() { difference() { union() { cylinder(r=25, h=4, $fn=100); translate([-20,-35,0]) cube([40,20,4]); } translate([0,1,-0.5]) cylinder(r=17.5, h=5, $fn=100); //translate([0,0,-0.1]) cylinder(r=19.5, h=2.1, $fn=100); translate([0,1,0]) difference() { translate([-19,-19,-0.1]) cube([38,38,3.1]); rotate([0,0,45]) translate([-19,-19,-0.1]) difference() { translate([-9,-9,0])cube([55,55,3.1]); cube([38,38,3.1]); } } translate([3.25,-31, thickness-8.8]) { translate([-12.5,0,-2.0]) rotate([0,0,90]) scale([1.1,1.1,1.3]) pmpb2p_bohrung(); translate([-17.9,0.94,2]) cube([4, 2.2, 0.8]); translate([0,0,-2.0]) rotate([0,0,90]) scale([1.1,1.1,1.3]) pmpb2p_bohrung(); translate([-5.45,0.94,2]) cube([4, 2.2, 0.8]); translate([12.5 ,0,-2.0]) rotate([0,0,90]) scale([1.1,1.1,1.3]) pmpb2p_bohrung(); translate([7.15,0.94,2]) cube([4, 2.2, 0.8]); } } /* translate([0,0,-3.4]) difference() { union() { cylinder(r=25, h=4, $fn=100); translate([-20,-35,0]) cube([40,20,4]); } translate([0, 0, -1]) union() { cylinder(r=23, h=6, $fn=100); translate([-19,-34,0]) cube([38,22,6]); } } */ } } 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);