wip(simon): Ported Brian's s3 options to yoke
This commit is contained in:
parent
2a3d20e4ab
commit
045e41d293
5 changed files with 21 additions and 17 deletions
|
@ -23,6 +23,8 @@ export default {
|
|||
],
|
||||
style: [
|
||||
'splitYoke',
|
||||
's3Collar',
|
||||
's3Armhole',
|
||||
'hemStyle',
|
||||
'hemCurve',
|
||||
'boxPleat',
|
||||
|
@ -217,6 +219,9 @@ export default {
|
|||
lengthBonus: { pct: 25, min: -4, max: 60 },
|
||||
shoulderEase: { pct: 2, min: 0, max: 15 },
|
||||
shoulderSlopeReduction: { pct: 0, min: 0, max: 8 },
|
||||
// s3 is short for Shoulder Seam Shift
|
||||
s3Collar: { pct: 0, min: -100, max: 100 },
|
||||
s3Armhole: { pct: 0, min: -100, max: 100 },
|
||||
sleevecapEase: { pct: 0, min: 0, max: 3 },
|
||||
sleevecapTopFactorX: { pct: 50, min: 25, max: 75 },
|
||||
sleevecapTopFactorY: { pct: 100, min: 35, max: 165 },
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import { calculateReduction } from './shared'
|
||||
|
||||
export default (part) => {
|
||||
part.paths = {} // Removes paperless dimensions from brian
|
||||
let {
|
||||
store,
|
||||
measurements,
|
||||
|
@ -237,6 +236,7 @@ export default (part) => {
|
|||
|
||||
// Paperless?
|
||||
if (paperless) {
|
||||
macro('rmad') // Removes paperless dimensions from brian
|
||||
if (store.get('backDarts')) {
|
||||
macro('vd', {
|
||||
from: points.dartBottom,
|
||||
|
|
|
@ -23,7 +23,7 @@ export default (part) => {
|
|||
return part
|
||||
}
|
||||
|
||||
for (let id of Object.keys(part.paths)) delete part.paths[id]
|
||||
for (let id in paths) delete part.paths[id]
|
||||
let width = options.buttonholePlacketWidth
|
||||
let fold = options.buttonholePlacketFoldWidth
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ export default (part) => {
|
|||
return part
|
||||
}
|
||||
|
||||
for (let id of Object.keys(part.paths)) {
|
||||
for (let id in paths) {
|
||||
if (id !== 'seam') delete part.paths[id]
|
||||
}
|
||||
macro('flip')
|
||||
|
|
|
@ -13,7 +13,9 @@ export default (part) => {
|
|||
options,
|
||||
} = part.shorthand()
|
||||
|
||||
for (let id of Object.keys(part.paths)) delete part.paths[id]
|
||||
for (let id in paths) {
|
||||
if (['backCollar', 'backArmhole'].indexOf(id) === -1) delete part.paths[id]
|
||||
}
|
||||
|
||||
// Cut off at yoke
|
||||
points.cbYoke = new Point(0, points.armholePitch.y)
|
||||
|
@ -22,19 +24,18 @@ export default (part) => {
|
|||
paths.saBase = new Path()
|
||||
.move(points.cbYoke)
|
||||
.line(points.armholePitch)
|
||||
.curve(points.armholePitchCp2, points.shoulderCp1, points.shoulder)
|
||||
.line(points.neck)
|
||||
.curve_(points.neckCp2, points.cbNeck)
|
||||
.join(paths.backArmhole)
|
||||
.line(points.s3CollarSplit)
|
||||
.join(paths.backCollar)
|
||||
if (options.splitYoke) paths.saBase = paths.saBase.line(points.cbYoke).close()
|
||||
else {
|
||||
for (let p of ['neckCp2', 'neck', 'shoulder', 'shoulderCp1', 'armholePitchCp2', 'armholePitch'])
|
||||
points['_' + p] = points[p].flipX()
|
||||
paths.saBase
|
||||
._curve(points._neckCp2, points._neck)
|
||||
.line(points._shoulder)
|
||||
.curve(points._shoulderCp1, points._armholePitchCp2, points._armholePitch)
|
||||
.line(points.cbYoke)
|
||||
.close()
|
||||
macro('mirror', {
|
||||
mirror: [points.cbNeck,points.cbYoke],
|
||||
paths: [paths.saBase],
|
||||
clone: true
|
||||
})
|
||||
paths.saBase = paths.saBase.join(paths.mirroredSaBase.reverse())
|
||||
paths.mirroredSaBase.setRender(false)
|
||||
}
|
||||
paths.seam = paths.saBase.clone()
|
||||
paths.saBase.render = false
|
||||
|
@ -62,8 +63,6 @@ export default (part) => {
|
|||
from: points.grainlineFrom,
|
||||
to: points.grainlineTo,
|
||||
})
|
||||
snippets.sleeveNotchA = new Snippet('bnotch', points.armholePitch)
|
||||
snippets.sleeveNotchB = new Snippet('bnotch', points._armholePitch)
|
||||
}
|
||||
|
||||
if (sa) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue