Compare commits
16 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
307464622f | ||
![]() |
ac8e7480c0 | ||
![]() |
b1af76936f | ||
![]() |
772bbcb641 | ||
![]() |
3a2c6bece8 | ||
![]() |
e0e8e06bfb | ||
![]() |
c8f9528494 | ||
![]() |
bc82b675ea | ||
![]() |
84fc2482f5 | ||
![]() |
8172eb2058 | ||
![]() |
c45f6488b9 | ||
![]() |
c2567606a8 | ||
![]() |
d04ceb1164 | ||
![]() |
ea0b47ea8a | ||
![]() |
e9d9efb1d1 | ||
![]() |
c3cd46e8ca |
41 changed files with 1995288 additions and 93037 deletions
13
Libs/Mesh-lib.scad
Normal file
13
Libs/Mesh-lib.scad
Normal file
|
@ -0,0 +1,13 @@
|
|||
module mesh(xCount, yCount, height=1, size=1) {
|
||||
translate ([1*size,1*size,0]) {
|
||||
for (x =[0:(xCount-1)]) {
|
||||
for (y =[0:(yCount-1)]) {
|
||||
translate([x*4*size,y*2.2*size,0]) {
|
||||
cylinder(height,size,size,$fn=6);
|
||||
translate([2*size,1*size,0])
|
||||
cylinder(height,size,size,$fn=6);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
89
RackCabinets/AnkerPowerPort6/AnkerPowerPort6.scad
Normal file
89
RackCabinets/AnkerPowerPort6/AnkerPowerPort6.scad
Normal file
|
@ -0,0 +1,89 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
//
|
||||
|
||||
///////////////////////////////
|
||||
// Raspberry Pi 3 Model B //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = false;
|
||||
print_handle_sml = false;
|
||||
print_cabinet_sml = true;
|
||||
print_lid = false;
|
||||
print_rear = false;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 3;
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
}
|
||||
|
||||
if(print_handle_sml){ // Handle //
|
||||
units = 3;
|
||||
lay_flat_for_print = false;
|
||||
handle(units,lay_flat_for_print);
|
||||
}
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [[30,46.3,15,0,10], // Pillar in front of PowerPort 6
|
||||
[81,46.3,15,0,10], // Pillar in front of PowerPort 6
|
||||
[15.2,70,10,0,10], // Pillar to the near right of PowerPort 6
|
||||
[95.8,70,10,0,10], // Pillar to the near left of PowerPort 6
|
||||
[15.2,110,10,0,10], // Pillar to the far right of PowerPort 6
|
||||
[95.8,110,10,0,10], // Pillar to the far left of PowerPort 6
|
||||
[57,120,50,0,4], // Pillar under the PowerPort 6
|
||||
[57,80,50,0,4], // Pillar under the PowerPort 6
|
||||
];
|
||||
depth = 155;
|
||||
units = 2;
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front);
|
||||
}
|
||||
|
||||
if(print_lid){ // Lid //
|
||||
depth = 155;
|
||||
units = 3;
|
||||
screw_front = [36];//mm
|
||||
screw_back = [36];//mm
|
||||
lid(depth,units,screw_front,screw_back);
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
usb_padding = 9;
|
||||
square_hole = [[29 ,usb_padding, 6, 14], [29+(1*10) ,usb_padding, 6, 14], [29+(2*10) ,usb_padding, 6, 14], [29+(3*10) ,usb_padding, 6, 14], [29+(4*10) ,usb_padding, 6, 14], [29+(5*10) ,usb_padding, 6, 14]];
|
||||
round_hole = [[6,9,6],[6,5,6],[6,1,6]];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [36];//mm
|
||||
screw_side = [];
|
||||
depth = 155;
|
||||
units = 3;
|
||||
back_plate(units,depth,screw_top,screw_bottom,screw_side,square_hole,round_hole);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -34,7 +34,7 @@ if(print_handle_sml){ // Handle //
|
|||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
screw_bottom_front = [];
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [
|
||||
[20, 50, 15, 0, 15], // Pillar in front
|
||||
|
@ -52,7 +52,7 @@ if(print_cabinet_sml){ // Cabinet //
|
|||
difference() {
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front);
|
||||
rotate([-90,0,0]){
|
||||
translate([27.5, -156, 4])
|
||||
translate([27.5, -156, 8])
|
||||
cube([100, 98.5, 28.5]); // D-Link DGS-105 model
|
||||
}
|
||||
}
|
||||
|
@ -64,17 +64,17 @@ if(print_lid){ // Lid //
|
|||
difference () {
|
||||
lid(depth, units, screw_front, screw_back);
|
||||
rotate([-90,0,0]){
|
||||
translate([27.5, -156, 4])
|
||||
translate([27.5, -156, 8])
|
||||
cube([100, 98.5, 28.5]); // D-Link DGS-105 model
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
square_hole = [[17, 11, 82, 14]];
|
||||
square_hole = [[17, 15, 82, 14]];
|
||||
round_hole = [[6,5,6],[6,1,6]];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [];//mm
|
||||
screw_bottom = [36];//mm
|
||||
screw_side = [];
|
||||
back_plate(units, depth, screw_top, screw_bottom, screw_side, square_hole,round_hole);
|
||||
}
|
||||
|
@ -83,7 +83,7 @@ if(print_rear){ // Back plate //
|
|||
// D-Link DGS-105 model
|
||||
if(model) {
|
||||
rotate([-90,0,0]){
|
||||
translate([27.5, -156, 4])
|
||||
translate([27.5, -156, 8])
|
||||
difference(){
|
||||
union(){
|
||||
color([1,1,1]) cube([100, 98.5, 28.5]); // D-Link DGS-105 model
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
99318
RackCabinets/Edge Router X/EdgeRouter X - cabinet.stl
Normal file
99318
RackCabinets/Edge Router X/EdgeRouter X - cabinet.stl
Normal file
File diff suppressed because it is too large
Load diff
96182
RackCabinets/Edge Router X/EdgeRouter X - frontplate mesh text.stl
Normal file
96182
RackCabinets/Edge Router X/EdgeRouter X - frontplate mesh text.stl
Normal file
File diff suppressed because it is too large
Load diff
65186
RackCabinets/Edge Router X/EdgeRouter X - lid.stl
Normal file
65186
RackCabinets/Edge Router X/EdgeRouter X - lid.stl
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,49 @@
|
|||
include<../sixinch_library.scad>
|
||||
include<../../Libs/Mesh-lib.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// EdgeRouter X //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = true;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 3;
|
||||
difference() {
|
||||
union() {
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
|
||||
}
|
||||
|
||||
translate([25,1.5,0]) {
|
||||
intersection(){
|
||||
translate([-1.5,-1.5,0]){
|
||||
difference() {
|
||||
mesh(17, 6, 3, 3);
|
||||
translate([12.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([12.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
}
|
||||
}
|
||||
|
||||
cube([105,38,10]);
|
||||
}
|
||||
}
|
||||
|
||||
translate([0,0,3]) cube([155,130,10]);
|
||||
}
|
||||
|
||||
rotate([180,0,0])
|
||||
translate([58.5, -28, -3])
|
||||
linear_extrude(5)
|
||||
text("router");
|
||||
}
|
11874
RackCabinets/Edge Router X/EdgeRouter X - rear.stl
Normal file
11874
RackCabinets/Edge Router X/EdgeRouter X - rear.stl
Normal file
File diff suppressed because it is too large
Load diff
104
RackCabinets/Edge Router X/EdgeRouter X.scad
Normal file
104
RackCabinets/Edge Router X/EdgeRouter X.scad
Normal file
|
@ -0,0 +1,104 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Edgerouter X //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = false;
|
||||
print_handle_sml = false;
|
||||
print_cabinet_sml = false;
|
||||
print_lid = false;
|
||||
print_rear = true;
|
||||
model = false;
|
||||
|
||||
units = 3;
|
||||
depth = 98;
|
||||
|
||||
module model() {
|
||||
rotate([-90,0,0]){
|
||||
translate([22, -99, 8])
|
||||
difference(){
|
||||
union(){
|
||||
color([1,1,1]) cube([110, 75, 22]); // EdgeRouter X model
|
||||
}
|
||||
translate([9, -1, 6])
|
||||
color([0.5, 0.5, 0.5])
|
||||
union() { // RJ45 ports
|
||||
translate([0* (15.5 + 3.5), 0, 0]) cube([15.5, 16, 13]);
|
||||
translate([1* (15.5 + 3.5), 0, 0]) cube([15.5, 16, 13]);
|
||||
translate([2* (15.5 + 3.5), 0, 0]) cube([15.5, 16, 13]);
|
||||
translate([3* (15.5 + 3.5), 0, 0]) cube([15.5, 16, 13]);
|
||||
translate([4* (15.5 + 3.5), 0, 0]) cube([15.5, 16, 13]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
}
|
||||
|
||||
if(print_handle_sml){ // Handle //
|
||||
lay_flat_for_print = false;
|
||||
handle(units,lay_flat_for_print);
|
||||
}
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [
|
||||
[20, 20, 15, 0, 15], // Pillar in front
|
||||
[90, 20, 15, 0, 15], // Pillar in front
|
||||
|
||||
[5, 80, 10, 0, 15], // Pillar to the near right
|
||||
|
||||
[105, 80, 10, 0, 15], // Pillar to the near left
|
||||
|
||||
[55, 50, 45, 0, 8], // Pillar under the switch
|
||||
|
||||
];
|
||||
difference() {
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front);
|
||||
model();
|
||||
}
|
||||
}
|
||||
|
||||
if(print_lid){ // Lid //
|
||||
screw_front = [36];//mm
|
||||
screw_back = [36];//mm
|
||||
difference () {
|
||||
lid(depth, units, screw_front, screw_back);
|
||||
model();
|
||||
}
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
square_hole = [
|
||||
[9 + 0 * (15.5 + 3.5), 12, 15.5, 13],
|
||||
[9 + 1 * (15.5 + 3.5), 12, 15.5, 13],
|
||||
[9 + 2 * (15.5 + 3.5), 12, 15.5, 13],
|
||||
[9 + 3 * (15.5 + 3.5), 12, 15.5, 13],
|
||||
[9 + 4 * (15.5 + 3.5), 12, 15.5, 13],
|
||||
];
|
||||
round_hole = [];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [36];//mm
|
||||
screw_side = [];
|
||||
back_plate(units, depth, screw_top, screw_bottom, screw_side, square_hole,round_hole);
|
||||
}
|
||||
|
||||
|
||||
// EdgeRouter X model
|
||||
if(model) {
|
||||
model();
|
||||
}
|
44
RackCabinets/Mesh/Mesh 3U.scad
Normal file
44
RackCabinets/Mesh/Mesh 3U.scad
Normal file
|
@ -0,0 +1,44 @@
|
|||
include<../sixinch_library.scad>
|
||||
include<../../Libs/Mesh-lib.scad>
|
||||
|
||||
print_frontplate_sml = true;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 3;
|
||||
difference() {
|
||||
union() {
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
|
||||
}
|
||||
|
||||
translate([25,1.5,0]) {
|
||||
intersection(){
|
||||
translate([-1.5,-1.5,0]){
|
||||
difference() {
|
||||
mesh(17, 6, 3, 3);
|
||||
translate([12.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([12.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
}
|
||||
}
|
||||
|
||||
cube([105,38,10]);
|
||||
}
|
||||
}
|
||||
|
||||
translate([0,0,3]) cube([155,130,10]);
|
||||
}
|
||||
|
||||
rotate([180,0,0])
|
||||
translate([41.5, -26, -3])
|
||||
linear_extrude(5)
|
||||
text("USB Power");
|
||||
}
|
94278
RackCabinets/Mesh/RPi3-node-01.stl
Normal file
94278
RackCabinets/Mesh/RPi3-node-01.stl
Normal file
File diff suppressed because it is too large
Load diff
98786
RackCabinets/Mesh/RPi3-node-02.stl
Normal file
98786
RackCabinets/Mesh/RPi3-node-02.stl
Normal file
File diff suppressed because it is too large
Load diff
99962
RackCabinets/Mesh/RPi3-node-03.stl
Normal file
99962
RackCabinets/Mesh/RPi3-node-03.stl
Normal file
File diff suppressed because it is too large
Load diff
49
RackCabinets/Mesh/RPi3-text.scad
Normal file
49
RackCabinets/Mesh/RPi3-text.scad
Normal file
|
@ -0,0 +1,49 @@
|
|||
include<../sixinch_library.scad>
|
||||
include<../../Libs/Mesh-lib.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Raspberry Pi 3 Model B //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = true;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 2;
|
||||
difference() {
|
||||
union() {
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
|
||||
}
|
||||
|
||||
translate([25,1.5,0]) {
|
||||
intersection(){
|
||||
translate([-1.5,-1.5,0]){
|
||||
difference() {
|
||||
mesh(17, 5, 3, 3);
|
||||
translate([12.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([12.5, 22, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 22, 0]){cylinder(50,4.5,4.5);}
|
||||
}
|
||||
}
|
||||
|
||||
cube([105,25,10]);
|
||||
}
|
||||
}
|
||||
|
||||
translate([0,0,3]) cube([155,30,10]);
|
||||
}
|
||||
|
||||
rotate([180,0,0])
|
||||
translate([52.5, -18, -3])
|
||||
linear_extrude(5)
|
||||
text("node-03");
|
||||
}
|
41
RackCabinets/Mesh/RPi3.scad
Normal file
41
RackCabinets/Mesh/RPi3.scad
Normal file
|
@ -0,0 +1,41 @@
|
|||
include<../sixinch_library.scad>
|
||||
include<../../Libs/Mesh-lib.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Raspberry Pi 3 Model B //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = true;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 2;
|
||||
difference() {
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
translate([25,1.5,0]) {
|
||||
intersection(){
|
||||
translate([-1.5,-1.5,0]){
|
||||
difference() {
|
||||
mesh(17, 5, 3, 3);
|
||||
translate([12.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([12.5, 22, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 22, 0]){cylinder(50,4.5,4.5);}
|
||||
}
|
||||
}
|
||||
union() {
|
||||
cube([105,25,10]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
71150
RackCabinets/Mesh/RPi3_Frontplate.stl
Normal file
71150
RackCabinets/Mesh/RPi3_Frontplate.stl
Normal file
File diff suppressed because it is too large
Load diff
192
RackCabinets/OrangePi/orangepi_chassisfan.scad
Normal file
192
RackCabinets/OrangePi/orangepi_chassisfan.scad
Normal file
|
@ -0,0 +1,192 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
|
||||
//////////////////
|
||||
// Orange Pi //
|
||||
//////////////////
|
||||
|
||||
print_frontplate_sml = false;
|
||||
print_handle_sml = false;
|
||||
print_cabinet_sml = true;
|
||||
print_lid = false;
|
||||
print_rear = false;
|
||||
print_antennae = false;
|
||||
dia=11;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [[87 ,7.5, 2.1],[91 ,7.5, 2.1],[107, unit,dia-2.0]];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 2;
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
}
|
||||
|
||||
if(print_handle_sml){ // Handle //
|
||||
units = 2;
|
||||
lay_flat_for_print = true;
|
||||
handle(units,lay_flat_for_print);
|
||||
}
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=97;
|
||||
h=70;
|
||||
screw_bottom_front = [36];
|
||||
screw_bottom_back = [26];
|
||||
screw_side_front = [];
|
||||
round_peg = [[w,h, 6,2.8,4],
|
||||
[w-40,h, 6,2.8,4],
|
||||
[w-40,h-42,6,2.8,4],
|
||||
[w,h-42, 6,2.8,4]];
|
||||
|
||||
depth = 80;
|
||||
units = 2;
|
||||
difference(){
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front,screw_bottom_back);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if(print_lid){ // Lid //
|
||||
depth = 80;
|
||||
units = 2;
|
||||
screw_front = [36];//mm
|
||||
screw_back = [36];//mm
|
||||
lid(depth,2,screw_front,screw_back);
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
square_hole = [[69 ,3, 17, 15] , [88 ,4, 6, 14.5] ];
|
||||
round_hole = [[45,5,5],[45,1.5,5] ];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [26];//mm
|
||||
screw_side = [];
|
||||
depth = 98;
|
||||
units = 2;
|
||||
back_plate(units,depth,screw_top,screw_bottom,screw_side,square_hole,round_hole);
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Customization //
|
||||
///////////////////////////////
|
||||
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet fan //
|
||||
shift =20;
|
||||
|
||||
difference(){
|
||||
translate([36,14,69-shift]){
|
||||
rotate([0,0,55]){
|
||||
cube([40,26+3,26+3],center=true); //25x25x10mm fan
|
||||
}
|
||||
}
|
||||
|
||||
//fan duct
|
||||
translate([36,14,69-shift]){
|
||||
rotate([0,0,55]){
|
||||
cube([52,26,26],center=true); //25x25x10mm fan
|
||||
}
|
||||
}
|
||||
|
||||
//cutoff inside
|
||||
translate([36,14,69-shift]){
|
||||
rotate([0,0,55]){
|
||||
translate([11,0,0]){
|
||||
cube([22,32,32],center=true); //25x25x10mm fan
|
||||
}
|
||||
}
|
||||
}
|
||||
//cutoff bottom
|
||||
translate([0,-20,0]){
|
||||
cube([200,20,200]);
|
||||
}
|
||||
//cutoff side
|
||||
cube([20,20,100]);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(print_antennae){
|
||||
|
||||
//outside
|
||||
|
||||
len = 13;
|
||||
|
||||
|
||||
translate([100,30,3]){
|
||||
difference(){
|
||||
union(){
|
||||
rotate([0,90,0]){
|
||||
cylinder(d=dia,h=len);
|
||||
}
|
||||
translate([13,0,0]){sphere(d=dia);}
|
||||
translate([13,0,0]){cylinder(d=dia,h=dia/2);}
|
||||
translate([len/2,0,dia/4]){cube([13,dia,dia/2],center=true);}
|
||||
}
|
||||
//negative
|
||||
union(){
|
||||
rotate([0,90,0]){
|
||||
translate([0,0,-0.5]){cylinder(d=5.5,h=len+1); }
|
||||
}
|
||||
translate([len,0,0]){sphere(d=dia-4);}
|
||||
translate([13,0,-0.5]){cylinder(d=dia-2,h=dia/2+1);}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//inside
|
||||
translate([100,unit,-0]){
|
||||
difference(){
|
||||
union(){
|
||||
translate([13,0,0]){cylinder(d=dia-2.5,h=5.5);}
|
||||
translate([13,0,5.5]){cylinder(d=dia+4,h=3);}
|
||||
}
|
||||
translate([13,0,-1]){cylinder(d=dia-4.5,h=10);}
|
||||
translate([13,0,4]){
|
||||
for(i=[0:22.5:360]){
|
||||
rotate([0,0,i]){
|
||||
translate([9,0,0]){
|
||||
cylinder(d=4,h=5);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//spring
|
||||
difference(){
|
||||
union(){
|
||||
translate([23,0,5.5]){
|
||||
cylinder(d=3.5,h=3);
|
||||
}
|
||||
}
|
||||
translate([22.2,-5,0]){cube([5,10,15]);}
|
||||
}
|
||||
translate([22.2,-2,5.5]){ cube([1,20,3]);}
|
||||
translate([22.7,20,5.5]){
|
||||
cylinder(d=6,h=3);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
49
RackCabinets/Philips Hue/Hue frontplate-text.scad
Normal file
49
RackCabinets/Philips Hue/Hue frontplate-text.scad
Normal file
|
@ -0,0 +1,49 @@
|
|||
include<../sixinch_library.scad>
|
||||
include<../../Libs/Mesh-lib.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Raspberry Pi 3 Model B //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = true;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 3;
|
||||
difference() {
|
||||
union() {
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
|
||||
}
|
||||
|
||||
translate([25,1.5,0]) {
|
||||
intersection(){
|
||||
translate([-1.5,-1.5,0]){
|
||||
difference() {
|
||||
mesh(17, 6, 3, 3);
|
||||
translate([12.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([12.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
}
|
||||
}
|
||||
|
||||
cube([105,38,10]);
|
||||
}
|
||||
}
|
||||
|
||||
translate([0,0,3]) cube([155,130,10]);
|
||||
}
|
||||
|
||||
rotate([180,0,0])
|
||||
translate([43.5, -25, -3])
|
||||
linear_extrude(5)
|
||||
text("Philips Hue");
|
||||
}
|
12742
RackCabinets/Philips Hue/Philips Hue_backplate-2.stl
Normal file
12742
RackCabinets/Philips Hue/Philips Hue_backplate-2.stl
Normal file
File diff suppressed because it is too large
Load diff
12742
RackCabinets/Philips Hue/Philips Hue_backplate.stl
Normal file
12742
RackCabinets/Philips Hue/Philips Hue_backplate.stl
Normal file
File diff suppressed because it is too large
Load diff
115
RackCabinets/Philips Hue/Philips Hue_cabinet.scad
Normal file
115
RackCabinets/Philips Hue/Philips Hue_cabinet.scad
Normal file
|
@ -0,0 +1,115 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Philips Hue gen 2 //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = false;
|
||||
print_handle_sml = false;
|
||||
print_cabinet_sml = false;
|
||||
print_lid = true;
|
||||
print_rear = false;
|
||||
model = false;
|
||||
|
||||
units = 3;
|
||||
depth = 100;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
}
|
||||
|
||||
if(print_handle_sml){ // Handle //
|
||||
lay_flat_for_print = false;
|
||||
handle(units,lay_flat_for_print);
|
||||
}
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [
|
||||
[20, 10, 15, 0, 15], // Pillar in front
|
||||
[80, 10, 15, 0, 15], // Pillar in front
|
||||
|
||||
[10, 30, 10, 0, 15], // Pillar to the near right
|
||||
[10, 80, 10, 0, 15], // Pillar to the far right
|
||||
|
||||
[99, 30, 10, 0, 15], // Pillar to the near left
|
||||
[99, 80, 10, 0, 15], // Pillar to the far left
|
||||
|
||||
[55, 50, 50, 0, 8], // Pillar under the switch
|
||||
|
||||
];
|
||||
difference() {
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front);
|
||||
rotate([-90,0,0]){
|
||||
translate([32.5, -101, 8])
|
||||
cube([91.5, 91.5, 26]); // Philips Hue model
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(print_lid){ // Lid //
|
||||
screw_front = [36];//mm
|
||||
screw_back = [36];//mm
|
||||
difference () {
|
||||
union(){
|
||||
lid(depth, units, screw_front, screw_back);
|
||||
rotate([-90,0,0])
|
||||
translate([77.5, -56, 40.15])
|
||||
cylinder(2, r=45/2, center=false);
|
||||
}
|
||||
|
||||
rotate([-90,0,0]){
|
||||
translate([27.5, -156, 8])
|
||||
union(){
|
||||
cube([91.5, 91.5, 26]); // Philips Hue model
|
||||
translate([5 + 45.75, 55+45.75 ,20])
|
||||
cylinder(100, r=35/2, center=false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
square_hole = [[63.5, 9, 15, 14]];
|
||||
round_hole = [[43,19,10]];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [36];//mm
|
||||
screw_side = [];
|
||||
back_plate(units, depth, screw_top, screw_bottom, screw_side, square_hole,round_hole);
|
||||
}
|
||||
|
||||
|
||||
// Philips Hue model
|
||||
if(model) {
|
||||
rotate([-90,0,0]){
|
||||
translate([32.5, -101, 8])
|
||||
difference(){
|
||||
union(){
|
||||
color([1,1,1])
|
||||
cube([91.5, 91.5, 26]); // Philips Hue model
|
||||
translate([45.75, 45.75 ,20])
|
||||
cylinder(100, r=35/2, center=false);
|
||||
}
|
||||
translate([ 55, -1, 4])
|
||||
color([0.5, 0.5, 0.5])
|
||||
cube([14, 16, 14]); // RJ45 ports
|
||||
translate([ 29, -1, 13]) // Power jack
|
||||
rotate([90,0,0])
|
||||
color([0.5, 0.5, 0.5])
|
||||
cylinder(10,5,5,true);
|
||||
}
|
||||
}
|
||||
}
|
101992
RackCabinets/Philips Hue/Philips Hue_cabinet.stl
Normal file
101992
RackCabinets/Philips Hue/Philips Hue_cabinet.stl
Normal file
File diff suppressed because it is too large
Load diff
107186
RackCabinets/Philips Hue/Philips Hue_frontplate-text.stl
Normal file
107186
RackCabinets/Philips Hue/Philips Hue_frontplate-text.stl
Normal file
File diff suppressed because it is too large
Load diff
53118
RackCabinets/Philips Hue/Philips Hue_frontplate.stl
Normal file
53118
RackCabinets/Philips Hue/Philips Hue_frontplate.stl
Normal file
File diff suppressed because it is too large
Load diff
64850
RackCabinets/Philips Hue/Philips Hue_lid-hole.stl
Normal file
64850
RackCabinets/Philips Hue/Philips Hue_lid-hole.stl
Normal file
File diff suppressed because it is too large
Load diff
59446
RackCabinets/Philips Hue/Philips Hue_lid.stl
Normal file
59446
RackCabinets/Philips Hue/Philips Hue_lid.stl
Normal file
File diff suppressed because it is too large
Load diff
33
RackCabinets/RaspberryPi3BMounts/R3_Cabinet_with_mounts.scad
Normal file
33
RackCabinets/RaspberryPi3BMounts/R3_Cabinet_with_mounts.scad
Normal file
|
@ -0,0 +1,33 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// Raspberry Pi 3 Model B //
|
||||
///////////////////////////////
|
||||
print_cabinet_sml = true;
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
|
||||
pole=2.52;
|
||||
height=8;
|
||||
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [
|
||||
[w,h,6,2.8,4],
|
||||
[w-49,h,6,2.8,4],
|
||||
[w-49,h-58,6,2.8,4],
|
||||
[w,h-58,6,2.8,4],
|
||||
|
||||
[w,h, pole,0,height],
|
||||
[w-49,h, pole,0,height],
|
||||
[w-49,h-58,pole,0,height],
|
||||
[w,h-58, pole,0,height]];
|
||||
depth = 98;
|
||||
units = 2;
|
||||
shift = 0;
|
||||
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front);
|
||||
}
|
115334
RackCabinets/RaspberryPi3BMounts/R3_Cabinet_with_mounts.stl
Normal file
115334
RackCabinets/RaspberryPi3BMounts/R3_Cabinet_with_mounts.stl
Normal file
File diff suppressed because it is too large
Load diff
BIN
RackCabinets/SmartThings/Logo.png
Normal file
BIN
RackCabinets/SmartThings/Logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.3 MiB |
71
RackCabinets/SmartThings/SmartThings - mesh frontplate.scad
Normal file
71
RackCabinets/SmartThings/SmartThings - mesh frontplate.scad
Normal file
|
@ -0,0 +1,71 @@
|
|||
include<../sixinch_library.scad>
|
||||
include<../../Libs/Mesh-lib.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// SmartThings frontplate //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = 1;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 3;
|
||||
difference() {
|
||||
union() {
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
}
|
||||
|
||||
translate([25,1.5,0]) {
|
||||
intersection(){
|
||||
translate([-1.5,-1.5,0]){
|
||||
difference() {
|
||||
mesh(17, 6, 3, 3);
|
||||
translate([12.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([12.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 6, 0]){cylinder(50,4.5,4.5);}
|
||||
translate([95.5, 36, 0]){cylinder(50,4.5,4.5);}
|
||||
}
|
||||
}
|
||||
|
||||
cube([105,38,10]);
|
||||
}
|
||||
}
|
||||
|
||||
translate([0,0,3]) cube([155,130,10]);
|
||||
}
|
||||
|
||||
rotate([180,0,0])
|
||||
translate([50.5, -25, -3])
|
||||
linear_extrude(5)
|
||||
text("SmartThings");
|
||||
translate([25,33,3])
|
||||
rotate([180,0,0])
|
||||
scale([0.04, 0.04, 0.08])
|
||||
logo();
|
||||
|
||||
|
||||
}
|
||||
|
||||
module logo(){
|
||||
difference() {
|
||||
surface(file = "Logo.png");
|
||||
translate([0,0,-5])
|
||||
cube([600,600,5]);
|
||||
translate([0,0,80])
|
||||
cube([600,600,50]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//cube([600,600,0.1]);
|
||||
//difference(){
|
||||
//
|
||||
//surface(file = "Logo.png", center = false);
|
||||
|
||||
//}
|
443718
RackCabinets/SmartThings/SmartThings - mesh frontplate.stl
Normal file
443718
RackCabinets/SmartThings/SmartThings - mesh frontplate.stl
Normal file
File diff suppressed because it is too large
Load diff
12742
RackCabinets/SmartThings/SmartThings Hub v2 - backplate.stl
Normal file
12742
RackCabinets/SmartThings/SmartThings Hub v2 - backplate.stl
Normal file
File diff suppressed because it is too large
Load diff
97400
RackCabinets/SmartThings/SmartThings Hub v2 - cabinet.stl
Normal file
97400
RackCabinets/SmartThings/SmartThings Hub v2 - cabinet.stl
Normal file
File diff suppressed because it is too large
Load diff
60398
RackCabinets/SmartThings/SmartThings Hub v2 - lid.stl
Normal file
60398
RackCabinets/SmartThings/SmartThings Hub v2 - lid.stl
Normal file
File diff suppressed because it is too large
Load diff
115
RackCabinets/SmartThings/SmartThings Hub v2.scad
Normal file
115
RackCabinets/SmartThings/SmartThings Hub v2.scad
Normal file
|
@ -0,0 +1,115 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
// SmartThing Hub v2 //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = false;
|
||||
print_handle_sml = false;
|
||||
print_cabinet_sml = 0;
|
||||
print_lid = 0;
|
||||
print_rear = 1;
|
||||
model = 0;
|
||||
|
||||
units = 3;
|
||||
depth = 140;
|
||||
|
||||
module model() {
|
||||
rotate([-90,0,0]){
|
||||
translate([22, -135, 4])
|
||||
difference(){
|
||||
union(){
|
||||
color([1,1,1]) {
|
||||
fillet = 20;
|
||||
linear_extrude(height = 34)
|
||||
translate([fillet,fillet,0]){
|
||||
offset(r=fillet) {
|
||||
square([110 - 2* fillet, 126 - 2*fillet]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
color([0.5, 0.5, 0.5])
|
||||
union() {
|
||||
translate([67, -1, 10])
|
||||
cube([15.5, 16, 13]);
|
||||
|
||||
translate([25,-1,15])
|
||||
rotate([270,0,0])
|
||||
cylinder(15.5, 5, 5);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
}
|
||||
|
||||
if(print_handle_sml){ // Handle //
|
||||
lay_flat_for_print = false;
|
||||
handle(units,lay_flat_for_print);
|
||||
}
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [
|
||||
[25, 8, 15, 0, 15], // Pillar in front
|
||||
[85, 8, 15, 0, 15], // Pillar in front
|
||||
|
||||
[5, 80, 10, 0, 15], // Pillar to the near right
|
||||
[5, 120, 10, 0, 15], // Pillar to the far right
|
||||
|
||||
[105, 80, 10, 0, 15], // Pillar to the near left
|
||||
[105, 120, 10, 0, 15], // Pillar to the far left
|
||||
|
||||
[55, 70, 45, 0, 8], // Pillar under the switch
|
||||
|
||||
];
|
||||
difference() {
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front, true);
|
||||
model();
|
||||
}
|
||||
}
|
||||
|
||||
if(print_lid){ // Lid //
|
||||
screw_front = [36];//mm
|
||||
screw_back = [36];//mm
|
||||
remove = true;
|
||||
difference () {
|
||||
lid(depth, units, screw_front, screw_back, true);
|
||||
model();
|
||||
}
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
square_hole = [
|
||||
[71.5, 13, 15.5, 13],
|
||||
];
|
||||
round_hole = [
|
||||
[25.5, 19, 10, 13]
|
||||
];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [36];//mm
|
||||
screw_side = [];
|
||||
back_plate(units, depth, screw_top, screw_bottom, screw_side, square_hole,round_hole);
|
||||
}
|
||||
|
||||
|
||||
// EdgeRouter X model
|
||||
if(model) {
|
||||
model();
|
||||
}
|
85
RackCabinets/TL-SG105/TL-SG105.scad
Normal file
85
RackCabinets/TL-SG105/TL-SG105.scad
Normal file
|
@ -0,0 +1,85 @@
|
|||
include<../sixinch_library.scad>
|
||||
|
||||
//
|
||||
|
||||
///////////////////////////////
|
||||
// Raspberry Pi 3 Model B //
|
||||
///////////////////////////////
|
||||
|
||||
print_frontplate_sml = false;
|
||||
print_handle_sml = false;
|
||||
print_cabinet_sml = true;
|
||||
print_lid = false;
|
||||
print_rear = false;
|
||||
|
||||
if(print_frontplate_sml){ // Frontplate //
|
||||
square_hole = [];
|
||||
round_hole = [];
|
||||
round_peg = [];
|
||||
screw_side_front = [];
|
||||
screw_top = [36];
|
||||
screw_bottom_front = [36];
|
||||
units = 3;
|
||||
frontplate(units,square_hole,round_hole,round_peg,screw_side_front,screw_top,screw_bottom_front);
|
||||
|
||||
}
|
||||
|
||||
if(print_handle_sml){ // Handle //
|
||||
units = 3;
|
||||
lay_flat_for_print = true;
|
||||
handle(units,lay_flat_for_print);
|
||||
}
|
||||
|
||||
if(print_cabinet_sml){ // Cabinet //
|
||||
w=88;
|
||||
h=70;
|
||||
screw_bottom_front = [36];
|
||||
screw_side_front = [];
|
||||
round_peg = [[40, 45, 15, 0, 15], // Pillar in front of PowerPort 6
|
||||
[90, 45, 15, 0, 15], // Pillar in front of PowerPort 6
|
||||
[10, 80, 10, 0, 15], // Pillar to the near right of PowerPort 6
|
||||
[10, 120, 10, 0, 15], // Pillar to the far right of PowerPort 6
|
||||
[60, 110, 65, 0, 8], // Pillar under the PowerPort 6
|
||||
];
|
||||
depth = 155;
|
||||
units = 3;
|
||||
cabinet(depth,units,screw_bottom_front,round_peg,screw_side_front);
|
||||
}
|
||||
|
||||
if(print_lid){ // Lid //
|
||||
depth = 155;
|
||||
units = 3;
|
||||
screw_front = [36];//mm
|
||||
screw_back = [36];//mm
|
||||
lid(depth,units,screw_front,screw_back);
|
||||
}
|
||||
|
||||
if(print_rear){ // Back plate //
|
||||
square_hole = [[14 ,12, 80, 16]];
|
||||
round_hole = [[6,5,6],[6,1,6]];
|
||||
screw_top = [36];//mm
|
||||
screw_bottom = [36];//mm
|
||||
screw_side = [];
|
||||
depth = 155;
|
||||
units = 3;
|
||||
back_plate(units,depth,screw_top,screw_bottom,screw_side,square_hole,round_hole);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
107942
RackCabinets/TL-SG105/TL-SG105_cabinet.stl
Normal file
107942
RackCabinets/TL-SG105/TL-SG105_cabinet.stl
Normal file
File diff suppressed because it is too large
Load diff
|
@ -3,7 +3,7 @@ $fn = 50*1;
|
|||
|
||||
//Constants, do not change !
|
||||
sixinch = 155*1; // cm = 6"
|
||||
width = 155-20-20; // 11.5cm between rails
|
||||
width = sixinch-20-20; // 11.5cm between rails
|
||||
unit = (44.5/19)*6; // 1U
|
||||
gauge = 3*1;
|
||||
gauge_box = 2*1;
|
||||
|
@ -155,9 +155,9 @@ module nuttrap(){
|
|||
|
||||
|
||||
|
||||
module cabinet (dp,u,screw_bottom_front,round_peg,screw_side_front){
|
||||
module cabinet (dp,u,screw_bottom_front,round_peg,screw_side_front, remove_middle=false){
|
||||
difference(){
|
||||
box(dp,u,screw_bottom_front,round_peg,screw_side_front);
|
||||
box(dp,u,screw_bottom_front,round_peg,screw_side_front, remove_middle);
|
||||
|
||||
translate([20,unit/2+3,sixinch-40]){ cylinder(d=gauge_box,h=41);}
|
||||
translate([20,unit/2+0,sixinch-40]){ cylinder(d=gauge_box,h=41);}
|
||||
|
@ -176,7 +176,7 @@ module cabinet (dp,u,screw_bottom_front,round_peg,screw_side_front){
|
|||
|
||||
|
||||
|
||||
module box(dp,u,screw_bottom_front,round_peg,screw_side_front){
|
||||
module box(dp,u,screw_bottom_front,round_peg,screw_side_front, remove_middle){
|
||||
|
||||
/* RaspberryPi3ModelBHifiBerry */
|
||||
/* difference(){ */
|
||||
|
@ -185,8 +185,9 @@ module box(dp,u,screw_bottom_front,round_peg,screw_side_front){
|
|||
difference(){
|
||||
translate([20,0,gauge]){
|
||||
difference(){
|
||||
cube([115,u*unit,dp]);
|
||||
translate([gauge_box,gauge_box,-1]){ cube([115-gauge_box*2,u*unit,dp+2]);}
|
||||
cube_width = sixinch - 40;
|
||||
cube([cube_width,u*unit,dp]);
|
||||
translate([gauge_box,gauge_box,-1]){ cube([cube_width-gauge_box*2,u*unit,dp+2]);}
|
||||
}
|
||||
}
|
||||
//CHIMNEY
|
||||
|
@ -218,7 +219,7 @@ module box(dp,u,screw_bottom_front,round_peg,screw_side_front){
|
|||
translate([20+gauge_box,unit*u-gauge_box,gauge+dp-10-10]){rotate([0,0,-90]){screwtrap();}}
|
||||
translate([sixinch-20-gauge_box,unit*u-gauge_box,gauge+10+10]){rotate([180,0,-90]){screwtrap();}}
|
||||
translate([sixinch-20-gauge_box,unit*u-gauge_box,gauge+dp-10-10+10]){rotate([180,0,-90]){screwtrap();}}
|
||||
if(dp>90){
|
||||
if(dp>90 && !remove_middle){
|
||||
translate([sixinch-20-gauge_box,unit*u-gauge_box,gauge+dp/2-5+10]){rotate([180,0,-90]){screwtrap();}}
|
||||
translate([20+gauge_box,unit*u-gauge_box,gauge+dp/2-5]){rotate([0,0,-90]){screwtrap();}}
|
||||
}
|
||||
|
@ -278,8 +279,8 @@ module box(dp,u,screw_bottom_front,round_peg,screw_side_front){
|
|||
|
||||
}
|
||||
|
||||
module lid(dp,u,screw_front,screw_back){
|
||||
|
||||
module lid(dp,u,screw_front,screw_back, remove_middle=false){
|
||||
|
||||
difference(){
|
||||
union(){
|
||||
if(len(screw_front)>0){
|
||||
|
@ -298,8 +299,9 @@ module lid(dp,u,screw_front,screw_back){
|
|||
}
|
||||
|
||||
//lid
|
||||
cube_width = sixinch - 40;
|
||||
translate([20+gauge_box+slip,u*unit-gauge_box,gauge]){
|
||||
cube([115-gauge_box*2-slip*2,gauge_box,dp]);
|
||||
cube([cube_width-gauge_box*2-slip*2,gauge_box,dp]);
|
||||
}
|
||||
//back rest
|
||||
translate([sixinch/2-40,u*unit-gauge_box-2,gauge+dp-2-gauge_box]){
|
||||
|
@ -313,9 +315,9 @@ module lid(dp,u,screw_front,screw_back){
|
|||
translate([sixinch-20-gauge_box-4,unit*u+0.01 ,gauge+10+10-5]){rotate([90,0,0]){screw();}}
|
||||
translate([sixinch-20-gauge_box-4,unit*u +0.01 ,gauge+dp-10-10+10-5]){rotate([90,0,0]){screw();}}
|
||||
if(dp>90){
|
||||
translate([sixinch-20-gauge_box-4,unit*u+0.01 ,gauge+dp/2-5+10-5]){rotate([90,0,0]){screw();}}
|
||||
if(!remove){
|
||||
translate([20+gauge_box+4,unit*u+0.01 ,gauge+dp/2-5+5]){rotate([90,0,0]){screw();}}
|
||||
if(!remove_middle){
|
||||
translate([sixinch-20-gauge_box-4,unit*u+0.01 ,gauge+dp/2-5+10-5]){rotate([90,0,0]){screw();}}
|
||||
translate([20+gauge_box+4,unit*u+0.01 ,gauge+dp/2-5+5]){rotate([90,0,0]){screw();}}
|
||||
}
|
||||
}
|
||||
chimney();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue