]> www.fi.muni.cz Git - things.git/commitdiff
808 glasses holder - another interation
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Thu, 16 Nov 2017 13:51:09 +0000 (14:51 +0100)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Thu, 16 Nov 2017 13:51:09 +0000 (14:51 +0100)
808-glasses-holder.scad

index c675f04bfde31630ce8275d07f3a828fb1e9f3f5..9834ad5401a184e997ce7190e8266ac82d34d0f5 100644 (file)
@@ -6,42 +6,44 @@ wall = 1.5;
 lens_size = 9.2;
 lens_depth = 3;
 lens_side = 0.9;
-lens_angle = 0;
+lens_up_angle = 0;
 
 cable_w = 7;
 
 stem_w = 2.75;
 slot_l = 8;
 slot_x_off = 6;
-slot_angle = 15;
+slot_angle = 10;
 slot_y_angle = 10;
 
-// FIXME: Print rotated 180 degrees!
 module body() {
-       hull() {
-               rotate([lens_angle, 0, 0])
-               translate([-lens_size/2-wall, 0, 0])
-                       cube([lens_size+2*wall, 2*wall+lens_depth, wall+lens_size/2]);
-               rotate([0, 0, slot_angle])
-               translate([-stem_w-wall-slot_x_off, -slot_l, 0])
-                       cube([stem_w + 2*wall, slot_l, wall + lens_size/2]);
+       intersection() {
+               hull() {
+                       // lens outer body
+                       rotate([lens_up_angle, 0, 0])
+                       translate([-lens_size/2-wall, 0, 0])
+                               cube([lens_size+2*wall, 2*wall+lens_depth, wall+lens_size/2]);
+                       // stem outer body
+                       rotate([0, 0, slot_angle])
+                       translate([-stem_w-wall-slot_x_off, -slot_l, 0])
+                               cube([stem_w + 2*wall, slot_l, wall + lens_size/2]);
+               }
+               translate([-infty/2, -infty/2, 0])
+                       cube([infty, infty, wall+lens_size/2]);
        }
 }
 
 difference() {
        body();
-       // bottom
-       translate([-infty/2, -infty/2, -infty]) cube(infty);
        // lens body
-       rotate([lens_angle, 0, 0])
+       rotate([lens_up_angle, 0, 0])
        translate([-lens_size/2, wall, wall+(wall+lens_depth)*tan(-lens_angle)])
                cube([lens_size, lens_depth, lens_size + eps]);
        // lens front
-       rotate([lens_angle, 0, 0])
+       rotate([lens_up_angle, 0, 0])
        translate([-lens_size/2+lens_side, wall, wall+(wall+lens_depth)*tan(-lens_angle)])
                cube([lens_size-2*lens_side, lens_depth+wall+eps, lens_size + wall + 2*eps]);
        // cable hole
-       rotate([lens_angle, 0, 0])
        translate([-cable_w/2, wall, -eps])
                cube([cable_w, lens_depth+wall+eps, lens_size+wall+2*eps]);
        rotate([0, 0, slot_angle])