aboutsummaryrefslogtreecommitdiff
path: root/candlestick_molds/diamond.scad
blob: ad3f3c40400a74147e82a6c82b39d21d6f8e6cea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
face_diagonal = sqrt(2);
cube_diagonal = sqrt((face_diagonal^2)+1);
angle = asin(face_diagonal/cube_diagonal);
point_height_1 = cos(angle);
point_height_2 = (cube_diagonal-(2*point_height_1));

module diamond(vertical_position=0) {
	rotate([0, 0, vertical_position*60])
	scale([1, 1, 2])
	translate([0, 0, vertical_position * point_height_2])
	translate([0, 0, -point_height_1])
	rotate(angle, [1, -1, 0])
	cube();
}

difference() {
	diamond(0);
	translate([-2, -2, -2])
		cube([4, 4, 2]);
}
diamond(1);
diamond(2);
diamond(3);
diamond(4);
diamond(5);
diamond(6);