scatterGLContainer = {
const containerElement = DOM.element("div");
containerElement.style.position = "relative";
containerElement.style.height = `${height}px`;
yield containerElement;
const scatterGL = new ScatterGL(containerElement, {
onHover: (point) => {
console.log(json.files[point])
},
onClick: (point) => {
},
renderMode: "POINT",
styles: {
point: {
colorUnselected: "rgba(120, 120, 120, 0.7)",
colorNoSelection: "rgba(51, 51, 51, 0.7)",
colorSelected: "rgba(255, 10, 10, 0.7)",
colorHover: "rgba(255, 11, 79, 0.7)",
scaleDefault: 1.0,
scaleSelected: 1.2,
scaleHover: 2
}
}
});
function update(dataset) {
scatterGL.render(dataset);
}
function setColor(data) {
scatterGL.setPointColorer((i) => {
return (
((data[i][0] * 255) << 16) +
((data[i][1] * 255) << 8) +
data[i][2] * 255
);
});
}
return Object.assign(containerElement, { update, setColor });
}