-
Notifications
You must be signed in to change notification settings - Fork 36
/
Copy pathdefault_layout.scad
80 lines (65 loc) · 2.08 KB
/
default_layout.scad
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
include <parameters.scad>
include <stabilizer_spacing.scad>
use <utils.scad>
/* [Layout Values] */
/* Layout Format (each key):
[
[ // Location Data
[x_location, y_location],
key_size,
[rotation, rotation_x, rotation_y],
],
[ // Borders
top_border,
bottom_border,
left_border,
right_border
],
extra_data // Extra data (depending on component type)
[ // Trim (optional booleans)
top_border,
bottom_border,
left_border,
right_border
],
]
*/
// Keyswitch Layout
// (extra_data = rotate_column)
base_switch_layout = [];
// MCU Position(s)
base_mcu_layout = [];
// TRRS Position(s)
base_trrs_layout = [];
// Stabilizer layout
// (extra_data = [key_size, left_offset, right_offset, switch_offset=0])
// (see stabilizer_spacing.scad for presets)
base_stab_layout = [];
// Via layout
// (extra_data = [via_width, via_length])
base_via_layout = [];
// Plate Layout (if different than PCB)
// (extra_data = component_type)
base_plate_layout = [];
// Standoff layout
// (extra_data = [standoff_integration_override, standoff_attachment_override])
base_standoff_layout = [];
module additional_plate_cutouts() { // Initialize module so it doesn't break
square(0); // Dummy geometry to fix preview bug
}
module additional_case_cavities() {
square(0); // Dummy geometry to fix preview bug
}
// Whether to only use base_plate_layout to generate the plate footprint
use_plate_layout_only = false;
// Whether to flip the layout (useful for split boards)
invert_layout_flag = false;
// Whether the layout is staggered-row or staggered-column
layout_type = "column"; // [column, row]
// Tenting
// Angle around y-axis (i.e. typing angle)
tent_angle_y = 0;
// Angle around x-axis
tent_angle_x = 0;
// Point around which keyboard is tented
tent_point = [0, 0, 0];