sparkles: Added support for scale and rotation
This commit is contained in:
parent
31d5062e2a
commit
30dc6c3bb2
1 changed files with 27 additions and 5 deletions
|
@ -14,6 +14,19 @@ export default {
|
|||
},
|
||||
macros: {
|
||||
title: function(so) {
|
||||
const transform = function(anchor) {
|
||||
let cx = anchor.x - so.scale * anchor.x;
|
||||
let cy = anchor.y - so.scale * anchor.y;
|
||||
|
||||
return `matrix(${so.scale}, 0, 0, ${so.scale}, ${cx}, ${cy}) rotate(${
|
||||
so.rotation
|
||||
} ${anchor.x} ${anchor.y})`;
|
||||
};
|
||||
let defaults = {
|
||||
scale: 1,
|
||||
rotation: 0
|
||||
};
|
||||
so = { ...defaults, ...so };
|
||||
let overwrite = true;
|
||||
if (so.append) overwrite = false;
|
||||
let prefix = "";
|
||||
|
@ -21,20 +34,29 @@ export default {
|
|||
this.points[`_${prefix}_titleNr`] = so.at
|
||||
.clone()
|
||||
.attr("data-text", so.nr, overwrite)
|
||||
.attr("data-text-class", "title-nr note fill-note");
|
||||
.attr("data-text-class", "title-nr note fill-note")
|
||||
.attr("data-text-transform", transform(so.at, so.at));
|
||||
let shift = 10;
|
||||
if (so.title) {
|
||||
this.points[`_${prefix}_titleName`] = so.at
|
||||
.shift(-90, 13)
|
||||
.shift(-90 - so.rotation, 13 * so.scale)
|
||||
.attr("data-text", so.title)
|
||||
.attr("data-text-class", "title-name");
|
||||
.attr("data-text-class", "title-name")
|
||||
.attr(
|
||||
"data-text-transform",
|
||||
transform(so.at.shift(-90 - so.rotation, 13 * so.scale))
|
||||
);
|
||||
shift += 10;
|
||||
}
|
||||
this.points[`_${prefix}_titlePattern`] = so.at
|
||||
.shift(-90, shift)
|
||||
.shift(-90 - so.rotation, shift * so.scale)
|
||||
.attr("data-text", this.context.config.name)
|
||||
.attr("data-text", "v" + this.context.config.version)
|
||||
.attr("data-text-class", "title-pattern fill-note");
|
||||
.attr("data-text-class", "title-pattern fill-note")
|
||||
.attr(
|
||||
"data-text-transform",
|
||||
transform(so.at.shift(-90 - so.rotation, shift * so.scale))
|
||||
);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue