sparkles: Added support for offset and margin options
This commit is contained in:
parent
93b3a8faa6
commit
d7cdbe1680
2 changed files with 13 additions and 6 deletions
|
@ -66,8 +66,8 @@ This plugin provides the `cutonfold` macro.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
macro('cutonfold', {
|
macro('cutonfold', {
|
||||||
from: points.cbNeck
|
from: points.cbNeck,
|
||||||
, to: points.cbHips
|
to: points.cbHips
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -75,6 +75,8 @@ macro('cutonfold', {
|
||||||
|
|
||||||
- `to`: A point object at the start of the cut-on-fold indicator
|
- `to`: A point object at the start of the cut-on-fold indicator
|
||||||
- `from`: A point object at the end of the cut-on-fold indicator
|
- `from`: A point object at the end of the cut-on-fold indicator
|
||||||
|
- `offset`: Distance in mm that the cut-on-fold line is offset from the line between `from` and `to`. Default: 50mm.
|
||||||
|
- `margin`: Percentange the cut-on-fold line will remain from the `from` and `to` points. Default: 5%.
|
||||||
|
|
||||||
As all freesewing macros, bundle these parameters into a single object.
|
As all freesewing macros, bundle these parameters into a single object.
|
||||||
|
|
||||||
|
|
|
@ -15,13 +15,18 @@ export default {
|
||||||
macros: {
|
macros: {
|
||||||
cutonfold: function(so) {
|
cutonfold: function(so) {
|
||||||
let points = this.points;
|
let points = this.points;
|
||||||
points.cutonfoldFrom = so.to.shiftTowards(so.from, 30);
|
let so = {
|
||||||
points.cutonfoldTo = so.from.shiftTowards(so.to, 30);
|
offset: 50,
|
||||||
|
margin: 0.05,
|
||||||
|
...so
|
||||||
|
};
|
||||||
|
points.cutonfoldFrom = so.to.shiftFractionTowards(so.from, so.margin);
|
||||||
|
points.cutonfoldTo = so.from.shiftFractionTowards(so.to, so.margin);
|
||||||
points.cutonfoldVia1 = so.to
|
points.cutonfoldVia1 = so.to
|
||||||
.shiftTowards(so.from, 50)
|
.shiftTowards(so.from, so.offset)
|
||||||
.rotate(-90, points.cutonfoldFrom);
|
.rotate(-90, points.cutonfoldFrom);
|
||||||
points.cutonfoldVia2 = so.from
|
points.cutonfoldVia2 = so.from
|
||||||
.shiftTowards(so.to, 50)
|
.shiftTowards(so.to, so.offset)
|
||||||
.rotate(90, points.cutonfoldTo);
|
.rotate(90, points.cutonfoldTo);
|
||||||
let text = so.grainline ? "cutOnFoldAndGrainline" : "cutOnFold";
|
let text = so.grainline ? "cutOnFoldAndGrainline" : "cutOnFold";
|
||||||
this.paths.cutonfold = new this.Path()
|
this.paths.cutonfold = new this.Path()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue