Jupyterlab Streaming and New Features
This release, pyvista==0.27.0
, is a major release that includes an important new feature for jupyterlab: real-time streaming leveraging ipyvtk-simple
. Using either software or hardware rendering (as supported by VTK), you can visualize geometry on a remote machine through a jupyterlab environment!
Several other new features were added, along with many bug fixes and optimizations by both new and existing contributors. Thanks all for your contributions! pyvista
would not be possible were it not for the community of developers behind all these PRs.
Contributors (in no order)
- @tkoyama010
- @JevinJ
- @darikg
- @larsoner
- @GuillaumeFavelier
- @imsodin
- @banesullivan
- @akaszynski
- @math-artist
- @mkondratyev85
- @Keou0007
- @yetisir
- @mglesser
- @thomgrand
- @dstansby
New Features
- Add shrink filter (#913)
- Add find_closest_cell filter (#923)
- Add texture map to sphere filter (#938)
- Vectorized ray tracing using trimesh and pyembree (#949)
- Active tensors (#969)
- Wrap Trimesh (#970)
- Cell based unstructured grid generator (#976)
- ipyvtk plotting (#983)
Documentation
- More examples to the gallery (#940)
- Add new banner to homepage and README (#941)
- Docker documentation (#992)
- Add widgets to the examples gallery (#988)
API Changes
- Dropping support for Python 3.5 (#912 & #905)
- Fix Opacity Array (#906)
- Add checking if the number_of_cells corresponds offset ... (#932)
- Make rendering optional when adding meshes and actors (#935)
- Faster Screenshot (#957)
- Include or not adjacent cells when using extract_points (#960)
- Add additional methods to PlotterITK (#980)
Bug Fixes
- Memory Leak and References (#894)
- Fix render layers (#893)
- Delete obbTree to avoid memory leak (#922)
- Remove blue color on meshes when using add_mesh (#929)
- Fix area property (#933)
- Fix axis problem on parametric geometry (#948)
- Fix geometric disc
- Fix and test for memory leaks (#958)
- Fix scalar bar colors (#971)
Miscellaneous
- Improve coverage and testing (#891, #889, #888, #887, #886)
- Use f-strings (#911)
- Raise exceptions instead of producing empty screenshots (#915)
EGL Wheels
Attached wheels (vtk-egl-9.0.1*
) are for hardware (GPU) based rendering on jupyterlab or headless instances. Wheels built with:
echo "Building with EGL"
$PYBIN=/usr/bin/python3.7
yum install mesa-* -y
git clone https://github.com/Kitware/VTK
cd VTK
git checkout v9.0.1
mkdir build && cd build
/io/cmake/bin/cmake -DVTK_BUILD_TESTING=OFF\
-DVTK_WHEEL_BUILD=ON\
-DVTK_PYTHON_VERSION=3\
-DVTK_WRAP_PYTHON=ON\
-DPython3_EXECUTABLE=$PYBIN\
-DVTK_OPENGL_HAS_EGL=True\
-DVTK_USE_X=False\
../
make -j
$PYBIN setup.py bdist_wheel
There's also one vanilla Python 3.9 wheel since that's not currently available on PyPi.