1
0
Fork 0

Merge pull request #2401 from freesewing/pr-2357

Updated merge request to re-run tests. Replaces #2357
This commit is contained in:
Joost De Cock 2022-07-12 19:29:58 +02:00 committed by GitHub
commit d3a87ad7d1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 47 additions and 38 deletions

View file

@ -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:

View file

@ -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,

View file

@ -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) {

View file

@ -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) {

View file

@ -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()
paths.gussetLegOpening = new Path()
.move(points.backGussetRight)
.curve(points.backGussetRight, points.gussetCp2, points.frontGussetRight)
.length()
)
.setRender(false)
store.set('gussetSideLength', paths.gussetLegOpening.length())
// Draw paths
paths.seam = new Path()

View file

@ -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