1
0
Fork 0
freesewing/markdown/dev/howtos/design/slash-spread/en.md

48 lines
1.1 KiB
Markdown
Raw Normal View History

2021-10-17 17:34:55 +02:00
***
title: Slash and spread
for: developers
about: Slash and spread is easy enough on paper, here's how to do it in code
2021-10-17 17:34:55 +02:00
----------------------------------------------------------------------------
<Note>
##### See this example in our source code
2021-10-17 17:34:55 +02:00
* [packages/jaeger/src/front.js](https://github.com/freesewing/freesewing/blob/8474477911daed3c383700ab29c9565883f16d66/packages/jaeger/src/front.js#L64)
</Note>
2021-10-17 17:34:55 +02:00
When we *slash and spread* a pattern, we cut out a triangle, and then rotate it
around the tip of the triangle.
And that's exactly what we do in code. We just need to know:
2021-10-17 17:34:55 +02:00
* What point we want to rotate around
* Which points we want to rotate
* By how much we want to rotate
```js
let rotate = [
'splitEdge',
'neckEdge',
'cfNeck',
'cfNeckCp1',
'neckCp2Front',
'neck',
'shoulder',
'shoulderCp1',
'armholePitchCp2',
'armholePitch',
'armholePitchCp1',
'armholeHollowCp2',
'armholeHollow',
'armholeHollowCp1',
'splitCp2',
'frontNeckCpEdge'
]
for (let p of rotate) {
points[p] = points[p].rotate(options.chestShapingMax * options.chestShaping * -1, points.split)
}
```