From e4d69a9bf889a4c3ce1ef2701cf1d4d044f69a03 Mon Sep 17 00:00:00 2001 From: Joost De Cock Date: Sat, 18 Apr 2020 17:35:25 +0200 Subject: [PATCH] fix(wahid): Close front seam and include facing/lining when complete if false --- packages/wahid/src/front.js | 6 +++++- packages/wahid/src/frontfacing.js | 24 ++++++++++++------------ packages/wahid/src/frontlining.js | 23 ++++++++++++----------- 3 files changed, 29 insertions(+), 24 deletions(-) diff --git a/packages/wahid/src/front.js b/packages/wahid/src/front.js index f6315c0bf24..f0f751a55a7 100644 --- a/packages/wahid/src/front.js +++ b/packages/wahid/src/front.js @@ -198,6 +198,10 @@ export default (part) => { points.armholeHollowCp1 = points.armholeHollowCp2.rotate(180, points.armholeHollow) } + // Facing/Lining boundary (flb) + points.flbTop = points.neck.shiftFractionTowards(points.shoulder, 0.5) + points.flbCp = points.dartTop.shift(90, points.dartTop.dist(points.flbTop) / 2) + // Seam line delete paths.cutonfold delete paths.saBase @@ -228,7 +232,7 @@ export default (part) => { paths.hemBase = new Path().move(points.dartEnd).line(points.hem) } paths.dart = dartPath(part) - paths.seam = paths.saBase.join(paths.dart).join(paths.hemBase).attr('class', 'fabric') + paths.seam = paths.saBase.join(paths.dart).join(paths.hemBase).close().attr('class', 'fabric') paths.saBase.render = false paths.hemBase.render = false paths.dart.render = false diff --git a/packages/wahid/src/frontfacing.js b/packages/wahid/src/frontfacing.js index 5812ebb5337..5df608275ad 100644 --- a/packages/wahid/src/frontfacing.js +++ b/packages/wahid/src/frontfacing.js @@ -1,4 +1,4 @@ -export default part => { +export default (part) => { let { points, Point, @@ -16,8 +16,6 @@ export default part => { for (let i of Object.keys(paths)) delete paths[i] for (let i of Object.keys(snippets)) delete snippets[i] - if (!complete) return part - // Seam line paths.seam = new Path() .move(points.dartStart) @@ -40,16 +38,18 @@ export default part => { } paths.seam.close().attr('class', 'fabric') - if (sa) paths.sa = paths.seam.offset(sa).attr('class', 'fabric sa') + if (complete) { + if (sa) paths.sa = paths.seam.offset(sa).attr('class', 'fabric sa') - points.title = new Point(points.dartWaistLeft.x / 2, points.waist.y) - macro('title', { - nr: 3, - at: points.title, - title: 'frontFacing' - }) - points.logo = points.closureTop.shiftFractionTowards(points.dartWaistLeft, 0.5) - snippets.logo = new Snippet('logo', points.logo) + points.title = new Point(points.dartWaistLeft.x / 2, points.waist.y) + macro('title', { + nr: 3, + at: points.title, + title: 'frontFacing' + }) + points.logo = points.closureTop.shiftFractionTowards(points.dartWaistLeft, 0.5) + snippets.logo = new Snippet('logo', points.logo) + } return part } diff --git a/packages/wahid/src/frontlining.js b/packages/wahid/src/frontlining.js index 108ded649ff..0ef4cc4abda 100644 --- a/packages/wahid/src/frontlining.js +++ b/packages/wahid/src/frontlining.js @@ -1,10 +1,9 @@ -export default part => { +export default (part) => { let { points, paths, Path, options, macro, snippets, Snippet, complete, sa } = part.shorthand() // Cleanup from Brian for (let i of Object.keys(paths)) delete paths[i] for (let i of Object.keys(snippets)) delete snippets[i] - if (!complete) return part // Seam line paths.seam = new Path() @@ -24,15 +23,17 @@ export default part => { paths.seam.curve(points.splitDartHemRightCp2, points.splitHemCp1, points.hem) } else paths.seam.line(points.hem) - if (sa) paths.sa = paths.seam.offset(sa).attr('class', 'fabric sa') - points.title = points.armhole.shiftFractionTowards(points.dartTop, 0.5) - macro('title', { - nr: 4, - at: points.title, - title: 'frontLining' - }) - points.logo = points.dartWaistRight.shiftFractionTowards(points.waist, 0.5) - snippets.logo = new Snippet('logo', points.logo) + if (complete) { + if (sa) paths.sa = paths.seam.offset(sa).attr('class', 'fabric sa') + points.title = points.armhole.shiftFractionTowards(points.dartTop, 0.5) + macro('title', { + nr: 4, + at: points.title, + title: 'frontLining' + }) + points.logo = points.dartWaistRight.shiftFractionTowards(points.waist, 0.5) + snippets.logo = new Snippet('logo', points.logo) + } return part }