diff --git a/config/changelog.yaml b/config/changelog.yaml index 649555e45e7..60802db18b4 100644 --- a/config/changelog.yaml +++ b/config/changelog.yaml @@ -7,6 +7,11 @@ Unreleased: theo: - migrated `waistbandWidth` option from `mm` to snapped `pct` option + Fixed: + brian: + - Make s3 options sticky to zero below 10% to avoid path split issues. + Fixes [#2249](https://github.com/freesewing/freesewing/issues/2249) + 2.21.3: date: 2022-07-02 diff --git a/designs/brian/src/back.js b/designs/brian/src/back.js index 2b2ffe5376f..a640aca822e 100644 --- a/designs/brian/src/back.js +++ b/designs/brian/src/back.js @@ -20,7 +20,8 @@ export default (part) => { // Adapt the shoulder seam according to the relevant options // Note: s3 stands for Shoulder Seam Shift - if (options.s3Collar === 0) { + // Don't bother with less than 10% as that's just asking for trouble + if (options.s3Collar < 0.1 && options.s3Collar > -0.1) { points.s3CollarSplit = points.hps paths.backCollar = new Path() .move(points.hps) @@ -58,7 +59,8 @@ export default (part) => { .reverse() .setRender(false) } - if (options.s3Armhole === 0) { + // Don't bother with less than 10% as that's just asking for trouble + if (options.s3Armhole < 0.1 && options.s3Armhole > -0.1) { points.s3ArmholeSplit = points.shoulder paths.backArmhole = new Path() .move(points.armholePitch) diff --git a/designs/brian/src/front.js b/designs/brian/src/front.js index 2b5ed037aaa..1d6a47681a2 100644 --- a/designs/brian/src/front.js +++ b/designs/brian/src/front.js @@ -23,7 +23,8 @@ export default (part) => { points.armholePitchCp2 = points.frontArmholePitchCp2 // Adapt the shoulder line according to the relevant options - if (options.s3Collar === 0) { + // Don't bother with less than 10% as that's just asking for trouble + if (options.s3Collar < 0.1 && options.s3Collar > -0.1) { points.s3CollarSplit = points.hps paths.frontCollar = new Path() .move(points.hps) @@ -60,7 +61,7 @@ export default (part) => { .join(new Path().move(points.hps).curve(points.neckCp2Front, points.cfNeckCp1, points.cfNeck)) .setRender(false) } - if (options.s3Armhole === 0) { + if (options.s3Armhole < 0.1 && options.s3Armhole > -0.1) { points.s3ArmholeSplit = points.shoulder paths.frontArmhole = new Path() .move(points.armholePitch)