diff --git a/src/outlines.js b/src/outlines.js index cf86dd5..08e2f37 100644 --- a/src/outlines.js +++ b/src/outlines.js @@ -319,7 +319,9 @@ exports.parse = (config = {}, points = {}, units = {}) => { const fillet = a.sane(part.fillet || 0, `${name}.fillet`, 'number')(units) arg = u.deepcopy(outlines[part.name]) if (fillet) { - arg.models.fillets = m.chain.fillet(m.model.findSingleChain(arg), fillet) + for (const [index, chain] of m.model.findChains(arg).entries()) { + arg.models[`fillet_${index}`] = m.chain.fillet(chain, fillet) + } } break default: diff --git a/test/outlines/fillet.yaml b/test/outlines/fillet.yaml new file mode 100644 index 0000000..3b5e05f --- /dev/null +++ b/test/outlines/fillet.yaml @@ -0,0 +1,22 @@ +points: + key: + padding: cy + bind: 0.1 + zones: + matrix: + columns: + one: + two: + rows: + bottom: + top: +outlines: + exports: + base: + - type: keys + side: left + size: cy + fillet: + - type: outline + name: base + fillet: 2 \ No newline at end of file diff --git a/test/outlines/fillet___outlines_fillet_dxf.dxf b/test/outlines/fillet___outlines_fillet_dxf.dxf new file mode 100644 index 0000000..21de0fe --- /dev/null +++ b/test/outlines/fillet___outlines_fillet_dxf.dxf @@ -0,0 +1,258 @@ +0 +SECTION +2 +HEADER +9 +$INSUNITS +70 +4 +0 +ENDSEC +0 +SECTION +2 +TABLES +0 +TABLE +2 +LTYPE +0 +LTYPE +72 +65 +70 +64 +2 +CONTINUOUS +3 +______ +73 +0 +40 +0 +0 +ENDTAB +0 +TABLE +2 +LAYER +0 +ENDTAB +0 +ENDSEC +0 +SECTION +2 +ENTITIES +0 +LINE +8 +0 +10 +8.6 +20 +-6.6 +11 +8.6 +21 +23.6 +0 +LINE +8 +0 +10 +-6.6 +20 +-8.6 +11 +6.6 +21 +-8.6 +0 +LINE +8 +0 +10 +-8.6 +20 +-6.6 +11 +-8.6 +21 +23.6 +0 +LINE +8 +0 +10 +-6.6 +20 +25.6 +11 +6.6 +21 +25.6 +0 +LINE +8 +0 +10 +27.6 +20 +-6.6 +11 +27.6 +21 +23.6 +0 +LINE +8 +0 +10 +12.4 +20 +-8.6 +11 +25.6 +21 +-8.6 +0 +LINE +8 +0 +10 +10.4 +20 +-6.6 +11 +10.4 +21 +23.6 +0 +LINE +8 +0 +10 +12.4 +20 +25.6 +11 +25.6 +21 +25.6 +0 +ARC +8 +0 +10 +6.6 +20 +23.6 +40 +2 +50 +0 +51 +90 +0 +ARC +8 +0 +10 +-6.6 +20 +23.6 +40 +2 +50 +90 +51 +180 +0 +ARC +8 +0 +10 +-6.6 +20 +-6.6 +40 +2 +50 +180 +51 +270 +0 +ARC +8 +0 +10 +6.6 +20 +-6.6 +40 +2 +50 +270 +51 +0 +0 +ARC +8 +0 +10 +25.6 +20 +23.6 +40 +2 +50 +0 +51 +90 +0 +ARC +8 +0 +10 +12.4 +20 +23.6 +40 +2 +50 +90 +51 +180 +0 +ARC +8 +0 +10 +12.4 +20 +-6.6 +40 +2 +50 +180 +51 +270 +0 +ARC +8 +0 +10 +25.6 +20 +-6.6 +40 +2 +50 +270 +51 +0 +0 +ENDSEC +0 +EOF \ No newline at end of file