body=cone(6,4,60).rotateX(-90).translate(0,1.5,30); body.scale(0.8,1.1,1); wingsketch=polygon([[0,0],[45,45],[43.5,46.5],[20,32],[0,20], [0,0]]); leftwing=extrudeShape(wingsketch,1).rotateX(-90).translate(3,0,50); rightwing=leftwing.clone().mirrorX(); nose=cone(6,3,15).rotateX(90).translate(0,1.5,67.5).difference(cylinder(4,2).rotateX(95).translate(0,9,68)); nose.scale(0.8,1.1,1); nosetip=sphere(3).translate(0,1.5,74.75); nosetip.scale(0.8,1.1,1); tail1=cone(4,2,15).rotateX(-90).translate(0,1.55,-7.5); tail1.scale(0.8,1.1,1); tail2=cone(2,0.5,15).rotateX(-90).translate(0,1.55,-22.5); tail2.scale(0.8,1.1,1); backwingsketch=polygon([[0,0],[12,0],[20,24],[16,24],[0,0]]); backwing=extrudeShape(backwingsketch,1).rotateY(90).translate(-0.5,2.5,-10); leftbackwingsketch=polygon([[0,0],[12,0],[15,18],[12,18],[0,0]]); leftbackwing=extrudeShape(leftbackwingsketch,1).rotateY(90).rotateZ(-90).translate(0,3,-10); rightbackwing=leftbackwing.clone().mirrorY().translateY(4.5); engine1=cone(2.5,3.25,12.5).rotateX(90).translate(15,-5,40).union(cube(2,4,4).translate(15,-1,35)).difference(cone(2,2.5,8).rotateX(90).translate(15,-5,45)); engine2=cone(2.5,3.25,12.5).rotateX(90).translate(30,-5,25).union(cube(2,4,4).translate(30,- 1,20)).difference(cone(2,2.5,8).rotateX(90).translate(30,-5,30)); engine3=engine1.clone().translate(-30,-1,0); engine4=engine2.clone().translate(-60,-1,0); plane = body.union(leftwing).union(rightwing).union(nose).union(nosetip).union(tail1).union(tail2).union(backwing).union(engine1).union(engine2).union(engine3).union(engine4); plane = plane.union(leftbackwing).union(rightbackwing); plane = plane.rotateX(90); plane.display();