69 lines
1.9 KiB
JavaScript
69 lines
1.9 KiB
JavaScript
![]() |
import { addButtons } from "./shared";
|
||
|
|
||
|
export default part => {
|
||
|
// prettier-ignore
|
||
|
let {store, measurements, utils, sa, Point, points, Path, paths, Snippet, snippets, complete, paperless, macro, options} = part.shorthand();
|
||
|
|
||
|
let width = options.buttonPlacketWidth;
|
||
|
points.placketTopFold1 = points.cfNeck.shift(0, width / 2);
|
||
|
points.placketTopFold2 = points.cfNeck.shift(0, width * 1.5);
|
||
|
points.placketTopEdge = points.cfNeck.shift(0, width * 2.5);
|
||
|
points.placketBottomFold1 = points.cfHem.shift(0, width / 2);
|
||
|
points.placketBottomFold2 = points.cfHem.shift(0, width * 1.5);
|
||
|
points.placketBottomEdge = points.cfHem.shift(0, width * 2.5);
|
||
|
paths.seam
|
||
|
.line(points.placketTopEdge)
|
||
|
.line(points.placketBottomEdge)
|
||
|
.line(points.cfHem)
|
||
|
.close();
|
||
|
|
||
|
// Complete pattern?
|
||
|
if (complete) {
|
||
|
// Placket help lines
|
||
|
paths.frontCenter = new Path()
|
||
|
.move(points.cfNeck)
|
||
|
.line(points.cfHem)
|
||
|
.attr("class", "help");
|
||
|
paths.placketFold1 = new Path()
|
||
|
.move(points.placketTopFold1)
|
||
|
.line(points.placketBottomFold1)
|
||
|
.attr("class", "dotted");
|
||
|
paths.placketFold2 = new Path()
|
||
|
.move(points.placketTopFold2)
|
||
|
.line(points.placketBottomFold2)
|
||
|
.attr("class", "dotted");
|
||
|
macro("sprinkle", {
|
||
|
snippet: "notch",
|
||
|
on: [
|
||
|
"placketTopFold1",
|
||
|
"placketTopFold2",
|
||
|
"placketBottomFold1",
|
||
|
"placketBottomFold2",
|
||
|
"cfNeck",
|
||
|
"cfHem"
|
||
|
]
|
||
|
});
|
||
|
|
||
|
// Buttons
|
||
|
addButtons(part);
|
||
|
|
||
|
// Title
|
||
|
macro("title", { at: points.title, nr: 1, title: "frontRight" });
|
||
|
|
||
|
if (sa) {
|
||
|
paths.saFromArmhole
|
||
|
.line(new Point(points.placketTopEdge.x, points.placketTopEdge.y - sa))
|
||
|
.line(points.placketTopEdge)
|
||
|
.move(points.placketBottomEdge)
|
||
|
.line(points.placketBottomEdge.shift(-90, sa * 3))
|
||
|
.line(paths.hemSa.start());
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Paperless?
|
||
|
if (paperless) {
|
||
|
}
|
||
|
|
||
|
return part;
|
||
|
};
|