VTK.js - 从自定义源创建网格

问题描述

我正在尝试使用 lambda自定义源在 react ts 应用程序中显示网格。 首先,我用锥形源创建了一个工作场景

@kitware/vtk.js 18.1.2

尽管没有声明 (...) const conesource = vtkConesource.newInstance(); const mapper = vtkMapper.newInstance(); // @ts-ignore mapper.setInputConnection(conesource.getoutputPort()); (...) setInputConnection函数(这就是我使用 getoutputPort 的原因),但它按预期工作。 现在我试图通过创建自定义 @ts-ignore显示我自己的数据。 There are tutorials in documentation of vtk.js vtkpolyData 的示例用法如下:

vtkpolyData

它不起作用,因为 API 似乎已更改(?)所以尝试这样做:

const polyData = vtkpolyData.newInstance()
Const vertices = new Float32Array(<xyz coords>)
Const polys = new Uint32Array(<poly deFinitions>)
polyData.getPoints().setData(vertices,3)
polyData.getpolys().setData(polys);

其中 const polyData = vtkpolyData.newInstance(); polyData.setVerts(vertices); polyData.setpolys(polys); vertices,格式为 Float32Array [x1,y1,z1,x2,y2,z2,...]polys,格式为 Uint32Array(我的网格仅使用四边形)。

然后我将它连接到映射器:

[4,p1,p2,p3,p4,...]

再次声明 // @ts-ignore mapper.setInputData(meshSource); 未声明,但无论如何都编译了所有内容,并且控制台中没有错误。不幸的是,我所看到的只是渲染器的背景。如何显示我的自定义数据?我什至朝着正确的方向前进吗?我是 VTK 的新手。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)