diff --git a/config/changelog.yaml b/config/changelog.yaml index 6e2331ab546..f2d7b99b187 100644 --- a/config/changelog.yaml +++ b/config/changelog.yaml @@ -5,6 +5,8 @@ Unreleased: hugo: - Support drafting for high bust Closes [#802](https://github.com/freesewing/freesewing/issues/802) + plugin-title: + - Added support for removing the title via a macro call Changed: charlie: diff --git a/designs/unice/config/index.js b/designs/unice/config/index.js index 30cd7e36fd1..af39af98d28 100644 --- a/designs/unice/config/index.js +++ b/designs/unice/config/index.js @@ -13,9 +13,12 @@ const config = { front: 'ursulaFront', back: 'ursulaBack', gusset: 'ursulaGusset', + front2: 'front', + back2: 'back', + gusset2: 'gusset', }, - hide: ['ursulaBack', 'ursulaFront', 'ursulaGusset'], - parts: [], + hide: ['ursulaBack', 'ursulaFront', 'ursulaGusset','front', 'back', 'gusset'], + parts: ['front','back','gusset','elastic','front2','back2','gusset2'], optionalMeasurements: ['crossSeam','crossSeamFront'], measurements: ['waist', 'seat', 'waistToSeat', 'waistToUpperLeg','hips','waistToHips'], optionGroups: { @@ -33,6 +36,10 @@ const config = { dependencies: { back: 'front', gusset: 'back', + elastic: 'gusset', + front2: 'elastic', + back2: 'elastic', + gusset2: 'elastic', }, options: { ...ursulaConfig.options, diff --git a/designs/unice/src/back.js b/designs/unice/src/back.js index 0f97c2b694b..b271747b41e 100644 --- a/designs/unice/src/back.js +++ b/designs/unice/src/back.js @@ -179,32 +179,23 @@ return part /* Store lengths for use in elastic */ - if (options.backExposure >= 0) { - store.set( - 'backLegOpeningLength', - new Path() + paths.backLegOpening = (options.backExposure >= 0) + ? new Path() .move(points.backGussetRight) .curve(points.backGussetRightCp1, points.backLegOpeningRightCp1, points.backLegOpeningRight) - .length() - ) - } else { - store.set( - 'backLegOpeningLength', - new Path() + .setRender(false) + : new Path() .move(points.backGussetRight) .curve(points.backGussetRightCp1, points.backFlareRightCp2, points.backFlareRight) .curve(points.backFlareRightCp1, points.backLegOpeningRightCp1, points.backLegOpeningRight) - .length() - ) - } + .setRender(false) + store.set('backLegOpeningLength',paths.backLegOpening.length()) - store.set( - 'backWaistBandLength', - new Path() + paths.backWaistBand = new Path() .move(points.backWaistBandRight) .curve(points.backWaistBandRightCp1, points.backWaistBandLeftCp1, points.backWaistBandLeft) - .length() - ) + .setRender(false) + store.set('backWaistBandLength',paths.backWaistBand.length()) // Complete? if (complete) { diff --git a/designs/unice/src/front.js b/designs/unice/src/front.js index 2a4bc075283..75dd42b7c86 100644 --- a/designs/unice/src/front.js +++ b/designs/unice/src/front.js @@ -202,24 +202,25 @@ export default function (part) { /* Store lengths for use in elastic */ - store.set( - 'frontLegOpeningLength', - new Path() + paths.frontLegOpening = new Path() .move(points.frontGussetRight) .curve( points.frontGussetRightCp1, points.frontLegOpeningRightCp1, points.frontLegOpeningRight ) - .length() - ) - store.set( - 'frontWaistBandLength', - new Path() + .setRender(false) + store.set('frontLegOpeningLength',paths.frontLegOpening.length()) + + paths.frontWaistBand = new Path() .move(points.frontWaistBandRight) - .curve(points.frontWaistBandRightCp1, points.frontWaistBandLeftCp1, points.frontWaistBandLeft) - .length() - ) + .curve( + points.frontWaistBandRightCp1, + points.frontWaistBandLeftCp1, + points.frontWaistBandLeft + ) + .setRender(false) + store.set('frontWaistBandLength',paths.frontWaistBand.length()) // Complete? if (complete) { diff --git a/designs/unice/src/gusset.js b/designs/unice/src/gusset.js index 8b1a9a37b31..b4860a01cdc 100644 --- a/designs/unice/src/gusset.js +++ b/designs/unice/src/gusset.js @@ -29,13 +29,11 @@ return part points.frontMidMid = points.gussetCp1.shiftFractionTowards(points.gussetCp2, 0.5) /* Store lengths for use in elastic */ - store.set( - 'gussetSideLength', - new Path() - .move(points.backGussetRight) - .curve(points.backGussetRight, points.gussetCp2, points.frontGussetRight) - .length() - ) + paths.gussetLegOpening = new Path() + .move(points.backGussetRight) + .curve(points.backGussetRight, points.gussetCp2, points.frontGussetRight) + .setRender(false) + store.set('gussetSideLength', paths.gussetLegOpening.length()) // Draw paths paths.seam = new Path() diff --git a/designs/unice/src/index.js b/designs/unice/src/index.js index e1044cc78f9..e4f33f50dcc 100644 --- a/designs/unice/src/index.js +++ b/designs/unice/src/index.js @@ -20,6 +20,16 @@ for (const name of ['Back', 'Front', 'Gusset']) { Unice.prototype.draftElastic = function (part) { return new Ursula(this.settings).draftElastic(part) } +Unice.prototype.draftFront2 = function (part) { + return new Ursula(this.settings).draftFront2(part) +} +Unice.prototype.draftBack2 = function (part) { + return new Ursula(this.settings).draftBack2(part) +} +Unice.prototype.draftGusset2 = function (part) { + return new Ursula(this.settings).draftGusset2(part) +} + // Attach our own draft methods to the prototype Unice.prototype.draftFront = draftFront