Files
keygen/sc4.scad
2017-06-09 01:53:12 -04:00

30 lines
3.8 KiB
OpenSCAD

use <keygen.scad>
outline = [[-12.048077,5.767320],[-12.531197,6.197850],[-16.188977,6.288450],[-16.558561,6.416520],[-16.805557,6.775740],[-17.059163,7.256309],[-17.405057,7.424420],[-19.734005,7.436020],[-20.190575,7.678950],[-21.005688,8.407776],[-21.584899,8.714600],[-21.950541,9.552540],[-22.161920,10.454470],[-22.664611,10.714781],[-23.160009,10.840370],[-23.513154,11.702385],[-23.804236,12.163606],[-24.352135,12.364150],[-26.715326,12.364150],[-27.280510,12.190678],[-27.452528,11.780981],[-27.624588,10.917230],[-28.773427,10.437810],[-29.001442,9.531850],[-29.229456,8.625890],[-29.751429,8.441815],[-30.273401,8.257560],[-30.510304,7.256071],[-30.624192,6.261970],[-31.166270,5.957583],[-31.684671,5.815030],[-35.921242,3.350340],[-36.420288,2.840467],[-36.507637,2.275740],[-36.507626,-2.275740],[-36.420275,-2.840468],[-35.921231,-3.350340],[-31.684660,-5.815030],[-31.166259,-5.957590],[-30.624181,-6.261970],[-30.510293,-7.256071],[-30.273390,-8.257560],[-29.751418,-8.441725],[-29.229445,-8.625890],[-29.001431,-9.531850],[-28.773416,-10.437810],[-27.624577,-10.917230],[-27.452517,-11.780981],[-27.280499,-12.190678],[-26.715315,-12.364150],[-24.352124,-12.364150],[-23.804225,-12.163606],[-23.513143,-11.702385],[-23.159998,-10.840370],[-22.664600,-10.714774],[-22.161909,-10.454470],[-21.950531,-9.552540],[-21.584888,-8.714600],[-21.005677,-8.407776],[-20.190564,-7.678950],[-19.733994,-7.436020],[-17.405047,-7.424420],[-17.059153,-7.256309],[-16.805547,-6.775740],[-16.558555,-6.416520],[-16.188967,-6.288450],[-12.531187,-6.197850],[-12.048067,-5.767320],[-12.026867,-4.485730],[13.592243,-4.486130],[18.673063,0.615172],[18.673063,1.913110],[16.250473,4.230870],[-12.047637,4.226870]];
hole = [[-28.090168,3.691950],[-28.320547,4.292520],[-29.442927,4.261420],[-33.529647,1.963740],[-34.149378,1.203692],[-34.149367,-1.203652],[-33.529636,-1.963700],[-29.442916,-4.261380],[-28.320536,-4.292480],[-28.090157,-3.691910]];
warding = [[34.597676,-4.486348],[34.597676,-0.102120],[35.469973,0.280288],[35.751594,0.538961],[35.618801,0.933478],[34.597676,2.619678],[34.597676,4.230951],[36.507637,4.230951],[36.507637,3.395860],[35.935063,3.114221],[35.700383,2.824692],[35.746960,2.487905],[36.507637,1.173773],[36.507637,-0.570308],[35.618801,-0.848327],[35.618801,-4.486348],[34.597676,-4.486348]];
emboss_points = [[-23.687656,-12.029039],[-23.687656,12.028407],[-23.424104,11.446530],[-23.424104,-11.447162],[-23.687656,-12.029039]];
/*
Additional Embossing
linear_extrude(height=h)
polygon([[-27.515846,-11.120050],[-27.624364,-10.917479],[-27.781461,-10.800690],[-27.781461,10.800574],[-27.624364,10.916847],[-27.515846,11.119418],[-27.515846,-11.120050]]);
linear_extrude(height=h)
polygon([[-22.144595,-10.426037],[-22.144595,10.425405],[-21.878980,9.172251],[-21.878980,-9.172883],[-22.144595,-10.426037]]);
linear_extrude(height=h)
polygon([[-29.082158,-8.830269],[-29.229435,-8.626145],[-29.347773,-8.533128],[-29.347773,-4.304446],[-29.082158,-4.375760],[-29.082158,-8.830269]]);
linear_extrude(height=h)
polygon([[-20.716776,-8.206016],[-20.716776,8.205384],[-20.453227,7.968190],[-20.453227,-7.968822],[-20.716776,-8.206016]]);
linear_extrude(height=h)
polygon([[-17.000209,-7.198327],[-17.000209,7.197695],[-16.805388,6.775496],[-16.734591,6.580678],[-16.734591,-6.581310],[-16.805388,-6.776131],[-17.000209,-7.198327]]);
linear_extrude(height=h)
polygon([[-29.347773,4.303814],[-29.347773,8.532496],[-29.229435,8.625513],[-29.082158,8.829637],[-29.082158,4.375128],[-29.347773,4.303814]]);
*/
outline_points = concat(outline, hole);
outline_paths = [[for(i=[0:len(outline)-1]) i],
[for(i=[len(hole)-1:-1:0]) i+len(outline)]];
key_blank(outline_points, warding, outline_paths=outline_paths, offset=-outline_points[len(outline)-1]);