3d/Motor.scad

66 lines
1.4 KiB
OpenSCAD
Raw Normal View History

2017-11-23 16:51:36 +00:00
CIRCLE_ROUNDS=180;
// Piston
difference() {
// Main Cylinder
cylinder(h=10, d=10, $fn=CIRCLE_ROUNDS);
// Main cutout
rotate([90, 0, 0])
translate([0, 1, -5]) {
cylinder(h=10, d=8, $fn=CIRCLE_ROUNDS);
}
translate([-4, -3, 0])
cube([8, 6, 1]);
// Tapering cutout on the bottom
difference() {
cylinder(h=5, d=10, $fn=CIRCLE_ROUNDS);
cylinder(h=5, d=9, $fn=CIRCLE_ROUNDS);
}
// gudgeon pin hole
rotate([0, 90, 0])
translate([-2, 0, -5])
cylinder(h=10, d=2, $fn=CIRCLE_ROUNDS);
}
// Gudgeon pin
difference() {
rotate([0, 90, 0])
translate([-2, 0, -4.5])
cylinder(h=9, d=2, $fn=CIRCLE_ROUNDS);
rotate([0, 90, 0])
translate([-2, 0, -4.5])
cylinder(h=9, d=1.5, $fn=CIRCLE_ROUNDS);
}
// Rod
difference() {
union() {
// rod shaft
translate([-1, -1.5, -13])
cube([2, 3, 15]);
// rod pin hole
rotate([90, 0, 90])
translate([0, 2, -2])
cylinder(h=4, d=4, $fn=CIRCLE_ROUNDS);
// crankshaft hole
rotate([90, 0, 90])
translate([0, -13, -2])
cylinder(h=4, d=3, $fn=CIRCLE_ROUNDS);
}
// gudgeon pin cutout
rotate([0, 90, 0])
translate([-2, 0, -4.5])
cylinder(h=9, d=2, $fn=CIRCLE_ROUNDS);
// crankshaft cutout
rotate([0, 90, 0])
translate([13, 0, -2])
cylinder(h=4, d=2, $fn=CIRCLE_ROUNDS);
}