map2 = {
const context = DOM.context2d(width, 500);
context.fillStyle = "magenta";
context.strokeStyle = "black";
projected_bad.geometry.coordinates.forEach(coordinates => {
let flattened = earcut.flatten(coordinates);
let triangles = earcut(flattened.vertices, flattened.holes, flattened.dimensions);
function indexToPoint(i) { return flattened.vertices.slice(2*i, 2*(i+1)); }
while (triangles.length) {
let t = triangles.splice(0, 3);
context.beginPath();
context.moveTo(...indexToPoint(t[0]));
context.lineTo(...indexToPoint(t[1]));
context.lineTo(...indexToPoint(t[2]));
context.lineTo(...indexToPoint(t[0]));
context.fill();
context.stroke();
}
});
return context.canvas;
}