2018-07-23 17:44:52 +00:00
|
|
|
//const VERSION = require('../package.json').version;
|
2018-07-21 16:37:18 +02:00
|
|
|
|
2018-07-23 17:44:52 +00:00
|
|
|
export default {
|
2018-07-21 15:34:46 +02:00
|
|
|
hooks: {
|
|
|
|
preRenderSvg: function(next) {
|
|
|
|
// Without this, our custom attribute won't be valid
|
2018-07-21 15:39:30 +02:00
|
|
|
this.attributes.add("xmlns:freesewing-plugins", "http://freesewing.org/namespaces/freesewing-plugins");
|
2018-07-23 17:44:52 +00:00
|
|
|
this.attributes.add("freesewing-plugins:macro-cutonfold", 'fixme');
|
2018-07-21 15:34:46 +02:00
|
|
|
next();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
, macros: {
|
2018-07-21 16:40:26 +02:00
|
|
|
cutonfold: function(next, so) {
|
2018-07-21 15:34:46 +02:00
|
|
|
let points = this.points;
|
|
|
|
points.cofStart = so.from.shiftTowards(so.to, 30);
|
|
|
|
points.cofEnd = so.to.shiftTowards(so.from, 30);
|
|
|
|
points.cofVia1 = so.from.shiftTowards(so.to, 50).rotate(90,points.cofStart);
|
|
|
|
points.cofVia2 = so.to.shiftTowards(so.from, 50).rotate(-90,points.cofEnd);
|
|
|
|
this.paths.cof = new this.path()
|
|
|
|
.move(points.cofStart)
|
|
|
|
.line(points.cofVia1)
|
|
|
|
.line(points.cofVia2)
|
|
|
|
.line(points.cofEnd)
|
|
|
|
.attr('class', 'cut-on-fold');
|
|
|
|
next();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|