Rev Author Line No. Line
4014 kaklik 1 x_size = 20; // horizontal outer size of the aquarium pedestal.
2 y_size = 20; //
4013 kaklik 3 thickness = 10; // thickness of the pad bellow aquarium. hairs lenght is 12mm.
4014 kaklik 4 rim_height = 7; // height of upper rim for fixing the aquarium in position.
4012 kaklik 5  
4045 kaklik 6 mount_hole = 3.7;
4014 kaklik 7 clear = 0.175;
8  
9  
10 // aquarium pad
11  
4012 kaklik 12 difference () {
4014 kaklik 13 intersection() {
14 union(){ // bottom part with rim/fixing pin
15 rotate([0,0,45])
16 cube([x_size, y_size ,thickness], center = true);
17 translate ([sqrt(pow(x_size,2) + pow(x_size,2))/4, sqrt(pow(x_size,2) + pow(x_size,2))/4, thickness/2 + rim_height/2])
18 cube([sqrt(pow(x_size,2) + pow(x_size,2))/2, sqrt(pow(x_size,2) + pow(x_size,2))/2, rim_height], center = true);
4012 kaklik 19  
4014 kaklik 20 };
21  
22 rotate([0,0,45])
4017 kaklik 23 cube([x_size, y_size ,4*thickness], center = true); // cut out half of top tip
4014 kaklik 24 }
4017 kaklik 25 cylinder (h = thickness + rim_height, r= mount_hole, $fn=20); // hole for screw head
4014 kaklik 26 translate ([0, 0, -thickness]) // hole for the screw
4045 kaklik 27 cylinder (h = thickness + rim_height, r= mount_hole/2, $fn=20);
4014 kaklik 28  
4017 kaklik 29  
4014 kaklik 30 rotate([0,0,-45]) // hole for top part mounting nut
31 translate ([ 0, -x_size/3, thickness/3])
4017 kaklik 32 cube([6, 3, thickness], center = true);
4014 kaklik 33  
34 rotate([90,0,-45]) // hole for top part mounting screw.
4017 kaklik 35 translate ([ 0, 1.8, 0])
4045 kaklik 36 cylinder (h = thickness + rim_height, r= mount_hole/2, $fn=20);
4014 kaklik 37  
4012 kaklik 38 }
39  
40  
4017 kaklik 41  
4013 kaklik 42  
4045 kaklik 43 //translate ([0, 0, thickness]) // separate two parts
4014 kaklik 44  
4045 kaklik 45 /*rotate([180,0,0]) // hole for top part mounting nut
4017 kaklik 46  
4045 kaklik 47  
4014 kaklik 48 //Top part
49  
4045 kaklik 50 union () {
4014 kaklik 51  
4045 kaklik 52 wall_thickness = 3;
4014 kaklik 53  
4045 kaklik 54 rotate([0,0,45])
55 translate ([-wall_thickness, 0, 0])
56  
57 difference () {
58 translate ([wall_thickness/2, 0, thickness/2 + 1.5*wall_thickness])
59 cube([x_size - wall_thickness, y_size , wall_thickness ], center = true);
60  
61 rotate([0,0,-45])
62 translate ([sqrt(pow(x_size,2) + pow(x_size,2))/4, sqrt(pow(x_size,2) + pow(x_size,2))/4 , rim_height])
63 cube([sqrt(pow(x_size,2) + pow(x_size,2))/2, sqrt(pow(x_size,2) + pow(x_size,2))/2, 2*rim_height], center = true);
64 };
65  
66 rotate([0,0,45])
67 translate ([-8.3, 0, 0])
68  
69 difference () {
70 translate ([8.3/2, 0, thickness/2 + wall_thickness/2])
71 cube([x_size - 8.3, y_size , wall_thickness ], center = true);
72  
73 rotate([0,0,-45])
74 translate ([sqrt(pow(x_size,2) + pow(x_size,2))/4, sqrt(pow(x_size,2) + pow(x_size,2))/4 , rim_height])
75 cube([sqrt(pow(x_size,2) + pow(x_size,2))/2, sqrt(pow(x_size,2) + pow(x_size,2))/2, rim_height], center = true);
76 };
77  
78  
79 rotate([0,0,-45])
80  
81 difference () {
82  
83 translate ([0, -y_size/2 - wall_thickness/2 , 1.25 * wall_thickness])
84 cube([y_size, wall_thickness , thickness + 1.5*wall_thickness ], center = true);
85  
86  
87 rotate([90,0,0])
88 translate ([-0.5/2, 0, rim_height/3])
89 minkowski() {
90 cube([0.5,3.1,10]);
91 cylinder(r=1.5,h=1,$fn=50);
92 }
4014 kaklik 93 }
94  
4045 kaklik 95  
4014 kaklik 96  
97 }
98  
99