Estoy tratando de crear un control deslizante que gire un volumen 3D usando la API vtk.js
Ya he implementado controles deslizantes para mover el objeto a lo largo de los ejes x, y, z, que se ve así:
changePosition({ activeLayer, value, coord }) { const currentPosition = api.volumes[activeLayer].getPosition() switch (coord) { case coord = 'X': api.volumes[layer].setPosition( value, currentPosition[1], currentPosition[2]) break; case coord = 'Y': api.volumes[layer].setPosition( currentPosition[0], value, currentPosition[2]) break; case coord = 'Z': api.volumes[layer].setPosition( currentPosition[0], currentPosition[1], value) break; default: break; } const renderWindow = api.genericRenderWindow.getRenderWindow(); renderWindow.render() }, VTK.js también ofrece otros 2 métodos similares a getPosition y setPosition llamados getOrientation y setOrientation
Así que uno supondría que esto funcionaría:
changeOrientation({ activeLayer, value, coord }) { const currentOrientation = api.volumes[activeLayer].getOrientation() switch (coord) { case coord = 'X': api.volumes[layer].setOrientation( value, currentOrientation[1], currentOrientation[2]) break; case coord = 'Y': api.volumes[layer].setOrientation( currentOrientation[0], value, currentOrientation[2]) break; case coord = 'Z': api.volumes[layer].setOrientation( currentOrientation[0], currentOrientation[1], value) break; default: break; } const renderWindow = api.genericRenderWindow.getRenderWindow(); renderWindow.render() }) }, Sin embargo, getOrientation devuelve [undefined] (tenga en cuenta los paréntesis) y setOrientation devuelve: Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'forEach')
He estado atascado en esto durante unos días, gracias por cualquier ayuda, es muy apreciada