mirror of
https://github.com/ervanalb/keygen.git
synced 2025-12-17 05:45:23 +00:00
split out medeco keyblanks into separate file, update biaxial to include new ones
This commit is contained in:
76
scad/medeco.scad
Normal file
76
scad/medeco.scad
Normal file
@@ -0,0 +1,76 @@
|
||||
include <medeco.gen.scad>
|
||||
|
||||
outlines_k = ["A1515",
|
||||
"1515",
|
||||
"A1517",
|
||||
"1517",
|
||||
"1518",
|
||||
"1542",
|
||||
"1543",
|
||||
"A1638",
|
||||
"1638",
|
||||
"1644",
|
||||
"1655"];
|
||||
|
||||
outlines_v = [[outline_a1515_points, outline_a1515_paths,
|
||||
[-outline_a1515_points[52][0], -outline_a1515_points[52][1]],
|
||||
engrave_a1515_points,
|
||||
engrave_a1515_paths],
|
||||
[outline_1515_points, outline_1515_paths,
|
||||
[-outline_1515_points[25][0], -outline_1515_points[25][1]],
|
||||
engrave_1515_points,
|
||||
engrave_1515_paths],
|
||||
[outline_a1517_points, outline_a1517_paths,
|
||||
[-outline_a1517_points[47][0], -outline_a1517_points[48][1]],
|
||||
engrave_a1517_points,
|
||||
engrave_a1517_paths],
|
||||
[outline_1517_points, outline_1517_paths,
|
||||
[-outline_1517_points[47][0], -outline_1517_points[48][1]],
|
||||
engrave_1517_points,
|
||||
engrave_1517_paths],
|
||||
[outline_1518_points, outline_1518_paths,
|
||||
[-outline_1518_points[40][0], -outline_1518_points[28][1]],
|
||||
engrave_1518_points,
|
||||
engrave_1518_paths],
|
||||
[outline_1542_points, outline_1542_paths,
|
||||
[-outline_1542_points[92][0], -outline_1542_points[98][1]],
|
||||
engrave_1542_points,
|
||||
engrave_1542_paths],
|
||||
[outline_1543_points, outline_1543_paths,
|
||||
[-outline_1543_points[48][0], -outline_1543_points[48][1]],
|
||||
engrave_1543_points,
|
||||
engrave_1543_paths],
|
||||
[outline_a1638_points, outline_a1638_paths,
|
||||
[-outline_a1638_points[64][0], -outline_a1638_points[68][1]],
|
||||
engrave_a1638_points,
|
||||
engrave_a1638_paths],
|
||||
[outline_1638_points, outline_1638_paths,
|
||||
[-outline_1638_points[64][0], -outline_1638_points[68][1]],
|
||||
engrave_1638_points,
|
||||
engrave_1638_paths],
|
||||
[outline_1644_points, outline_1644_paths,
|
||||
[-outline_1644_points[47][0], -outline_1644_points[43][1]],
|
||||
engrave_1644_points,
|
||||
engrave_1644_paths],
|
||||
[outline_1655_points, outline_1655_paths,
|
||||
[-outline_1655_points[48][0], -outline_1655_points[52][1]],
|
||||
engrave_1655_points,
|
||||
engrave_1655_paths]];
|
||||
|
||||
wardings_k = ["1515",
|
||||
"1517",
|
||||
"1518",
|
||||
"1542",
|
||||
"1543",
|
||||
"1638",
|
||||
"1644",
|
||||
"1655"];
|
||||
|
||||
wardings_v = [warding_1515_points,
|
||||
warding_1517_points,
|
||||
warding_1518_points,
|
||||
warding_1542_points,
|
||||
warding_1543_points,
|
||||
warding_1638_points,
|
||||
warding_1644_points,
|
||||
warding_1655_points];
|
||||
@@ -1,5 +1,5 @@
|
||||
use <keygen.scad>
|
||||
include <medeco.gen.scad>
|
||||
include <medeco.scad>
|
||||
|
||||
module medeco_biaxial(bitting="",
|
||||
outline_name="1515",
|
||||
@@ -8,6 +8,8 @@ module medeco_biaxial(bitting="",
|
||||
name = "Medeco Biaxial";
|
||||
|
||||
/*
|
||||
"A" variants of key outlines indicates 6-pin version.
|
||||
|
||||
Bitting is specified from bow to tip, 1-6, with 1 being the shallowest cut and 6 being the deepest.
|
||||
|
||||
Before each number, a letter K,B,Q,M,D,S is specified for the cut angle and offset.
|
||||
@@ -21,46 +23,20 @@ module medeco_biaxial(bitting="",
|
||||
"1517",
|
||||
"1518",
|
||||
"1542",
|
||||
"1543"];
|
||||
outlines_v = [[outline_a1515_points, outline_a1515_paths,
|
||||
[-outline_a1515_points[52][0], -outline_a1515_points[52][1]],
|
||||
engrave_a1515_points,
|
||||
engrave_a1515_paths],
|
||||
[outline_1515_points, outline_1515_paths,
|
||||
[-outline_1515_points[25][0], -outline_1515_points[25][1]],
|
||||
engrave_1515_points,
|
||||
engrave_1515_paths],
|
||||
[outline_a1517_points, outline_a1517_paths,
|
||||
[-outline_a1517_points[47][0], -outline_a1517_points[48][1]],
|
||||
engrave_a1517_points,
|
||||
engrave_a1517_paths],
|
||||
[outline_1517_points, outline_1517_paths,
|
||||
[-outline_1517_points[47][0], -outline_1517_points[48][1]],
|
||||
engrave_1517_points,
|
||||
engrave_1517_paths],
|
||||
[outline_1518_points, outline_1518_paths,
|
||||
[-outline_1518_points[40][0], -outline_1518_points[28][1]],
|
||||
engrave_1518_points,
|
||||
engrave_1518_paths],
|
||||
[outline_1542_points, outline_1542_paths,
|
||||
[-outline_1542_points[92][0], -outline_1542_points[98][1]],
|
||||
engrave_1542_points,
|
||||
engrave_1542_paths],
|
||||
[outline_1543_points, outline_1543_paths,
|
||||
[-outline_1543_points[48][0], -outline_1543_points[48][1]],
|
||||
engrave_1543_points,
|
||||
engrave_1543_paths]];
|
||||
"1543",
|
||||
"A1638",
|
||||
"1638",
|
||||
"1644",
|
||||
"1655"];
|
||||
|
||||
wardings_k = ["1515",
|
||||
"1517",
|
||||
"1518",
|
||||
"1542",
|
||||
"1543"];
|
||||
wardings_v = [warding_1515_points,
|
||||
warding_1517_points,
|
||||
warding_1518_points,
|
||||
warding_1542_points,
|
||||
warding_1543_points];
|
||||
"1543",
|
||||
"1638",
|
||||
"1644",
|
||||
"1655"];
|
||||
|
||||
outline_param = key_lkup(outlines_k, outlines_v, outline_name);
|
||||
outline_points = outline_param[0];
|
||||
@@ -83,8 +59,6 @@ module medeco_biaxial(bitting="",
|
||||
angles_and_offsets = [for(c=bitting_angle) key_lkup(angles_k, angles_v, c)];
|
||||
angles = [for(c=angles_and_offsets) c[0]];
|
||||
offsets = [for(c=angles_and_offsets) c[1]];
|
||||
echo(offsets);
|
||||
echo(heights);
|
||||
|
||||
difference() {
|
||||
if($children == 0) {
|
||||
@@ -110,4 +84,4 @@ module medeco_biaxial(bitting="",
|
||||
bitting="";
|
||||
outline="1515";
|
||||
warding="1515";
|
||||
medeco_biaxial(bitting, outline, warding);
|
||||
medeco_biaxial(bitting, outline, warding);
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
use <keygen.scad>
|
||||
include <medeco.gen.scad>
|
||||
|
||||
include <medeco.scad>
|
||||
|
||||
module medeco_classic(bitting="",
|
||||
outline_name="1515",
|
||||
@@ -29,50 +28,6 @@ module medeco_classic(bitting="",
|
||||
"1638",
|
||||
"1644",
|
||||
"1655"];
|
||||
outlines_v = [[outline_a1515_points, outline_a1515_paths,
|
||||
[-outline_a1515_points[52][0], -outline_a1515_points[52][1]],
|
||||
engrave_a1515_points,
|
||||
engrave_a1515_paths],
|
||||
[outline_1515_points, outline_1515_paths,
|
||||
[-outline_1515_points[25][0], -outline_1515_points[25][1]],
|
||||
engrave_1515_points,
|
||||
engrave_1515_paths],
|
||||
[outline_a1517_points, outline_a1517_paths,
|
||||
[-outline_a1517_points[47][0], -outline_a1517_points[48][1]],
|
||||
engrave_a1517_points,
|
||||
engrave_a1517_paths],
|
||||
[outline_1517_points, outline_1517_paths,
|
||||
[-outline_1517_points[47][0], -outline_1517_points[48][1]],
|
||||
engrave_1517_points,
|
||||
engrave_1517_paths],
|
||||
[outline_1518_points, outline_1518_paths,
|
||||
[-outline_1518_points[40][0], -outline_1518_points[28][1]],
|
||||
engrave_1518_points,
|
||||
engrave_1518_paths],
|
||||
[outline_1542_points, outline_1542_paths,
|
||||
[-outline_1542_points[92][0], -outline_1542_points[98][1]],
|
||||
engrave_1542_points,
|
||||
engrave_1542_paths],
|
||||
[outline_1543_points, outline_1543_paths,
|
||||
[-outline_1543_points[48][0], -outline_1543_points[48][1]],
|
||||
engrave_1543_points,
|
||||
engrave_1543_paths],
|
||||
[outline_a1638_points, outline_a1638_paths,
|
||||
[-outline_a1638_points[64][0], -outline_a1638_points[68][1]],
|
||||
engrave_a1638_points,
|
||||
engrave_a1638_paths],
|
||||
[outline_1638_points, outline_1638_paths,
|
||||
[-outline_1638_points[64][0], -outline_1638_points[68][1]],
|
||||
engrave_1638_points,
|
||||
engrave_1638_paths],
|
||||
[outline_1644_points, outline_1644_paths,
|
||||
[-outline_1644_points[47][0], -outline_1644_points[43][1]],
|
||||
engrave_1644_points,
|
||||
engrave_1644_paths],
|
||||
[outline_1655_points, outline_1655_paths,
|
||||
[-outline_1655_points[48][0], -outline_1655_points[52][1]],
|
||||
engrave_1655_points,
|
||||
engrave_1655_paths]];
|
||||
|
||||
wardings_k = ["1515",
|
||||
"1517",
|
||||
@@ -83,15 +38,6 @@ module medeco_classic(bitting="",
|
||||
"1644",
|
||||
"1655"];
|
||||
|
||||
wardings_v = [warding_1515_points,
|
||||
warding_1517_points,
|
||||
warding_1518_points,
|
||||
warding_1542_points,
|
||||
warding_1543_points,
|
||||
warding_1638_points,
|
||||
warding_1644_points,
|
||||
warding_1655_points];
|
||||
|
||||
outline_param = key_lkup(outlines_k, outlines_v, outline_name);
|
||||
outline_points = outline_param[0];
|
||||
outline_paths = outline_param[1];
|
||||
@@ -133,6 +79,6 @@ module medeco_classic(bitting="",
|
||||
|
||||
// Defaults
|
||||
bitting="";
|
||||
outline="1638";
|
||||
warding="1638";
|
||||
outline="1515";
|
||||
warding="1515";
|
||||
medeco_classic(bitting, outline, warding);
|
||||
|
||||
Reference in New Issue
Block a user