mead-horn: note dependency on dotscad
[clinton/3d-models.git] / etc / belt-clip.scad
CommitLineData
dd5fa90d
CE
1// basic belt piece, intended for game of thrones costume originally
2
cae0d928
CE
3use <dotscad/rounded_square.scad> // https://github.com/JustinSDK/dotSCAD
4
5$fs = 0.1;
6$fa = 0.1;
7
8
9buckle_height = 60;
10buckle_width = 120;
11buckle_thickness = 3;
12
13slot_width = 3.5;
14slot_height = buckle_height - 15;
15slot_edge_offset = 5.5 + slot_width;
16
17dragon_d = 90;
18
19buckle_corner_r = 1.5;
20slot_corner_r = 0.5;
21
22module buckle_piece () {
23 difference () {
24 rounded_square ([buckle_width/2, buckle_height], buckle_corner_r);
25
26 translate ([buckle_width/2 - slot_edge_offset, (buckle_height - slot_height) / 2, 0]) {
27 square ([slot_width, slot_height]);
28 translate ([slot_width/2, slot_height, 0]) circle (d=slot_width);
29 translate ([slot_width/2, 0, 0]) circle (d=slot_width);
30 }
31 }
32}
33
34module buckle_base (buckle_thickness=buckle_thickness) {
35 linear_extrude (buckle_thickness) {
36 translate ([-buckle_width/4, 0, 0]) square ([buckle_width/2, buckle_height]);
37 buckle_piece ();
38 mirror ([1, 0, 0]) buckle_piece ();
39 }
40}
41
42
dd5fa90d 43// non-free dep: https://www.myminifactory.com/object/3d-print-game-of-thrones-house-targaryen-1285
cae0d928 44module dragon (d=10) {
dd5fa90d 45 translate ([-d/2, -d/2, 0]) {
cae0d928
CE
46 resize ([d, 0, 0], auto=true ) import ("./house-targaryen-game-of-thrones-2_fixed.stl");
47 }
dd5fa90d 48
cae0d928
CE
49 cylinder (d=d, h=buckle_thickness);
50}
51
52
cae0d928 53translate ([0, -buckle_height/2, 0]) buckle_base ();
dd5fa90d 54//translate ([0, 0, 0]) dragon (d=dragon_d); // or whatever other geometry you want to integrate with belt