From be6dab5c5bc1527412ce35821056d716e14a55c4 Mon Sep 17 00:00:00 2001 From: Joost De Cock Date: Sun, 17 Feb 2019 21:39:39 +0100 Subject: [PATCH] sparkles: Added front lining --- packages/wahid/config/index.js | 6 ++- packages/wahid/index.html | 2 +- packages/wahid/src/frontfacing.js | 7 +--- packages/wahid/src/frontlining.js | 61 +++++++++++++++++++++++++++++++ packages/wahid/src/index.js | 2 + 5 files changed, 69 insertions(+), 9 deletions(-) create mode 100644 packages/wahid/src/frontlining.js diff --git a/packages/wahid/config/index.js b/packages/wahid/config/index.js index 9cca3e1ced9..b65ceac92d5 100644 --- a/packages/wahid/config/index.js +++ b/packages/wahid/config/index.js @@ -21,14 +21,16 @@ export default { frontBlock: "backBlock", front: "frontBlock", back: "backBlock", - frontFacing: "front" + frontFacing: "front", + frontLining: "front" }, inject: { backBlock: "base", frontBlock: "backBlock", front: "frontBlock", back: "backBlock", - frontFacing: "front" + frontFacing: "front", + frontLining: "front" }, hide: ["base", "frontBlock", "backBlock"], parts: [ diff --git a/packages/wahid/index.html b/packages/wahid/index.html index 846a53c136a..c201eaf3cef 100644 --- a/packages/wahid/index.html +++ b/packages/wahid/index.html @@ -32,7 +32,7 @@ "locale": "en", "options": { "frontStyle": "rounded", - "hemStyle": "rounded", + //"hemStyle": "rounded", }, //"embed": true, "sa": 10, diff --git a/packages/wahid/src/frontfacing.js b/packages/wahid/src/frontfacing.js index 99b2435d42b..7fbfb2e107b 100644 --- a/packages/wahid/src/frontfacing.js +++ b/packages/wahid/src/frontfacing.js @@ -1,20 +1,15 @@ -import { constructMainDart, shapeSideSeam, dartPath } from "./shared"; - export default part => { let { points, Point, paths, Path, - measurements, options, - utils, macro, snippets, Snippet, complete, - sa, - paperless + sa } = part.shorthand(); // Cleanup from front part diff --git a/packages/wahid/src/frontlining.js b/packages/wahid/src/frontlining.js new file mode 100644 index 00000000000..3094c320253 --- /dev/null +++ b/packages/wahid/src/frontlining.js @@ -0,0 +1,61 @@ +export default part => { + let { + points, + Point, + paths, + Path, + measurements, + options, + utils, + macro, + snippets, + Snippet, + complete, + sa, + paperless + } = 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]; + + // Seam line + paths.seam = new Path() + .move(points.hem) + .line(points.hips) + .curve(points.hipsCp2, points.waistCp1, points.waist) + .curve_(points.waistCp2, points.armhole) + .curve(points.armholeCp2, points.armholeHollowCp1, points.armholeHollow) + .curve(points.armholeHollowCp2, points.armholePitchCp1, points.armholePitch) + .curve(points.armholePitchCp2, points.shoulderCp1, points.shoulder) + .line(points.flbTop) + ._curve(points.flbCp, points.dartTop) + ._curve(points.dartWaistRightCpTop, points.dartWaistRight) + .curve( + points.dartWaistRightCpBottom, + points.dartHipRightCpTop, + points.dartHipRight + ) + .line(points.dartEnd); + if (options.hemStyle === "classic") { + paths.seam.curve( + points.splitDartHemRightCp2, + points.splitHemCp1, + points.hem + ); + } else paths.seam.line(points.hem); + + 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; +}; diff --git a/packages/wahid/src/index.js b/packages/wahid/src/index.js index 1d953afa467..4b290f535af 100644 --- a/packages/wahid/src/index.js +++ b/packages/wahid/src/index.js @@ -8,6 +8,7 @@ import config from "../config"; import draftFront from "./front"; import draftBack from "./back"; import draftFrontFacing from "./frontfacing"; +import draftFrontLining from "./frontlining"; // Create pattern const Wahid = new freesewing.Design(config, [plugins, round, buttons]); @@ -27,5 +28,6 @@ Wahid.prototype.draftFrontBlock = function(part) { Wahid.prototype.draftFront = part => draftFront(part); Wahid.prototype.draftBack = part => draftBack(part); Wahid.prototype.draftFrontFacing = part => draftFrontFacing(part); +Wahid.prototype.draftFrontLining = part => draftFrontLining(part); export default Wahid;