]> www.fi.muni.cz Git - things.git/blob - ft-scout-landing-gear-support.scad
ft scout landling gear support
[things.git] / ft-scout-landing-gear-support.scad
1 infty = 100;
2 eps = 0.01;
3
4 fuse_w = 40;
5 gear_w = fuse_w - 16;
6 gear_l = 25;
7 spring_l = 6;
8
9 base_w = fuse_w - 10;
10 base_l = gear_l + 3;
11 base_h = 1;
12 base_beam_w = spring_l + 2;
13 rear_spring_l = 3;
14 rear_beam_w = rear_spring_l + 3;
15
16 hook_wall = 1.5;
17 hook_in = 1.5;
18
19 module hook(w) {
20         translate([0, w/2, base_h + hook_in/2])
21         rotate([90, 90, 0])
22         difference() {
23                 hull() {
24                         cylinder(r = hook_in/2 + hook_wall/2, h = w, $fn = 6);
25                         translate([hook_in/2, 0, 0])
26                                 cube([eps, hook_in/2 + hook_wall, w]);
27                 }
28                 translate([0, 0, -eps])
29                         cylinder(r = hook_in/2, h = w + 2*eps, $fn = 6);
30                 translate([-infty/2, -infty, -infty/2]) cube(infty);
31                 translate([hook_in/2 + eps,, -infty/2, -infty/2]) cube(infty);
32         }
33 }
34
35
36
37 // wide beam
38 translate([0, -base_w/2, 0])
39         cube([base_beam_w, base_w, base_h]);
40 // long center beam
41 translate([0, -rear_beam_w/2, 0])
42         cube([base_l, rear_beam_w, base_h]);
43
44 // rear hook
45 translate([gear_l, 0, 0])
46         hook(rear_spring_l);
47 // rear front hook
48 translate([gear_l - hook_in/2, 0, 0])
49         rotate([0, 0, 180])
50         hook(rear_spring_l);
51
52 // side hooks
53 for (y = [-1, 1]) scale([1, y, 1])
54         translate([1, gear_w/2, 0])
55         rotate([0, 0, 70])
56                 translate([0, -spring_l/2, 0])
57                 hook(spring_l);