const setSize = (container, camera, renderer) => { // These are great for full-screen, which adjusts to a window. const height = window.innerHeight; const width = window.innerWidth - 50; // These are better for fitting in a container, which stays that size. //const height = container.scrollHeight; //const width = container.scrollWidth; camera.aspect = width / height; camera.updateProjectionMatrix(); renderer.setSize(width, height); renderer.setPixelRatio(window.devicePixelRatio); }; class Resizer { constructor(container, camera, renderer) { // set initial size on load setSize(container, camera, renderer); window.addEventListener("resize", () => { // set the size again if a resize occurs setSize(container, camera, renderer); // perform any custom actions this.onResize(); }); } // eslint-disable-next-line @typescript-eslint/no-empty-function onResize() {} } export { Resizer };