//Engine block Eblock1=cube(1); Eblock2=cube(1); piston=cylinder(0.35,1); piston2=cylinder(0.35,1); piston.moveY(0.9); piston2.moveY(-0.9); piston.rotateX(45); piston2.rotateX(-45); Eblock1.moveY(0.8); Eblock2.moveY(-0.8); Eblock1.rotateX(45); Eblock2.rotateX(-45); Eblock=Eblock1.add(Eblock2); pistons=piston.add(piston2); Eblock3=Eblock.subtract(pistons); Eblock4=Eblock.subtract(pistons); Eblock4.moveX(1); Engine1=Eblock3.add(Eblock4); Engine2=Engine1.clone(); Engine2.moveX(2); Engine3=Engine1.add(Engine2); //Oxygen intake Base1=cube(2,2,1); Base2=cylinder(1.5,3); Base2.rotateX(10); Base2.moveZ(-1.1); Base3=Base2.intersect(Base1); Base3.rotateZ(-90); Intake1=cylinder(0.25,2); Intake2=cylinder(0.25,1.7); Intake3=cylinder(0.25,1.7); Intake1.rotateZ(90); Intake1.moveX(1); Intake2.rotateZ(90); Intake2.moveX(1.1); Intake2.moveY(0.66); Intake3.rotateZ(90); Intake3.moveX(1.1); Intake3.moveY(-0.66); O2intake1=Base3.add(Intake1); O2intake2=O2intake1.add(Intake2); O2intake3=O2intake2.add(Intake3); //transmission cable Cable1=polygon([[0,0],[3.5,0,-0.5],[3.5,4.5],[0,4.5,-0.5]]); Cable2=extrudeShape(Cable1,0.5); Cable3=polygon([[0,0],[3.2,0,-0.2],[3.2,4.2],[0,4.2,-0.2]]); Cable4=extrudeShape(Cable3,1.5); Cable4.moveX(0.15); Cable4.moveY(0.15); Cable5=Cable2.subtract(Cable4); Gear1=cylinder(1.5,0.3); Gear1.rotateX(90); Gear2=cylinder(1.5,0.2); Gear2.rotateX(90); Gear1.moveX(1.7); Gear1.moveZ(0.25); Gear2.moveX(1.7); Gear2.moveY(4.3); Gear2.moveZ(0.25); Tcable1=Cable5.add(Gear1); Tcable2=Tcable1.add(Gear2); //construction O2intake3.moveZ(1.7); O2intake3.moveX(0.3); TurboEngine=Engine3.add(O2intake3); Tcable2.rotateZ(270); Tcable2.rotateY(90); Tcable2.moveY(1.6); Tcable2.moveX(3.45); Tcable2.moveZ(1); FinalTurboEngine=TurboEngine.add(Tcable2); //display FinalTurboEngine.display();