diff --git a/packages/simon/config/index.js b/packages/simon/config/index.js index 56f88c404a5..7d3fd9b8d36 100644 --- a/packages/simon/config/index.js +++ b/packages/simon/config/index.js @@ -201,9 +201,9 @@ export default { acrossBackFactor: { pct: 97, min: 93, max: 100 }, armholeDepthFactor: { pct: 60, min: 50, max: 70 }, backNeckCutout: { pct: 5, min: 2, max: 8 }, - bicepsEase: { pct: 20, min: 10, max: 50 }, + bicepsEase: { pct: 15, min: 10, max: 35 }, buttonFreeLength: { pct: 2, min: 0, max: 15 }, - chestEase: { pct: 20, min: 10, max: 35 }, + chestEase: { pct: 15, min: 10, max: 35 }, collarBend: { pct: 5, min: 0, max: 10 }, collarEase: { pct: 3.5, min: 2, max: 10 }, collarGap: { pct: 3, min: 0, max: 6 }, @@ -213,18 +213,18 @@ export default { cuffLength: { pct: 10, min: 3, max: 15 }, frontArmholeDeeper: { pct: 0.5, min: 0, max: 1.5 }, hemCurve: { pct: 50, min: 25, max: 100 }, - hipsEase: { pct: 20, min: 10, max: 40 }, + hipsEase: { pct: 15, min: 10, max: 35 }, lengthBonus: { pct: 25, min: -4, max: 60 }, shoulderEase: { pct: 2, min: 0, max: 15 }, shoulderSlopeReduction: { pct: 0, min: 0, max: 8 }, - sleevecapEase: { pct: 1, min: 0, max: 10 }, + sleevecapEase: { pct: 0, min: 0, max: 3 }, sleevecapTopFactorX: { pct: 50, min: 25, max: 75 }, sleevecapTopFactorY: { pct: 100, min: 35, max: 165 }, sleevecapBackFactorX: { pct: 60, min: 35, max: 65 }, sleevecapBackFactorY: { pct: 33, min: 35, max: 65 }, sleevecapFrontFactorX: { pct: 55, min: 35, max: 65 }, sleevecapFrontFactorY: { pct: 33, min: 35, max: 65 }, - sleevecapQ1Offset: { pct: 3, min: 0, max: 7 }, + sleevecapQ1Offset: { pct: 5, min: 3, max: 7 }, sleevecapQ2Offset: { pct: 5.5, min: 0, max: 7 }, sleevecapQ3Offset: { pct: 4.5, min: 0, max: 7 }, sleevecapQ4Offset: { pct: 1, min: 0, max: 7 }, @@ -239,7 +239,7 @@ export default { sleeveWidthGuarantee: { pct: 90, min: 25, max: 100 }, sleeveLengthBonus: { pct: 0, min: -40, max: 10 }, sleevePlacketLength: { pct: 25, min: 15, max: 35 }, - waistEase: { pct: 20, min: 10, max: 35 }, + waistEase: { pct: 15, min: 10, max: 35 }, yokeDart: { pct: 0, min: 0, max: 15 }, backDartShaping: { pct: 25, min: 5, max: 75 } } diff --git a/packages/simon/src/yoke.js b/packages/simon/src/yoke.js index 9205019b4ea..d88e7ef1f4d 100644 --- a/packages/simon/src/yoke.js +++ b/packages/simon/src/yoke.js @@ -26,6 +26,16 @@ export default part => { .line(points.neck) .curve_(points.neckCp2, points.cbNeck) if (options.splitYoke) paths.saBase = paths.saBase.line(points.cbYoke).close() + else { + for (let p of ['neckCp2', 'neck', 'shoulder', 'shoulderCp1', 'armholePitchCp2', 'armholePitch']) + points['_' + p] = points[p].flipX() + paths.saBase + ._curve(points._neckCp2, points._neck) + .line(points._shoulder) + .curve(points._shoulderCp1, points._armholePitchCp2, points._armholePitch) + .line(points.cbYoke) + .close() + } paths.seam = paths.saBase.clone() paths.saBase.render = false paths.seam = paths.seam.close().attr('class', 'fabric') @@ -39,18 +49,18 @@ export default part => { snippets.logo = new Snippet('logo', points.logo) snippets.logo.attr('data-scale', 0.8) if (options.splitYoke) { + macro('cutonfold', { + from: points.cbNeck, + to: points.cbYoke, + grainline: true + }) + } else { points.grainlineFrom = points.cbYoke.shift(0, 20) points.grainlineTo = points.cbNeck.shift(0, 20) macro('grainline', { from: points.grainlineFrom, to: points.grainlineTo }) - } else { - macro('cutonfold', { - from: points.cbNeck, - to: points.cbYoke, - grainline: true - }) } macro('sprinkle', {