1
0
Fork 0
freesewing/packages/simon/src/frontleft-classic-seperate.js
2019-08-03 15:03:33 +02:00

86 lines
2.1 KiB
JavaScript

export default part => {
let {
utils,
sa,
Point,
points,
Path,
paths,
snippets,
complete,
paperless,
macro,
options
} = part.shorthand()
let fold = options.buttonholePlacketFoldWidth
points.neckEdge = utils.lineIntersectsCurve(
new Point(points.cfNeck.x + fold * 2, points.cfNeck.y + 20),
new Point(points.cfNeck.x + fold * 2, points.cfNeck.y - 20),
points.cfNeck,
points.cfNeckCp1,
points.neckCp2Front,
points.neck
)
points.hemEdge = new Point(points.neckEdge.x, points.cfHem.y)
paths.seam = paths.seam.split(points.neckEdge)[0]
paths.seam.ops[0].to = points.hemEdge
paths.seam.close().attr('class', 'fabric')
// Complete pattern?
if (complete) {
// Title
macro('title', { at: points.title, nr: '2a', title: 'frontLeft' })
delete snippets['cfWaist-notch']
delete snippets['cfHips-notch']
delete snippets['cfArmhole-notch']
points.edgeArmhole = new Point(points.neckEdge.x, points.armhole.y)
points.edgeWaist = new Point(points.neckEdge.x, points.waist.y)
points.edgeHips = new Point(points.neckEdge.x, points.hips.y)
macro('sprinkle', {
snippet: 'notch',
on: ['edgeArmhole', 'edgeWaist', 'edgeHips']
})
if (sa) {
paths.saFromArmhole.end().x = points.neckEdge.x - sa
paths.hemSa.start().x = points.neckEdge.x - sa
paths.saClosure = new Path()
.move(paths.saFromArmhole.end())
.line(paths.hemSa.start())
.attr('class', 'fabric sa')
}
}
// Paperless?
if (paperless) {
macro('hd', {
from: points.neckEdge,
to: points.neck,
y: points.neck.y - sa - 15
})
macro('hd', {
from: points.neckEdge,
to: points.shoulder,
y: points.neck.y - sa - 30
})
macro('vd', {
from: points.neckEdge,
to: points.neck,
x: points.neckEdge.x - sa - 15
})
macro('vd', {
from: points.hemEdge,
to: points.neck,
x: points.neckEdge.x - sa - 30
})
for (let pid of ['Armhole', 'Waist', 'Hips']) {
macro('hd', {
from: points['edge' + pid],
to: points[pid.toLowerCase()]
})
}
}
return part
}