//* ALL DIMENSION ARE IN MILLIMETERS*// include; use use ; use ; use ; module wheel_cart(){ hole_pos = 10; lower_pos = -3; distance_on_carbon = 8; width_guard = 4; rotate([0,90,0]) rotate_extrude(angle = 360, convexity = 10) { translate([20,0,0]){ rotate([0,0,90]) polygon(points=[[0,0],[0.5*distance_on_carbon,0],[0.5*distance_on_carbon+width_guard,lower_pos],[0.5*distance_on_carbon+width_guard,hole_pos],[-(0.5*distance_on_carbon+width_guard),hole_pos],[-(0.5*distance_on_carbon+width_guard),lower_pos],[-0.5*distance_on_carbon,0]]); } } } module fastener_carbon_upper_v1(){ color("DimGray",0.9) difference(){ translate([0,0,0.5*carbon_square_side+gap_fastener_lz]){ cube([5*carbon_square_side,2*carbon_square_side,carbon_square_side],center=true); } carbon_tube_square(carbon_square_side,tube_carbon_length); for(i=[-1,1]){ translate([1.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([1.5*i*carbon_square_side,0,carbon_square_side+gap_fastener_lz-(scew_head_lz+gap_above_screw_head)]){ cylinder(h=100,r = screw_head_radius); } } } } module nut_hole(){ linear_extrude(5,center=true) projection(){ union(){ cylinder(h=5,r=2,center=true); scale([1.1,1.1,1]) nut("M3"); } } } module fastener_carbon_lower_simple_v1(){ color("DimGray",0.9) difference(){ translate([0,0,-(0.5*carbon_square_side+gap_fastener_lz)]){ cube([5*carbon_square_side,2*carbon_square_side,carbon_square_side],center=true); } carbon_tube_square(carbon_square_side,tube_carbon_length); for(i=[-1,1]){ translate([1.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } } } } module fastener_carbon_lower_extended_horizontal_v1(){ color("DimGray",0.9) difference(){ translate([0,0,-(0.5*carbon_square_side+gap_fastener_lz)]){ cube([10*carbon_square_side,2*carbon_square_side,carbon_square_side],center=true); } carbon_tube_square(carbon_square_side,tube_carbon_length); for(i=[-1,1]){ translate([1.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([3.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } } } } module fastener_carbon_lower_extended_vertical_v1(){ color("DimGray",0.9) difference(){ translate([0,0,-(0.75*carbon_square_side+gap_fastener_lz)]){ cube([5*carbon_square_side,2*carbon_square_side,1.5*carbon_square_side],center=true); } scale([1.01,1.01,1]) carbon_tube_square(carbon_square_side,tube_carbon_length); for(i=[-1,1]){ translate([1.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([i*0.75*carbon_square_side,0,-1*carbon_square_side]){ rotate([90,0,0]) cylinder(h=100,r = screw_body_radius,center=true); translate([0,7,0]) rotate([90,0,0]) nut_hole(); } translate([i*1.5*carbon_square_side,0,-12]) nut_hole(); } } } module mold_snow_landing_gear_upper(){ difference(){ // union(){ // translate([0,-250,0]) //cylinder(h=25,r=50,center=true); cube([100,500,25],center=true); //} translate([0,-230.1,7.4]){ rotate([0,90,0]) difference(){ translate([10,-10,0]) cube([20,20,120],center=true); cylinder(h=140,r=20,center=true); } } } } module connector_3D_printed(){ color("DimGray",0.9){ dist_inter_connectors = 5.1; cube([30,30,5],center=true); translate([dist_inter_connectors,0,12.5]){ rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,10]) cylinder(h=20,r = screw_head_radius,center=true); cylinder(h=20,r = screw_body_radius,center=true); } } translate([-dist_inter_connectors,0,12.5]) rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,-2.5]) nut_hole(); cylinder(h=20,r = screw_body_radius,center=true); } for(i=[-1,1]) translate([i*dist_inter_connectors,0,0]) difference(){ translate([0,0,6.25]) cube([5,16,12.5],center=true); translate([0,0,12.5]) rotate([0,90,0]) cylinder(h=20,r = 7,center=true); } } } module fastener_carbon_upper_v2(){ color("DimGray",0.9) union(){ difference(){ translate([0,0,0.5*carbon_square_side+gap_fastener_lz]){ cube([4.2*carbon_square_side,1.5*carbon_square_side,carbon_square_side],center=true); } cube([14,20,8],center=true); for(i=[-1,1]){ translate([1.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([1.5*i*carbon_square_side,0,carbon_square_side+gap_fastener_lz-(scew_head_lz+gap_above_screw_head)]){ cylinder(h=100,r = screw_head_radius); } } } for(i=[-1,1]){ translate([7.1*i,0,4]) difference(){ rotate([90,0,0]) cylinder(h=1.5*carbon_square_side,r=3,center=true); translate([1.5*i,0,1.5]) cube([3,20,3],center=true); } } } } module fastener_carbon_lower_v2(){ color("DimGray",0.9) rotate([180,0,0]){ union(){ difference(){ translate([0,0,0.5*carbon_square_side+gap_fastener_lz]){ cube([4.2*carbon_square_side,1.5*carbon_square_side,carbon_square_side],center=true); } cube([14,20,8],center=true); for(i=[-1,1]){ translate([1.5*i*carbon_square_side,0,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([1.5*i*carbon_square_side,0,carbon_square_side+gap_fastener_lz]){ nut_hole(); // cylinder(h=100,r = screw_head_radius); } } } for(i=[-1,1]){ translate([7.1*i,0,4]) difference(){ rotate([90,0,0]) cylinder(h=1.5*carbon_square_side,r=3,center=true); translate([1.5*i,0,1.5]) cube([3,20,3],center=true); } } } } } module fastener_cross(distance_fastener_cross){ color("DimGray",0.9) union(){ fastener_carbon_lower_v2(); translate([0,0,-5-0.5*distance_fastener_cross]) cube([12,12,distance_fastener_cross],center=true); translate([0,0,-12-distance_fastener_cross]) rotate([0,0,90]) fastener_carbon_upper_v2(); } } module fastener_central_wing(){ color("DimGray",0.9) rotate([180,0,0]){ union(){ difference(){ translate([0,0,0.5*carbon_square_side+gap_fastener_lz]){ cube([4.2*carbon_square_side,50,carbon_square_side],center=true); } cube([14,200,8],center=true); for(j=[0:3]){ for(i=[-1,1]){ translate([1.5*i*carbon_square_side,-18.75+j*12.5,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([1.5*i*carbon_square_side,-18.75+j*12.5,carbon_square_side+gap_fastener_lz]){ nut_hole(); // cylinder(h=100,r = screw_head_radius); } } } } for(i=[-1,1]){ translate([7.1*i,0,4]) difference(){ rotate([90,0,0]) cylinder(h=50,r=3,center=true); translate([1.5*i,0,1.5]) cube([3,20,3],center=true); } } } } } module cylinder_cross(){ color("DimGray",0.9) difference(){ translate([0,0,-5]) cylinder(h=30,r=12.5,center=true); rotate([0,0,90]) scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); translate([0,0,-10]) scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); } } module cylinder_board_support(){ color("DimGray",0.9) difference(){ translate([0,0,-10]) cylinder(h=40,r=12.5,center=true); //rotate([0,0,90]) scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); translate([-50,0,-15]) cube([100,100,5.3],center=true); } } module motor_fastening(){ thick_support_motor= 5; dist_hole_motor = 0.5*23; color("DimGray",0.9) union(){ translate([0,-25+0.5*thick_support_motor,-1]) rotate([90,0,0]) difference(){ hull(){ for(i=[-1,1]) for(j=[-1,1]) translate([dist_hole_motor*i,dist_hole_motor*j,0]) cylinder(h=thick_support_motor,r=10,center=true); } for(i=[-1,1]){ for(j=[-1,1]){ translate([dist_hole_motor*i,dist_hole_motor*j,0]){ cylinder(h=2*thick_support_motor,r=screw_body_radius,center=true); translate([0,0,-0.5*thick_support_motor]) nut_hole(); } } } cylinder(h=2*thick_support_motor,r=5,center=true); } rotate([180,0,0]){ union(){ difference(){ translate([0,0,0.5*carbon_square_side+gap_fastener_lz]){ cube([4.2*carbon_square_side,50,carbon_square_side],center=true); } cube([14,200,8],center=true); for(j=[0:2]){ for(i=[-1,1]){ translate([1.5*i*carbon_square_side,-18.75+j*12.5,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([1.5*i*carbon_square_side,-18.75+j*12.5,carbon_square_side+gap_fastener_lz]){ nut_hole(); // cylinder(h=100,r = screw_head_radius); } } } } for(i=[-1,1]){ translate([7.1*i,0,4]) difference(){ rotate([90,0,0]) cylinder(h=50,r=3,center=true); translate([1.5*i,0,1.5]) cube([3,20,3],center=true); } } } } } for(i=[-1,1]) translate([11.8*i,-17,2.5]) difference(){ cube([10,10,10],center=true); rotate([-45,0,0]) translate([0,0,20]) cube([15,40,40],center=true); } translate([0,-17,-15]) difference(){ cube([10,15,15],center=true); rotate([45,0,0]) translate([0,0,-20]) cube([15,40,40],center=true); } for(i=[-1,1]) translate([23.5*i,-14.9,-5]) rotate([0,-90*i,0]) difference(){ cube([7,10,15],center=true); rotate([45,0,0]) translate([0,0,-15]) cube([15,40,40],center=true); } } module cylinder_cross_wing(){ color("DimGray",0.9) rotate([0,0,90]) difference(){ translate([0,0,15]) cylinder(h=60,r=8,center=true); translate([0,0,32]) rotate([0,0,90]) scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); translate([0,0,0]) scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); } } module angle_gimbal(R_in,R_out,height){ translate([0,0,12.5]) rotate([90,0,0]) difference(){ cylinder(h=height,r=R_out,center=true); cylinder(h=1.5*height,r=R_in,center=true); translate([0,2*R_out,0]) cube([4*R_out,4*R_out,4*R_out],center=true); translate([2*R_out,0,0]) cube([4*R_out,4*R_out,4*R_out],center=true); } } module support_gimbal(l_x,l_y,lz,lz_2,R_in,R_out){ cube([l_x,l_y,lz],center=true); translate([-0.5*l_x,0,0]) angle_gimbal(R_in,R_out,l_y); translate([-0.5*(R_in+R_out)-0.5*l_x,0,0.5*(R_in+R_out)+lz_2*0.5]) cube([lz,l_y,lz_2],center=true); } module motor_hood_V2(){ color("DimGray",0.9) difference(){ union(){ difference(){ scale([4,10,4]){ sphere(r=10,$fn=100); } scale([3.9,9.9,3.9]){ sphere(r=10,$fn=100); } translate([0,150,0]) cube([300,300,300],center=true); translate([0,-219,0]) cube([300,300,300],center=true); } translate([0,4.9,0]) rotate([90,0,0]){ cylinder(h=5,r=40,$fn=100); } } scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); translate([0,0,23.5]) rotate([90,0,0]) cylinder(h=200,r=10,center=true); } } module connector_gimbal_servo_to_balsa(){ dist_inter_connectors = 5.1; color("DimGray",0.9){ difference(){ cube([15.1,16,5],center=true); translate([0,0,12]) cylinder(h=20,r = screw_head_radius,center=true); cylinder(h=20,r = 0.8*screw_body_radius,center=true); translate([0,0,-8.5]) cylinder(h=20,r = 0.5*4.85,center=true); } // cube([30,30,5],center=true); translate([dist_inter_connectors,0,12.5]){ rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,10]) cylinder(h=20,r = screw_head_radius,center=true); cylinder(h=20,r = screw_body_radius,center=true); } } translate([-dist_inter_connectors,0,12.5]) rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,-2.5]) nut_hole(); cylinder(h=20,r = screw_body_radius,center=true); } for(i=[-1,1]) translate([i*dist_inter_connectors,0,0]) difference(){ translate([0,0,6.25]) cube([5,16,12.5],center=true); translate([0,0,12.5]) rotate([0,90,0]) cylinder(h=20,r = 7,center=true); } } } module connector_gimbal_balsa_to_balsa(){ dist_inter_connectors = 5.1; color("DimGray",0.9){ union(){ cube([15.1,16,5],center=true); // translate([0,0,12]) // cylinder(h=20,r = screw_head_radius,center=true); // cylinder(h=20,r = 0.8*screw_body_radius,center=true); // translate([0,0,-8.5]) translate([0,0,-2]) cylinder(h=4,r =1.5,center=true); } // cube([30,30,5],center=true); translate([dist_inter_connectors,0,12.5]){ rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,10]) cylinder(h=20,r = screw_head_radius,center=true); cylinder(h=20,r = screw_body_radius,center=true); } } translate([-dist_inter_connectors,0,12.5]) rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,-2.5]) nut_hole(); cylinder(h=20,r = screw_body_radius,center=true); } for(i=[-1,1]) translate([i*dist_inter_connectors,0,0]) difference(){ translate([0,0,6.25]) cube([5,16,12.5],center=true); translate([0,0,12.5]) rotate([0,90,0]) cylinder(h=20,r = 7,center=true); } } } module connector_gimbal_balsa_to_balsa_extended(){ dist_inter_connectors = 5.1; color("DimGray",0.9){ union(){ cube([15.1,16,5],center=true); // translate([0,0,12]) // cylinder(h=20,r = screw_head_radius,center=true); // cylinder(h=20,r = 0.8*screw_body_radius,center=true); // translate([0,0,-8.5]) translate([0,0,-4]) cylinder(h=8,r =1.5,center=true); } // cube([30,30,5],center=true); translate([dist_inter_connectors,0,12.5]){ rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,10]) cylinder(h=20,r = screw_head_radius,center=true); cylinder(h=20,r = screw_body_radius,center=true); } } translate([-dist_inter_connectors,0,12.5]) rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,-2.5]) nut_hole(); cylinder(h=20,r = screw_body_radius,center=true); } for(i=[-1,1]) translate([i*dist_inter_connectors,0,0]) difference(){ translate([0,0,6.25]) cube([5,16,12.5],center=true); translate([0,0,12.5]) rotate([0,90,0]) cylinder(h=20,r = 7,center=true); } } } module connector_gimbal_balsa_to_camera(){ dist_inter_connectors = 5.1; color("DimGray",0.9){ union(){ cube([15.1,16,5],center=true); // translate([0,0,12]) // cylinder(h=20,r = screw_head_radius,center=true); // cylinder(h=20,r = 0.8*screw_body_radius,center=true); // translate([0,0,-8.5]) translate([0,0,-2.5]) difference(){ // cube([70,40,2],center=true); hull(){ for(i=[-1,1]) for(j=[-1,1]) translate([28*i,11.5*j,0]) cylinder(h=2,r=10,center=true); } for(i=[-1,1]) for(j=[-1,1]) translate([28*i,11.5*j,0]) cylinder(h=5,r=screw_body_radius,center=true); } } // cube([30,30,5],center=true); translate([dist_inter_connectors,0,12.5]){ rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,10]) cylinder(h=20,r = screw_head_radius,center=true); cylinder(h=20,r = screw_body_radius,center=true); } } translate([-dist_inter_connectors,0,12.5]) rotate([0,90,0]) difference(){ cylinder(h=5,r=8,center=true); translate([0,0,-2.5]) nut_hole(); cylinder(h=20,r = screw_body_radius,center=true); } for(i=[-1,1]) translate([i*dist_inter_connectors,0,0]) difference(){ translate([0,0,6.25]) cube([5,16,12.5],center=true); translate([0,0,12.5]) rotate([0,90,0]) cylinder(h=20,r = 7,center=true); } } } module support_gimbal_servo_yaw(){ } module support_gimbal_servo_pitch(){ color("BurlyWood") difference(){ cube([88,75,5],center=true); translate([-15,0,0]) cube([80,37,10],center=true); translate([-50,0,0]) cube([100,100,10],center=true); for(i=[-1,1]) translate([10,28.5*i,0]) cylinder(h=10,r=screw_body_radius,center=true); translate([34,0,0]) cylinder(h=10,r=screw_body_radius,center=true); } } module support_gimbal_servo_roll(dist){ color("BurlyWood") difference(){ translate([dist,0,0]) cube([80,160,5],center=true); translate([dist,0,0]){ translate([20,0,0]) cube([80,120,10],center=true); translate([-30,5.5,0]){ cube([servo_width,servo_height,10],center=true); translate([0,-servo_width,0]) cylinder(h=10,r=5,center=true); // cube([4,6,10],center=true); } } for(i=[-1,1]) translate([0,70*i,0]) cylinder(h=10,r=screw_body_radius,center=true); } } module camera_horned_sungem(){ color("ForestGreen") cube([35,65,35],center=true); } module support_gimbal_carbon(){ dist = 51; color("BurlyWood") difference(){ hull(){ for(i=[-1,1]) translate([dist*i,0,0]) cylinder(h=5,r=15,center=true); } for(i=[-1,1]) translate([dist*i,0,0]) rotate([90,0,0]) carbon_tube_square(carbon_square_side,tube_carbon_length ); } } module support_gimbal_carbon_servo(){ color("BurlyWood") difference(){ support_gimbal_carbon(); rotate([0,0,90]) translate([0,5.5,0]){ cube([servo_width,servo_height,10],center=true); translate([0,-servo_width,0]) cylinder(h=10,r=5,center=true); // cube([4,6,10],center=true); } } } module support_gimbal_carbon_balsa(){ color("BurlyWood") difference(){ support_gimbal_carbon(); cylinder(h=10,r=1.55,center=true); } } // translate([0,-200,0]) // support_gimbal_carbon_balsa(); module connector_shock_absorber_lower(){ distance_1 = 15; distance_2 = 5; difference(){ union(){ cylinder(h=4,r=2*screw_body_radius,center=true); translate([0.5*distance_1,0,0]) cube([distance_1,4*screw_body_radius,4],center=true); translate([distance_1-2.5,0,0]) difference(){ rotate([0,45,0]) cube([sqrt(2)*6,4*screw_body_radius,sqrt(2)*6],center=true); translate([25,0,0]) cube([50,50,50],center=true); } for(i=[-1,1]){ translate([distance_1+distance_2,0,4*i]) cube([distance_1,4*screw_body_radius,4],center=true); translate([1.5*distance_1+distance_2,0,4*i]) cylinder(h=4,r=2*screw_body_radius,center=true); } } cylinder(h=10,r=screw_body_radius,center=true); translate([1.5*distance_1+distance_2,0,0]) cylinder(h=20,r=screw_body_radius,center=true); // translate([1.5*distance_1+distance_2,0,-6]) // nut_hole(); } } module connector_shock_absorber_upper(){ distance_1 = 30; distance_2 = 5; difference(){ union(){ for(i=[-1,1]){ translate([0,0,4*i]) cylinder(h=4,r=2*screw_body_radius,center=true); translate([0.5*distance_1,0,4*i]) cube([distance_1,4*screw_body_radius,4],center=true); } translate([distance_1-10,0,0]) cube([20,4*screw_body_radius,12],center=true); translate([distance_1-10,0,0]) rotate([0,45,0]) cube([sqrt(2)*7,4*screw_body_radius,sqrt(2)*7],center=true); for(i=[-1,1]){ translate([distance_1+distance_2,0,5*i]) cube([distance_1,4*screw_body_radius,4],center=true); translate([1.5*distance_1+distance_2,0,5*i]) cylinder(h=4,r=2*screw_body_radius,center=true); } } cylinder(h=20,r=screw_body_radius,center=true); translate([1.5*distance_1+distance_2,0,0]) cylinder(h=20,r=screw_body_radius,center=true); // translate([1.5*distance_1+distance_2,0,-6]) // nut_hole(); } } module rear_carbon_connector(){ color("DimGray",0.9) rotate([-90,0,0]){ difference(){ union(){ translate([0,30,0]) rotate([90,0,0]) cylinder(h=30,r=17,center=true); translate([0,0,0.5*carbon_square_side+gap_fastener_lz]){ cube([4.2*carbon_square_side,50,carbon_square_side],center=true); } } carbon_tube_square(carbon_square_side,tube_carbon_length ); translate([0,35,0]) rotate([90,0,90]){ carbon_tube_square(carbon_square_side,tube_carbon_length ); } translate([0,25,0]) rotate([0,0,90]){ carbon_tube_square(carbon_square_side,tube_carbon_length ); } translate([0,-11,0]) cube([14,50,8],center=true); for(j=[0:2]){ for(i=[-1,1]){ translate([1.5*i*carbon_square_side,-18.75+j*12.5,0]){ cylinder(h=100,r = screw_body_radius,center=true); } translate([1.5*i*carbon_square_side,-18.75+j*12.5,carbon_square_side+gap_fastener_lz]){ nut_hole(); } } } } for(i=[-1,1]){ translate([7.1*i,0,4]) difference(){ rotate([90,0,0]) cylinder(h=40,r=3,center=true); translate([1.5*i,0,1.5]) cube([3,20,3],center=true); } } } } module rear_hood_V2(){ color("DimGray",0.9) difference(){ union(){ difference(){ scale([4,10,4]){ sphere(r=10,$fn=100); } translate([0,-80,0]) rotate([-90,0,0]) translate([0,-10,0]) scale([15,25,1]) cylinder(h=50,r=1,center=true); scale([3.9,9.9,3.9]){ sphere(r=10,$fn=100); } translate([0,150,0]) cube([300,300,300],center=true); // translate([0,-219,0]) // cube([300,300,300],center=true); } translate([0,4.9,0]) rotate([90,0,0]){ cylinder(h=5,r=40,$fn=100); } } scale([1.05,1,1.05]) carbon_tube_square(carbon_square_side,tube_carbon_length ); translate([0,0,23.5]) rotate([90,0,0]) cylinder(h=200,r=10,center=true); } } //connector_gimbal_balsa_to_camera(); //projection(cut=true) //support_gimbal_servo_pitch(); //support_gimbal_servo_roll(-30); //connector_gimbal_balsa_to_balsa(); //connector_gimbal_balsa_to_balsa(); //support_gimbal_carbon_balsa(); //support_gimbal_carbon_servo(); //rear_hood_V2(); //rear_carbon_connector(); //connector_shock_absorber_upper(); //connector_shock_absorber_lower(); //GIMBAL module gimbal(){ dist = -30; rotate([0,90+20*cos(2*3.14*100*$t),0]){ rotate([0,-90,0]){ translate([0,-5.5,-35.5-dist]){ rotate([0,0,90]){ // rotate([0,0,20*cos(2*3.14*100*$t)]){ //sg90(); // } translate([5.5,0,29]){ rotate([0,0,0]){ // connector_gimbal_servo_to_balsa(); connector_gimbal_balsa_to_camera(); } }} } rotate([0,0,0]){ camera_horned_sungem(); } } rotate([90,0,0]){ translate([dist-40,0,0]) support_gimbal_servo_pitch(); } support_gimbal_servo_roll(dist); translate([0,82.5,0]) rotate([90,90,0]) connector_gimbal_balsa_to_balsa(); translate([0,-82.5,0]) rotate([-90,90,0]) connector_gimbal_servo_to_balsa(); translate([-30+dist,5.5,-13.2]) rotate([0,0,-90]){ sg90(); translate([5.5,0,29]){ rotate([0,0,0]){ connector_gimbal_servo_to_balsa(); } } translate([5.5,0,-3]){ rotate([180,0,0]){ connector_gimbal_balsa_to_balsa(); } } } } translate([0,88,0]) rotate([90,0,0]) support_gimbal_carbon_balsa(); translate([0,-98,0]) rotate([90,0,0]) support_gimbal_carbon_servo(); translate([-5.5,-111.5,0]) rotate([-90,0,0]) sg90(); } rear_hood_V2(); //connector_gimbal_balsa_to_balsa_extended(); //gimbal(); //translate([-6,60,50]) //rotate([90,0,0]) //support_gimbal_servo_pitch(); //translate([-12,0,0]) //support_gimbal_servo_yaw(); ////support_gimbal_servo_roll(70,40,5,30); // //translate([0,0,30]) //rotate([0,0,-90]) //support_gimbal_servo_roll(70,40,5,30); //translate([0,0,50]) //camera_horned_sungem(); //cylinder_cross(); //cylinder_board_support(); //cylinder_cross_wing(); //for(j=[0:3]){ // translate([0,-18+j*12.5,0]){ //fastener_carbon_upper_v2(); // } //} //fastener_central_wing(); //translate([0,-25,0]) //motor_fastening(); //motor_hood_V2(); //mold_snow_landing_gear_upper(); //connector_3D_printed(); //translate([0,0,24]) //wheel_cart(); //carbon_tube_square(); //translate([0,0,-24]) //wheel_cart(); //translate([0,0,32]){ //fastener_carbon_upper_v2(); //carbon_tube_square(carbon_square_side,tube_carbon_length); // fastener_cross(20); // } //fastener_carbon_lower_v2(); //// //rotate([0,0,90]){ //carbon_tube_square(carbon_square_side,tube_carbon_length); //fastener_carbon_lower_v2(); //} ////fastener_carbon_lower_simple_v1(); ////fastener_carbon_lower_extended_horizontal_v1(); //fastener_carbon_lower_extended_vertical_v1(); //translate([1.5*carbon_square_side,0,5]) //screw("M3x25");