]> git.sven.stormbind.net Git - sven/scripts.git/blobdiff - openscad/silva_l1_v3.scad
add first iterations of designing a silva l1 cable clip
[sven/scripts.git] / openscad / silva_l1_v3.scad
diff --git a/openscad/silva_l1_v3.scad b/openscad/silva_l1_v3.scad
new file mode 100644 (file)
index 0000000..dd96063
--- /dev/null
@@ -0,0 +1,77 @@
+//variables
+thicknes=8.5;
+material=1.1;
+leg_length=12;
+
+//middle part
+translate([-material/2, 0 ,0])
+    cube([material, 28.5, thicknes]);
+
+    //bottom
+    color("Blue"){
+        translate([-2.1, 0, 0])
+            cube([2.5*material+3, material, thicknes]);
+    } 
+     //top
+    color("Blue"){
+        translate([0, 27.4, 0])
+            cube([2+material/2, material, thicknes]);
+    }
+    
+    
+    //right lower part
+    color("Green"){
+        translate([2+material/2, 0, 0])
+        cube([material, 12, thicknes]);
+    }
+    
+   //right upper part
+    color("Green"){
+        translate([2+material/2, 28.5-leg_length, 0])
+            cube([material, leg_length, thicknes]);
+    }
+    
+
+ /**** left part ****/
+  difference() {
+      // assemble left part
+      union() {
+        // lower left part
+        color("Green"){
+            translate([-2,0,0])
+            rotate(6.2)
+                cube([material, leg_length, thicknes]);
+       }
+       
+        //middle left part - outside
+       r_outer=3.6/2;
+        color("Blue"){
+            translate([-2.75, 14.25, 0])
+                cylinder(thicknes, r_outer, r_outer, $fn=50);
+        }
+
+         // middle part
+        color("Blue"){
+            translate([-3.3, 11.75, 0])
+                cube([material, 5, thicknes]);
+            }
+            
+        // upper left part
+        color("Green"){
+            translate([-3.3,16.7,0])
+            rotate(-6.2)
+                    cube([material, 3, thicknes]);
+       }      
+    }
+    // clear the middle of the left part
+    r_delete=3.4/2;
+      translate([-2.0, 14.25, 0])
+        cylinder(8.5, r_delete, r_delete, $fn=50);
+  }
+  
+  // fill lower left
+  color("Red"){
+      translate([-material*1.8, 0, 0])
+      cube([material*1.8, 10, thicknes]);
+  }
\ No newline at end of file