2017-08-14 02:15:42 +10:00
|
|
|
// the point of this file is to be a sort of DSL for constructing keycaps.
|
|
|
|
// when you create a method chain you are just changing the parameters
|
|
|
|
// key.scad uses, it doesn't generate anything itself until the end. This
|
2017-10-17 15:50:48 +11:00
|
|
|
// lets it remain easy to use key.scad like before (except without key profiles)
|
2017-08-14 02:15:42 +10:00
|
|
|
// without having to rely on this file. Unfortunately that means setting tons of
|
2017-09-25 14:04:34 +10:00
|
|
|
// special variables, but that's a limitation of SCAD we have to work around
|
2017-08-14 02:15:42 +10:00
|
|
|
|
2017-12-20 16:47:03 +11:00
|
|
|
use <src/key.scad>
|
2017-09-29 02:39:11 +10:00
|
|
|
|
2017-12-20 16:47:03 +11:00
|
|
|
include <src/settings.scad>
|
2018-02-05 07:43:17 +11:00
|
|
|
include <src/key_sizes.scad>
|
|
|
|
include <src/key_profiles.scad>
|
|
|
|
include <src/key_types.scad>
|
|
|
|
include <src/key_transformations.scad>
|
2017-08-12 15:10:48 +10:00
|
|
|
|
2018-02-05 06:33:12 +11:00
|
|
|
// basic
|
|
|
|
cherry() key();
|
|
|
|
|
|
|
|
translate_u(1) sa_row(2) cherry() key("q");
|
|
|
|
translate_u(2) oem_row(2) alps() key("q", inset=true);
|
2018-02-05 07:43:17 +11:00
|
|
|
translate_u(3) dsa_row() flat_support() rounded_cherry() key();
|
2018-02-05 06:33:12 +11:00
|
|
|
|
|
|
|
translate_u(1, 1) sa_row(3) lshift() cherry() key(inset=true) {
|
|
|
|
sphere(1);
|
|
|
|
};
|
|
|
|
|
|
|
|
translate_u(3, 2) sa_row(3) bar_support() spacebar() cherry() key("space bar");
|
|
|
|
|
|
|
|
translate_u(3,1) sa_row(3) 2u() cherry() {
|
2018-02-05 07:43:17 +11:00
|
|
|
$key_shape_type = "oblong";
|
2018-02-05 06:33:12 +11:00
|
|
|
$support_type = false;
|
|
|
|
$inverted_dish = true;
|
2018-01-31 04:01:38 +11:00
|
|
|
key();
|
|
|
|
}
|
2018-02-05 07:43:17 +11:00
|
|
|
|
|
|
|
|
|
|
|
/* // g20 / dsa sculpting test
|
|
|
|
for (x = [1:5]) {
|
|
|
|
translate_u(0, x) dsa_row(x) cherry() key();
|
|
|
|
translate_u(1, x) g20_row(x) cherry() key();
|
|
|
|
} */
|