Ver Fonte

Add other headphones mount.

Cixo Develop há 9 meses atrás
pai
commit
ccf7095714

+ 117 - 0
assets/headphones_mount.scad

@@ -0,0 +1,117 @@
+include <../config/headphones_mount.scad>
+
+module headphones_mount_object() {
+    length = headphones_mount_length;
+    height = headphones_mount_height;
+    thickness = headphones_mount_thickness;
+    width = headphones_mount_width;
+    screw = headphones_mount_screw;
+    screws_width = headphones_mount_screws_width;
+
+    module base() {
+        module cutoff(x = 0, y = 0, rotation = 0) {
+            translate([x, y]) {
+                rotate(rotation) {
+                    move = width / 2 - thickness / 2;
+
+                    hull() {
+                        translate([-move, 0]) {
+                            circle(d = thickness);
+                        }
+
+                        translate([move, 0]) {
+                            circle(d = thickness);
+                        }
+                    }
+                }
+            }
+        }
+
+        module ending(split = false) {
+            mirror([split ? 1 : 0, 0, 0]) {
+                translate([length / 2, 0, height - thickness / 2]) {
+                    rotate([90, 90, 0]) {
+                        rotate_extrude(angle = 90) {
+                            cutoff(rotation = 90, x = height - thickness / 2);
+                        }
+                    }
+                }
+            }
+        }
+
+        module center() {
+            rotate([90, 0, 90]) {
+                translate([0, 0, -height / 2]) {
+                    linear_extrude(height = length + height, center = true) {
+                        cutoff();
+                    }
+                }
+            }
+        }
+
+        module result() {
+            translate([0, 0, thickness / 2 - height / 2]) {
+                ending(split = false);
+                ending(split = true);
+                center();
+            }
+        }
+
+        result();
+    }
+
+    module screws() {
+        move = screws_width / 2;
+        
+        module screw_hole(x = 0, y = 0) {
+            translate([x, y]) {
+                circle(d = screw);
+            }
+        }
+
+        module mount() {
+            hull() {
+                translate([-move, 0]) {
+                    circle(d = height);
+                }
+
+                translate([move, 0]) {
+                    circle(d = height);
+                }
+            }
+        }
+
+        module shape() {
+            difference() {
+                mount();
+                screw_hole(move);
+                screw_hole(-move);
+            }
+        }
+
+        module final() {
+            linear_extrude(height = thickness, center = true) {
+                shape();
+            }
+        }
+
+        translate([thickness * 1.5 - length - height, 0, 0]) {
+            rotate([90, 0, 90]) {
+                final();
+            }
+        }
+    }
+
+    module final() {
+        color("#404040") {
+            render() {
+                union() {
+                    screws();
+                    base();
+                }
+            }
+        }
+    }
+
+    final();
+}

+ 6 - 0
config/headphones_mount.scad

@@ -0,0 +1,6 @@
+headphones_mount_length = 30;
+headphones_mount_height = 30;
+headphones_mount_thickness = 10;
+headphones_mount_width = 20;
+headphones_mount_screw = 3;
+headphones_mount_screws_width = 60;

+ 4 - 0
manufacture/headphones_mount.3D.scad

@@ -0,0 +1,4 @@
+include <../assets/headphones_mount.scad>
+
+$fn = 100;
+headphones_mount_object();

+ 4 - 0
renders/headphones_mount.scad

@@ -0,0 +1,4 @@
+include <../assets/headphones_mount.scad>
+
+$fn = 100;
+headphones_mount_object();