сделана рисовка карты накопленных запасов

This commit is contained in:
djerom
2022-03-22 13:19:30 +05:00
parent 764c77692a
commit 6ea104aa08
4 changed files with 90 additions and 30 deletions

View File

@@ -65,13 +65,6 @@ export default {
});
},
text(text) {
let node = new SvgNode("text");
node.items = [text];
node.set_attrs({x: 0, y: 0})
return node;
},
/**
*
* @param r0
@@ -80,12 +73,19 @@ export default {
* @param a1
* @param { [{v, style}] } rings
*/
sectored_ring(r0, r1, rings){
let sum = rings.reduce((s,c) => s + c.v, 0)
let angs = rings.reduce((s, c, i) => [...s, {...c, a0: i && s[i - 1].a1, a1: c.v + (i && s[i - 1].a1)}], [])
let items = angs.map(x => SvgNodes.ring_sector(r0, r1, x.a0 * 360 / sum, x.a1 * 360 / sum).set_style(x.style))
ring_sectors(r0, r1, sectors){
let sum = sectors.reduce((s,c) => s + c.v, 0)
let angs = sectors.reduce((s, c, i) => [...s, {...c, a0: i && s[i - 1].a1, a1: c.v + (i && s[i - 1].a1)}], [])
let items = angs.map(x => this.ring_sector(r0, r1, x.a0 * 360 / sum, x.a1 * 360 / sum).set_style(x.style))
return SvgNodes.group(items)
return this.group(items)
},
text(text) {
let node = new SvgNode("text");
node.items = [text];
node.set_attrs({x: 0, y: 0})
return node;
}
};