我们可以通过vtkColorTransferFunction设置不同灰度值进行着色
import vtkColorTransferFunction from 'vtk.js/Sources/Rendering/Core/ColorTransferFunction';
const ctfun = vtkColorTransferFunction.newInstance();
ctfun.addRGBPoint(0, 1.0, 0, 0);//立方体的颜色,红色
通过vtkPiecewiseFunction的立体分段设置透明度
const actor = vtkVolume.newInstance();//可视化实体
const ofun = vtkPiecewiseFunction.newInstance();
actor.getProperty().setScalarOpacity(0, ofun);
映射筛选数据源
const reader = vtkHttpDataSetReader.newInstance({
fetchGzip: true,
});
reader
.setUrl(`/data/LIDC2.vti`, { loadData: true })
.then(() => {
const data = reader.getOutputData();
actor.setInputData(data);
actor.setMapper(imageMapperI);
renderer.addActor(imageMapperI);
renderer.resetCamera();
renderWindow.render();
})
利用这个过程,我们最终给截面上色,结果图如下:


1596

被折叠的 条评论
为什么被折叠?



