chiark / gitweb /
velux-window-grip: wip
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 4 May 2014 19:57:41 +0000 (20:57 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 4 May 2014 19:57:41 +0000 (20:57 +0100)
velux-window-grip.scad [new file with mode: 0644]

diff --git a/velux-window-grip.scad b/velux-window-grip.scad
new file mode 100644 (file)
index 0000000..672a42f
--- /dev/null
@@ -0,0 +1,54 @@
+// -*- C -*-
+
+include <funcs.scad>
+
+main_thick = 3.3;
+main_in_dia = 28.9 + 0.5;
+
+horn_ext_dia = 20 - 0.5; //?
+
+horn_c_x = -5; //?
+horn_c_dy= -5; //?
+
+blhook_start_ang = 45;
+
+width = 20;
+
+mc_mid_rad = main_in_dia/2 + main_thick/2;
+
+mc_bl = circle_point([0,0], mc_mid_rad, 270-blhook_start_ang);
+
+$fs=0.1;
+
+horn_thick = main_thick;
+
+module MainLoop(){
+  intersection(){
+    difference(){
+      circle(r= main_in_dia/2 + main_thick, $fn=50);
+      circle(r= main_in_dia/2, $fn=50);
+    }
+    polygon([[0,0],
+            3*mc_bl,
+            [0, -100],
+            [100,-100],
+            [100,100],
+            [0,100]]);
+  }
+  translate(mc_bl)
+    circle(main_thick/2);
+  translate([horn_c_x, mc_mid_rad + horn_c_dy])
+    intersection(){
+    difference(){
+      circle(horn_ext_dia/2);
+      circle(horn_ext_dia/2 - horn_thick);
+    }
+    polygon([[0,0],
+             [-50,0],
+             [0,50]]);
+  }
+  translate([0,main_in_dia/2]) mirror([1,0])
+    square([-horn_c_x + horn_ext_dia/2 * 0.75, main_thick]);
+}
+
+MainLoop();