diff --git a/packages/simon/index.html b/packages/simon/index.html
index dd879778791..c8302266579 100644
--- a/packages/simon/index.html
+++ b/packages/simon/index.html
@@ -112,9 +112,9 @@ let settings1 = { ...settings };
pattern1.settings.options.cuffButtonRows = 2;
pattern1.settings.options.barrelCuffNarrowButton = "yes";
pattern1.settings.options.cuffStyle = "straightBarrelCuff";
- //pattern1.settings.options.splitYoke = "yes";
+ pattern1.settings.options.splitYoke = "yes";
pattern1.settings.sa = 10;
- pattern1.settings.only = "collar";
+ pattern1.settings.only = "yoke";
pattern1.draft();
console.log(pattern1);
document.getElementById("svg1").innerHTML = pattern1.render();
diff --git a/packages/simon/src/back.js b/packages/simon/src/back.js
index 12f79adcf8d..e29e178a14b 100644
--- a/packages/simon/src/back.js
+++ b/packages/simon/src/back.js
@@ -1,8 +1,22 @@
import { calculateReduction } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
// Populare store with data we need
calculateReduction(part);
diff --git a/packages/simon/src/buttonholeplacket.js b/packages/simon/src/buttonholeplacket.js
index 639657107c7..73ebd20a822 100644
--- a/packages/simon/src/buttonholeplacket.js
+++ b/packages/simon/src/buttonholeplacket.js
@@ -1,8 +1,22 @@
import { addButtonHoles } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
if (
options.buttonholePlacketType !== "seperate" ||
diff --git a/packages/simon/src/buttonplacket.js b/packages/simon/src/buttonplacket.js
index 2f85445c4bb..0d65d9b6f93 100644
--- a/packages/simon/src/buttonplacket.js
+++ b/packages/simon/src/buttonplacket.js
@@ -1,8 +1,22 @@
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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
if (
options.buttonPlacketType !== "seperate" ||
diff --git a/packages/simon/src/collar.js b/packages/simon/src/collar.js
index 7001d7c9af1..0496810a7a7 100644
--- a/packages/simon/src/collar.js
+++ b/packages/simon/src/collar.js
@@ -1,6 +1,20 @@
export default part => {
- // prettier-ignore
- let {store, measurements, utils, sa, Point, points, Path, paths, Snippet, snippets, complete, paperless, macro, options} = part.shorthand();
+ let {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
const draft = function(tweak = 1) {
let length =
diff --git a/packages/simon/src/cuff-barrel-angled.js b/packages/simon/src/cuff-barrel-angled.js
index 266d7ab7e91..c7c6fec6c22 100644
--- a/packages/simon/src/cuff-barrel-angled.js
+++ b/packages/simon/src/cuff-barrel-angled.js
@@ -5,8 +5,22 @@ import {
} 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
draftBarrelCuff(part);
let height = store.get("cuffHeight");
diff --git a/packages/simon/src/front.js b/packages/simon/src/front.js
index b564d90ad8b..ed842176bf5 100644
--- a/packages/simon/src/front.js
+++ b/packages/simon/src/front.js
@@ -1,8 +1,22 @@
import { calculateReduction } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
// Populare store with data we need
calculateReduction(part);
diff --git a/packages/simon/src/frontleft-classic-cuton.js b/packages/simon/src/frontleft-classic-cuton.js
index fbe3f67d520..9e90ee834c9 100644
--- a/packages/simon/src/frontleft-classic-cuton.js
+++ b/packages/simon/src/frontleft-classic-cuton.js
@@ -1,8 +1,22 @@
import { addButtonHoles } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
let fold = options.buttonholePlacketFoldWidth;
let width = options.buttonholePlacketWidth;
diff --git a/packages/simon/src/frontleft-classic-seperate.js b/packages/simon/src/frontleft-classic-seperate.js
index 68215eb7130..a5c6dafe1ab 100644
--- a/packages/simon/src/frontleft-classic-seperate.js
+++ b/packages/simon/src/frontleft-classic-seperate.js
@@ -1,8 +1,22 @@
import { addButtonHoles } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
let fold = options.buttonholePlacketFoldWidth;
points.neckEdge = utils.lineIntersectsCurve(
diff --git a/packages/simon/src/frontleft-seamless.js b/packages/simon/src/frontleft-seamless.js
index f31f55767f2..6597ce79cce 100644
--- a/packages/simon/src/frontleft-seamless.js
+++ b/packages/simon/src/frontleft-seamless.js
@@ -1,8 +1,22 @@
import { addButtonHoles } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
console.log("seamless buttonjholes");
let fold = options.buttonholePlacketFoldWidth;
diff --git a/packages/simon/src/frontright-classic-cuton.js b/packages/simon/src/frontright-classic-cuton.js
index 3b564ebf572..a5e0bdce063 100644
--- a/packages/simon/src/frontright-classic-cuton.js
+++ b/packages/simon/src/frontright-classic-cuton.js
@@ -1,8 +1,22 @@
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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
let width = options.buttonPlacketWidth;
points.placketTopIn = utils.lineIntersectsCurve(
diff --git a/packages/simon/src/frontright-classic-seperate.js b/packages/simon/src/frontright-classic-seperate.js
index 65847d57557..b4600227874 100644
--- a/packages/simon/src/frontright-classic-seperate.js
+++ b/packages/simon/src/frontright-classic-seperate.js
@@ -1,6 +1,20 @@
export default part => {
- // prettier-ignore
- let {store, measurements, utils, sa, Point, points, Path, paths, Snippet, snippets, complete, paperless, macro, options} = part.shorthand();
+ let {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
let width = options.buttonPlacketWidth;
points.placketTopIn = utils.lineIntersectsCurve(
diff --git a/packages/simon/src/frontright-seamless.js b/packages/simon/src/frontright-seamless.js
index 462e2da40ba..5370102a471 100644
--- a/packages/simon/src/frontright-seamless.js
+++ b/packages/simon/src/frontright-seamless.js
@@ -1,8 +1,22 @@
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 {
+ 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);
diff --git a/packages/simon/src/sleeve.js b/packages/simon/src/sleeve.js
index cd984f3f6cb..900f91e143c 100644
--- a/packages/simon/src/sleeve.js
+++ b/packages/simon/src/sleeve.js
@@ -1,8 +1,22 @@
import { calculateReduction } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
// TODO: Sleeve pleats
diff --git a/packages/simon/src/yoke.js b/packages/simon/src/yoke.js
index a257dc26500..f86d873a884 100644
--- a/packages/simon/src/yoke.js
+++ b/packages/simon/src/yoke.js
@@ -1,8 +1,22 @@
import { calculateReduction } 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 {
+ store,
+ measurements,
+ utils,
+ sa,
+ Point,
+ points,
+ Path,
+ paths,
+ Snippet,
+ snippets,
+ complete,
+ paperless,
+ macro,
+ options
+ } = part.shorthand();
for (let id of Object.keys(part.paths)) delete part.paths[id];
@@ -63,6 +77,46 @@ export default part => {
// Paperless?
if (paperless) {
+ macro("pd", {
+ path: new Path().move(points.cbNeck)._curve(points.neckCp2, points.neck),
+ d: 15
+ });
+ macro("hd", {
+ from: points.cbNeck,
+ to: points.neck,
+ y: points.neck.y - 15 - sa
+ });
+ macro("ld", {
+ from: points.neck,
+ to: points.shoulder,
+ d: 15 + sa
+ });
+ macro("hd", {
+ from: points.cbYoke,
+ to: points.armholePitch,
+ y: points.cbYoke.y + 15 + sa
+ });
+ macro("hd", {
+ from: points.cbYoke,
+ to: points.shoulder,
+ y: points.cbYoke.y + 30 + sa
+ });
+ macro("vd", {
+ from: points.cbYoke,
+ to: points.cbNeck,
+ x: points.cbYoke.x - 15 - sa
+ });
+ macro("pd", {
+ path: new Path()
+ .move(points.armholePitch)
+ .curve(points.armholePitchCp2, points.shoulderCp1, points.shoulder),
+ d: 15 + sa
+ });
+ macro("vd", {
+ from: points.armholePitch,
+ to: points.shoulder,
+ x: points.shoulder.x + 30 + sa
+ });
}
return part;