I use vtkPolyDataNormals class in VTK, but i dosen't find this in Vtk.js。 I want to know difference of VTK and vtk.js. Please forgive me for my poor English. thanks!
vtk.js is a true rewrite of VTK in plain JavaScript (ES6). Therefore not everything has been rewritten.
The focus so far was the rendering pipeline for ImageData and PolyData, the pipeline infrastructure and few readers (obj, stl, vtp, vti). Some filters are provided as demonstration.
We started to explore path where you can compile some bits of the VTK/C++ into WebAssembly and make them interact with vtk.js. With such option you can pick and choose what you need to extract from VTK and enable it inside you web application with the extra cost of the files size you will have to download.
Filters like vtkPolyDataNormals are fairly simple to write and could easily be reimplemented for a community contribution.
Do you have a timeline for your workflow VTK -> WebAssembly? Can we hope this feature this year?
Just for clarification, is this integration with WebAssembly through the itk.js project? If so, will there be some sort of vtk.js filter class that helps manage that handoff?
Or will it be more of an application level detail, like discussed here in the context of pv glance
@llangholz89 what we are shooting for is more like itk.js with some adaptor class so you can go back and forth between plain JS and WebAssembly filters. Regarding the time frame, I'm not sure. @thewtex already did some experiments but we don't have a streamlined version which allow data to transparently flow through the pipeline.
Also other projects are steering us away from moving forward on that topic for now...
In terms of timelines, next steps are to support vtkUnstructuredGrid with conversion to vtk.js PolyData. This is anticipated within the next two months. The general filter to run an arbitrary VTK WebAssembly pipeline in vtk.js will take some engineering and API discussions and iterations with @jourdain, and the timeline is less certain, but before the end of the year.
https://github.com/Kitware/vtk-js/issues/987#issuecomment-454065541
vtk.js is a true rewrite of VTK in plain JavaScript (ES6). Therefore not everything has been rewritten.
Could the README be updated to give this information? I assumed that it was an asm.js port. Which is caused some confusion 😉
The readme as been updated
Further questions on this topic should be directed to https://discourse.vtk.org/c/web/9
Most helpful comment
In terms of timelines, next steps are to support vtkUnstructuredGrid with conversion to vtk.js PolyData. This is anticipated within the next two months. The general filter to run an arbitrary VTK WebAssembly pipeline in vtk.js will take some engineering and API discussions and iterations with @jourdain, and the timeline is less certain, but before the end of the year.