// Module names are of the form poly_(). As a result, // you can associate a polygon in this OpenSCAD program with the corresponding // SVG element in the Inkscape document by looking for the XML element with // the attribute id="inkscape-path-id". // fudge value is used to ensure that subtracted solids are a tad taller // in the z dimension than the polygon being subtracted from. This helps // keep the resulting .stl file manifold. fudge = 0.1; module poly_part1_2_mm(h) { scale([25.4/90, -25.4/90, 1]) union() { linear_extrude(height=h) polygon([[-35.979500,-9.562995],[-36.904750,-4.877495],[-37.222500,0.000005],[-37.030315,3.805362],[-36.466236,7.500835],[-35.548981,11.067709],[-34.297266,14.487270],[-32.729806,17.740807],[-30.865318,20.809604],[-28.722519,23.674950],[-26.320125,26.318130],[-23.676852,28.720431],[-20.811416,30.863139],[-17.742534,32.727543],[-14.488922,34.294927],[-11.069296,35.546578],[-7.502373,36.463784],[-3.806869,37.027831],[-0.001500,37.220005],[3.818986,37.026456],[7.528578,36.458364],[11.108350,35.534561],[14.539375,34.273880],[17.802729,32.695151],[20.879484,30.817208],[23.750717,28.658882],[26.397500,26.239005],[55.260500,55.109005],[49.715373,60.161397],[43.702234,64.668458],[37.260447,68.590636],[30.429375,71.888380],[23.248381,74.522139],[15.756828,76.452364],[7.994080,77.639503],[-0.000500,78.044005],[-7.979774,77.641056],[-15.728568,76.458368],[-23.207653,74.535178],[-30.377797,71.910723],[-37.199771,68.624241],[-43.634346,64.714970],[-49.642290,60.222145],[-55.184375,55.185005],[-60.221370,49.642786],[-64.714045,43.634727],[-68.623170,37.200065],[-71.909516,30.378036],[-74.533851,23.207878],[-76.456947,15.728829],[-77.639573,7.980125],[-78.042500,0.001005],[-77.870594,-5.221323],[-77.362500,-10.351120],[-76.529656,-15.377605],[-75.383500,-20.289995],[-35.979500,-9.562995]]); } } module poly_part3_6_mm(h) { scale([25.4/90, -25.4/90, 1]) union() { difference() { linear_extrude(height=h) polygon([[-0.011250,-78.044005],[-5.274885,-77.869470],[-10.443195,-77.353247],[-15.505532,-76.506402],[-20.451250,-75.340005],[-25.269702,-73.865123],[-29.950242,-72.092825],[-34.482224,-70.034179],[-38.855000,-67.700255],[-18.448750,-32.325255],[-14.217750,-34.404731],[-9.707375,-35.945380],[-4.958313,-36.902528],[-0.011250,-37.231505],[5.083828,-36.887231],[9.970500,-35.883755],[14.600672,-34.265091],[18.926250,-32.075255],[39.363750,-67.387755],[34.941896,-69.789658],[30.354047,-71.909309],[25.611767,-73.734996],[20.726625,-75.255005],[15.710185,-76.457623],[10.574015,-77.331137],[5.329681,-77.863836],[-0.011250,-78.044005]]); translate([0, 0, -fudge]) linear_extrude(height=h+2*fudge) polygon([[0.270000,-65.512755],[2.780620,-65.003600],[4.826315,-63.615947],[6.203227,-61.559510],[6.707500,-59.044005],[6.203227,-56.533382],[4.826315,-54.487687],[2.780620,-53.110776],[0.270000,-52.606505],[-2.245499,-53.110776],[-4.301936,-54.487687],[-5.689593,-56.533382],[-6.198750,-59.044005],[-5.689593,-61.559510],[-4.301936,-63.615947],[-2.245499,-65.003600],[0.270000,-65.512755]]); } } } module poly_part2_4_mm(h) { scale([25.4/90, -25.4/90, 1]) union() { linear_extrude(height=h) polygon([[18.922500,-32.060995],[22.853121,-29.383343],[26.401781,-26.238089],[29.524676,-22.669038],[32.178000,-18.719995],[34.317949,-14.434765],[35.900719,-9.857152],[36.882504,-5.030960],[37.219500,0.000005],[37.029012,3.790399],[36.469781,7.472161],[35.560160,11.026657],[34.318500,14.435255],[32.763152,17.679321],[30.912469,20.740223],[28.784801,23.599329],[26.398500,26.238005],[55.261500,55.108005],[60.283158,49.568303],[64.761453,43.565208],[68.657490,37.137729],[71.932375,30.324880],[74.547213,23.165671],[76.463109,15.699114],[77.641170,7.964221],[78.042500,0.000005],[77.862420,-5.344808],[77.329924,-10.592870],[76.456626,-15.732558],[75.254141,-20.752245],[73.734083,-25.640308],[71.908068,-30.385120],[69.787711,-34.975058],[67.384625,-39.398495],[64.710426,-43.643808],[61.776729,-47.699370],[58.595147,-51.553558],[55.177297,-55.194745],[51.534792,-58.611308],[47.679248,-61.791620],[43.622279,-64.724058],[39.375500,-67.396995],[18.922500,-32.060995]]); } } poly_part1_2_mm(2); poly_part3_6_mm(6); poly_part2_4_mm(4);