{
const size = 1024;
const data = [1, 1];
const pie = d3.pie().sort((a, b) => d3.ascending(a, b));
const pieData = pie(data);
const one = size / 5;
const d = (one * 3) / 2;
const h = one;
const arc = d3
.arc()
.innerRadius(one / 2)
.outerRadius((one * 3) / 2);
function sector({ fill, transform } = {}) {
const uid = () => Math.random().toString(36).slice(2);
const node = SVG.g({
transform: `translate(${d}, ${d})`,
fill,
children: [
SVG.path({ d: arc(pieData[1]) }),
SVG.rect({ x: -10, y: -d, width: d + 10, height: one }),
SVG.rect({ x: -10, y: d - one, width: d + 10, height: one })
]
});
if (!transform) return node;
const t = Array.isArray(transform) ? transform.join("") : transform;
return SVG.g({ transform: t, transformOrigin: "center", children: [node] });
}
const app = cm.render({
width: size,
height: size,
draw: [
sector({ fill: "black" }),
sector({ fill: "black", transform: `translate(0, ${one * 2})` }),
sector({
fill: "white",
transform: [`rotate(90)`, `translate(${one * 2}, ${one * 0.4})`]
}),
sector({
fill: "white",
transform: [
`rotate(-90)`,
`translate(${one * 2}, ${one * 2 - one * 0.4})`
]
}),
sector({
fill: "black",
transform: [`rotate(90)`, `translate(${one * 2}, ${0})`]
}),
sector({
fill: "black",
transform: [`rotate(-90)`, `translate(${one * 2}, ${one * 2})`]
})
]
});
return app.node();
}