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