export default function (part) { let { Path, points, paths, Snippet, snippets, complete, sa, store, paperless, macro, } = part.shorthand() let halfInch = store.get('halfInch') paths.waistSeam = paths.waistSeam.split(points.pocketFacingTL)[0].setRender(false) paths.sideSeam = paths.sideSeam.split(points.pocketFacingBR)[1].setRender(false) points.brCPtl = points.pocketFacingBR.shift( points.pocketFacingBR.angle(points.pocketSide) + 90, halfInch * 3 ) points.tlCPbr = points.pocketFacingTL.shift( points.pocketFacingTL.angle(points.pocketWaist) - 90, halfInch * 6 ) paths.facingInside = new Path() .move(points.pocketFacingTL) .curve(points.tlCPbr, points.brCPtl, points.pocketFacingBR) .setRender(false) paths.pocketFold = new Path() .move(points.pocketTL) .line(points.pocketBL) .attr('class', 'fabric dashed') points.pocketBLcpBR = points.pocketBL.shift(0, points.pocketBL.dist(points.pocketFacingBR) * 0.75) points.pocketBRcpBL = points.pocketFacingBR.shift( 180, points.pocketBL.dist(points.pocketFacingBR) * 0.35 ) // Mirror a bunch of points points.mpocketBLcpBR = points.pocketBLcpBR.flipX(points.pocketTL) points.mpocketBRcpBL = points.pocketBRcpBL.flipX(points.pocketTL) points.mpocketFacingBR = points.pocketFacingBR.flipX(points.pocketTL) points.mpocketSide = points.pocketSide.flipX(points.pocketTL) points.mpocketWaist = points.pocketWaist.flipX(points.pocketTL) paths.pocketBottom = new Path() .move(points.mpocketFacingBR) .curve(points.mpocketBRcpBL, points.mpocketBLcpBR, points.pocketBL) .curve(points.pocketBLcpBR, points.pocketBRcpBL, points.pocketFacingBR) .attr('class', 'fabric') paths.seam = paths.waistSeam .line(points.mpocketWaist) .line(points.mpocketSide) .join(paths.pocketBottom) .join(paths.sideSeam) .close() .setRender(true) .attr('class', 'fabric') if (complete) { snippets.n1 = new Snippet('notch', points.pocketWaist) snippets.n2 = new Snippet('notch', points.pocketSide) snippets.n3 = new Snippet('notch', points.mpocketWaist) snippets.n4 = new Snippet('notch', points.mpocketSide) points.logo = points.pocketSide.shiftFractionTowards(points.pocketTL, 0.5) snippets.logo = new Snippet('logo', points.logo) points.title = points.logo.shift(270, 50) macro('title', { nr: 2, at: points.title, title: 'Pocket', }) points.__titleNr.attr('data-text-class', 'center') points.__titleName.attr('data-text-class', 'center') points.__titlePattern.attr('data-text-class', 'center') if (sa) { paths.sa = paths.seam.offset(sa).attr('class', 'fabric sa') } } // Paperless? if (paperless) { macro('hd', { from: points.mpocketFacingBR, to: points.mpocketWaist, y: points.pU.y - sa - 15, }) macro('hd', { from: points.mpocketWaist, to: points.pocketTL, y: points.pU.y - sa - 15, }) macro('hd', { from: points.pocketTL, to: points.pocketWaist, y: points.pU.y - sa - 15, }) macro('hd', { from: points.pocketWaist, to: points.pU, y: points.pU.y - sa - 15, }) macro('hd', { from: points.pU, to: points.pocketFacingBR, y: points.pU.y - sa - 15, }) macro('hd', { from: points.pocketWaist, to: points.pocketFacingTL, y: points.pU.y - sa - 15, }) macro('vd', { from: points.pU, to: points.pocketSide, x: points.pocketSide.x + sa + 15, }) macro('vd', { from: points.pocketTL, to: points.pocketBL, x: points.pocketTL.x + 15, }) macro('vd', { from: points.pocketSide, to: points.mpocketWaist, x: points.pocketSide.x + sa + 15, }) macro('vd', { from: points.pocketSide, to: points.pocketFacingBR, x: points.pocketSide.x + sa + 15, }) macro('vd', { from: points.mpocketWaist, to: points.mpocketSide, x: points.mpocketSide.x - sa - 15, }) macro('vd', { from: points.mpocketSide, to: points.mpocketFacingBR, x: points.mpocketSide.x - sa - 15, }) } return part }