pyvista

3D plotting and mesh analysis through a streamlined interface for the Visualization Toolkit (VTK)

MIT License

Downloads
284.8K
Stars
2.4K
Committers
153

Bot releases are hidden (Show)

pyvista - Release Notes v0.36.1

Published by akaszynski about 2 years ago

Patch release removing vtk version requirement to support Python 3.10 and conda installs. See #3117.

pyvista - Release Notes v0.36.0

Published by akaszynski about 2 years ago

What's Changed

New Features

Bug fixes or behavior changes

Documentation

Maintenance

New Contributors

Full Changelog: https://github.com/pyvista/pyvista/compare/v0.35.2...v0.36.0

pyvista - Release Notes v0.35.2

Published by akaszynski over 2 years ago

This patch release was needed for urgent fixes for MNE as described in https://github.com/mne-tools/mne-python/pull/10913

This patch release also includes several bug fixes and new examples from the Scipy2022 sprint. Thanks all who participated with their first PRs!

New contributors

  • @charithgunasekara
  • @ENIAC-6
  • @RobPasMue
  • @jorgepiloto
  • @alexrockhill

What's Changed

Bugs

  • #2967 Fix pyvista.plot kwargs bug
  • #2976 [BUG] Fix clearing point and cell data
  • #2980 Fix active plotting scalars for multi-plots bug
  • #2991 Clear charts when clearing plotters
  • #2999 Fix Plotter.export_obj bug documentation

Documentation

  • #2969 add more mount damavand examples
  • #2981 Add movie glyphs example
  • #2996 Fix texture docstring bug
  • #2997 Fixed docstring explanation for curvature function
  • #3005 Add example remove_scalar_bar( )
  • #3011 Resolve issues with scalars in cell_data_to_point_data API docs
  • #3013 Add background_color example
  • #3014 Fix the flying edges example
  • #3016 Added link_views example
  • #3019 Add camera position example documentation

Full Changelog: https://github.com/pyvista/pyvista/compare/v0.35.1...v0.35.2

pyvista - Release Notes v0.35.1

Published by tkoyama010 over 2 years ago

We've added a variety of new features in this release, including wrappers for several VTK filters and widgets. Check out the full release notes below!

This release includes a variety of new features including

Special thanks to the 14 new contributors to the project for this release. Thanks for your hard work!

What's Changed

New Features

Bug fixes or behavior changes

Documentation

Maintenance

New Contributors

Full Changelog: https://github.com/pyvista/pyvista/compare/v0.34.0...v0.35.1

pyvista - Python 3.10 Hotfix - v0.34.2

Published by akaszynski over 2 years ago

Add support for Python 3.10, PyVista 9.2.0, and numpy 1.23.

Includes the following cherry-picked PRs:

  • #2585
  • #2863
  • #2726

Full Changelog: https://github.com/pyvista/pyvista/compare/v0.34.1...v0.34.2

pyvista - Release Notes v0.34.0

Published by akaszynski over 2 years ago

We've added a variety of new features in this release, including wrappers for several VTK filters and widgets. Check out the full release notes below!

Special thanks to the 11 new contributors to the project. Thanks for your hard work!

What's Changed

New Features

Bug fixes or behavior changes

Documentation

Maintenance

New Contributors

Full Changelog: https://github.com/pyvista/pyvista/compare/v0.33.0...v0.34.0

pyvista - v0.33.0 Release Notes

Published by akaszynski almost 3 years ago

PyVista 0.33.0 Release Notes

PyVista 0.33.0 is another large release including 96 pull requests from 17 collaborators. Thanks to all who contributed!

A special thanks to @dcbr in https://github.com/pyvista/pyvista/pull/1432 who extended the vtk Chart API into PyVista.

What's Changed

New Features

Bug fixes or behavior changes

Documentation

Maintenance

New Contributors

Full Changelog: https://github.com/pyvista/pyvista/compare/0.32.0...v0.33.0

pyvista - v0.32.0

Published by akaszynski about 3 years ago

PyVista 0.32.0 Release Notes

The PyVista 0.32.0 release highlights are:

  • Release of three.js plotting backend using pythreejs in #1557
  • Vast improvements in the documentation in #1571
  • Addition of custom readers in #1617 and #1536
  • Refactor of dataset attributes.
  • Support for exporting to html
  • Import/export gLTF in #1489

New Features

  • Adaptive subdivision filter in #1375
  • Context managers for handling errors #1382
  • Add reversing geodesic paths #1381
  • Evenly spaced streamlines filter #1441
  • Add progress bars for all available methods in #1519
  • Add Kochanek Spline function in #1603

Bug fixes or behavior changes

  • Do not return camera position by default in #1478
  • Deprecate DataSet.vectors in #1461
  • Disable warnings on missing xserver #1372
  • Split up filters into individual files in #1385
  • Reset camera clipping when changing position #1446
  • Fix boolean behavior in #1485
  • Refactor MultiBlock in #1506
  • Remove dependency on transforms3d

Documentation

  • Add Rotate example to the Axes class #1379
  • Use autodocs to match pandas class method documentation style.
  • Add examples to a variety of methods and classes

Release Contributors

A huge shout out to all who helped make this release happen, from seasoned veterans reviewing PRs to first time contributors. Thanks!

  • @AleenaSA
  • @MatthewFlamm
  • @RichardScottOZ
  • @adeak
  • @darikg
  • @hakostra
  • @jrwrigh
  • @tkoyama010
  • @whophil
pyvista - Support Latest VTK Development Wheels

Published by akaszynski over 3 years ago

This release includes 1cdcd85480734e9e8065f62cf10b4a46eef174eb from #1411 to fully support usage of the latest VTK wheels, thus (finally) enabling support of Python 3.9 for pyvista.

Note that to use the pre-release wheels, you must specify the version of the package with:

pip install vtk==9.0.20210612.dev0

Note that this is unnecessary on Python 3.9 as pip will use unstable or development wheels if they are the only ones available.

pyvista - Global Theme and Bug Fixes

Published by akaszynski over 3 years ago

PyVista 0.31.0 Release Notes

This release includes a variety of bug fixes, features, and documentation improvements.

In addition with this release we're adding VTK wheels, including aarch64 build for with and without EGL, EGL wheels, and Python 3.9 (all around 100 MB and built via https://docs.pyvista.org/extras/building_vtk.html)

Wheels for Python 3.9 x86_64 and aarch64 (ARM 64) with and without EGL

Note that vtk-egl wheels are VTK wheels compiled with EGL. They should only be installed on machines where you intend to render only to off_screen. The advantage of these wheels is that they do not require a virtual framebuffer and tend to render better than the vanilla vtk in off_screen mode. These wheels will still be installed as vtk, so if you would like vtk and vtk with EGL installed on the same machine, be prepared to setup a virtual environment.

Please note that the ARM 64 wheels require a 64-bit OS. Download your Raspberry Pi 64-bit image from:
https://downloads.raspberrypi.org/raspios_arm64/images/

Contributors

  • @adeak
  • @MatthewFlamm
  • @akaszynski
  • @fgallardo-mpie
  • @GuillaumeFavelier
  • @Keou0007
  • @RichardScottOZ
  • @whophil
  • @tkoyama010
  • @darikg

Pull requests merged

A total of 28 PRs were merged for this release.

  • #1357 master Do not mutate scalar_ bar_args
  • #1358 Fix markup bug in show() docstring
  • #1354 Fix screenshot things
  • #1352 Add missing parameters and clean up add_scalar_bar docstring
  • #1351 Add to streamlines Example for using IntegrationTime
  • #1347 Remove Scalarbar when removing Actor
  • #1349 Clean up build vtk docs
  • #1348 Add perlin noise example
  • #1334 Add ability to use cell data with glyph filter
  • #1341 Fix streamlines_from_source doc markup and whitespace
  • #1344 improve build notes
  • #1346 fix interpolation documentation
  • #1345 Add note about the f focus key
  • #1342 Add missing examples import to texture_map_to_sphere docs
  • #1323 Faster multi ray trace retry
  • #1329 Add schedule
  • #1330 Fix Returns in docstrings of streamlines and streamlines_from_source
  • #1325 fix/backwards compat ipyvtk
  • #1326 Add local fixtures in test_polydata, minor style fixes
  • #1322 Fix up and clarify plot, show docs
  • #1318 add trivial module for backwards compatability
  • #1287 Allow dataset source for streamlines
  • #1315 Modifying arrays calls Modified() on associated datasets.
  • #1310 Implement Theme Class
  • #1317 Update filters.py
  • #1316 Update compute-normals.py
  • #1314 Update dataset.rst
  • #1312 Fix typo for linking clip_surface
pyvista - Improved Jupyterlab Support

Published by akaszynski over 3 years ago

This release includes a several new features including better integration with jupyterlab plotting, better documentation, and a variety of fixes.

The following is a non-comprehensive list of changes, features, and bug-fixes:

New Features

  • Add shadows
  • Add physically based rendering
  • Add jupyter backends

Documentation

  • Interactive examples on docs.pyvista.org
  • Use pydata-sphinx-theme
  • Improve pyvista.Camera class documentation.

API Changes

  • Refactor inplace so it always returns an object.

Bug Fixes

  • Fix Window Closing
  • Fix docstrings
  • Fix floor coloring
pyvista - Under the hood changes for VTK9

Published by akaszynski over 3 years ago

This minor release of pyvista==0.29.0 includes a variety of changes and new features. The most major is improving our load-time by only loading in the VTK libraries used through lazy loading or selective imports using `vtkmodules``. It was quite an overhaul and should improve load time, reduce memory usage, and potentially the size of the frozen package.

Other new features and bug-fixes include:

New Features

  • add subdivision option to extract_surface (#1174)
  • Add a silhouette parameter to add_mesh (#1211)
  • add new colors (#1173)
  • Add pickle support to DataObject (#1143)
  • Add where_is in BasePlotter (#1175)
  • Create an explicit structured grid (#1133)

Documentation

  • Fix and update some sphinx docs (#1149)
  • πŸ“ Add new function to geometric.rst (#1170)
  • Update what-is-a-mesh.rst (#1176)
  • Fix docstring in add_point_labels (#1188)

API Changes

  • Improve PolyData Import (#1213)
  • Use vtkTransformFilter in DataSet.transform() (#1166)
  • Improve Exodus Reader (#1191)
  • Add bounds in reset_camera (#1161)
  • Add option to hide plane widget vector (#1150)
  • add origin kwarg to plotter.add_legend (#1153)
  • Expose start_xvfb (#1151)
  • Add render=True in add_point_labels (#1152)
  • add transforms3d (#1142)

Bug Fixes

  • Fix the "reset camera" effect when parallel projection is enabled/disabled (#1221)
  • Wrap pyvista_ndarray (#1222)
  • Fix vtk not defined (#1217)
  • plot_over_line should fail if scalar name does not exist (#1214)
  • Fix labels (#1201)
  • remove faulthandler (#1187)
  • Fix log scale in scalar bar (#1183)
  • Fix bugs in enable_cell_picking (#1158)
  • fix add_actor (#1182)
  • Fix Binary Writer (#1148)
  • Reimplement Light.copy to get around VTK8.1 bug (#1137)
  • Update enable_cell_picking (#1157)
  • Update the active scalar bar when cmap is changed (#1169)
  • Fix scalar bar moving upward (#1171)

Miscellaneous/Testing

  • Minor fix of plot_over_line's test #525 (#1216)
  • common --> dataset (#1209)
  • 🎨 Minor fix of format of the code. (#1199)
  • Fix doctest failure in BasePlotter.where_is (#1192)
  • Use vtkmodules (#1163)
  • Move Common, DataObject to dataset.py, dataobject.py (#1160)
  • Partially add type hints to /core/ (#1145)
  • improve import speed (#1156)

Contributors (alphabetical)

  • @adeak
  • @akaszynski
  • @banesullivan
  • @d-chambers
  • @GuillaumeFavelier
  • @JevinJ
  • @Keou0007
  • @RichardScottOZ
  • @rodrigomologni
  • @tkoyama010
  • @whophil
  • @yienyien
pyvista - Minor API Changes and Various Bug-fixes

Published by akaszynski over 3 years ago

Release 0.28: Minor API Changes and Various Bug-fixes

This release, pyvista==0.28.0, is a minor release that captures a variety of bug-fixes and API additions.

Contributors (alphabetical)

  • @adeak
  • @akaszynski
  • @banesullivan
  • @Boorhin
  • @dcbr
  • @GuillaumeFavelier
  • @JevinJ
  • @Keou0007
  • @larsoner
  • @mglesser
  • @nickvazz
  • @rodrigomologni
  • @sampotter
  • @shakasaki
  • @Sinaxist
  • @Spectre5
  • @tkoyama010
  • @whophil
  • @yngvem

New Features

  • Add table of glyphs option to DataSetFilters.glyph (#776)
  • Allow picking in notebook with ipyvtk (#996)
  • Rename trans_from_matrix to array_from_vtkmatrix, implement inverse (#1110)
  • Add slicing, concatenation to StructuredGrid (#1106)
  • 🚩 Add option level and quads to function Box (#1103)
  • ✨ Add Pyramid function (#1102)
  • Add make_tri_mesh helper (#1101)
  • Add PolyData intersection filter (#1091)
  • Add read_plot3d, other minor reader improvements (#1081)
  • Add parallel projection and parallel scale properties to Renderer and BasePlotter (#1021)
  • Add Light class pythonizing vtkLight (#1040)
  • Add reflect filter and other methods (#1122)
  • Transforms via transform3d (#1127)

Documentation

  • use pypandoc for better jupyter notebooks from the gallery (#1017)
  • Doc/move around (#1000)
  • improve camera docs and implementation (#1111)
  • ✏️ Fix typo of docstring (#1104)
  • add tuple as type hint for vectors (#1094)
  • fix copy button (#1063)
  • feat/pyinstaller docs (#1037)

API Changes

  • Use render window size (#995)
  • Add variable length density to voxelize (#1100)
  • πŸ“· Add camera object (#945)
  • Add style parameter in text slider widgets (#1093)

Bug Fixes

  • fix/threshold args (#1014)
  • Fix small notation shaking (#1008)
  • Fix subplotting with ipyvtk_simple (#994)
  • Update hypothesis requirement 5.8.0->6.0.3 (#1115)
  • Replace "is 0" comparison with "== 0" in filters.py (#1114)
  • Release graphics resources (#1113)
  • Ensure that views of pyvista_ndarray remain associated (#1108)
  • Fixed disk geometry to rotate and translate properly (#1061)
  • Fix double blocking of plotter.show in script mode on Windows (#1105)
  • Fix "Hide points in add_point_labels is not working" (#1092)
  • Fix window closing immediately (#1048)
  • Fix/extract points (#1043)
  • Fix UnstructuredGrid init from arrays for VTK 8.90 (#1039)
  • Fix Cell Types Helper (#1028)
  • Add missing no_itk skip to itk polydata point plotting test (#1032)
  • Fix add_arrows (#1011)
  • Bugfix for #1053: Plotter.update fails with interactive_update=True if auto_close=False is not specified (#1056)
  • patched edge case for empty mesh (#1030)
  • force rewrite faces when flipping normals (#1034)
  • fix/default rcParams (#1015)

Miscellaneous/Testing

  • ENH: Reduce size (#1019)
  • Remove Alpha Channel on Image Regression (#1006)
  • Clean up example downloads (#1005)
  • removing py3.9 check (#1003)
  • Image Regression (#998)
  • Disable conda 8.1 testing and update agents (#1109)
  • write frame needs update (#1099)
  • do not import pandas on init (#1029)
pyvista - Jupyterlab Streaming and New Features

Published by akaszynski almost 4 years ago

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.

pyvista - Feature and Support Improvements

Published by akaszynski about 4 years ago

This release adds a variety of new features, API changes, and documentation fixes. A big thanks to all who contributed to the PRs, issues, and testing for this release!

New Features

  • 3-lights illumination (#882)
  • added clip_scalar (#877)
  • Enable smooth shading for textures (#865)
  • Add pathlib Support (#836)
  • Enable status bars for the glyph filter (#779)
  • clip closed surface for PolyData (#797)
  • Add PolyData strip filter (#807)
  • Add RubberBand2D interactor style (#872)

Various documentation, spelling, and code cleanups:

  • Add documentation on how to set up sphinx gallery (#783)
  • Misc. documentation fixes (#829)
  • Clarify clip filter docstring (#840)
  • Add better Unstructured Grid Documentation (#845)
  • Minor Examples Fixes (#852)
  • typo fix (#864)
  • Internationalization and localization of document. (#878)
  • Add Filter Examples (#873)
  • add section videos (#883)

Bug fixes:

  • Fix visible cell picking (#799)
  • Fix get_data_range for nested MultiBlock (#793)
  • Fix is_all_triangles (#832)
pyvista - VTK 9 Support and PyQt5 Refactor

Published by akaszynski over 4 years ago

Release 0.25.1

It's been three months since the last release and there are quite a few bug fixes and features!

Major API Changes

  • Moved BackgroundPlotter and QtInteractor to pyvistaqt. See #719 for the reasoning, but as a summary, this boils down to licensing, unit testing, and improved development. See pyvistaqt to test out the new module. Wheels will be released for that as soon as we've released wheels for pyvista==0.25.0 as it's a dependency.
  • Added better support for VTKv9. There were several changes under the hood to VTK's UnstructuredGrids that need to be implemented here, as well as many changes to our unit testing and CI to support Python 3.8 and VTKv9. See #732, #772, and #693.
  • When using PyVista with Sphinx-Gallery, we require you to set pyvista.BUILDING_GALLERY = True in your conf.py

Features

  • Removing cells or faces (#653)
  • Progress bar using tqdm (#608)
  • Plotting floors (#424)
  • Additional geometry features (#449)
  • Subplot groups (#696)
  • Custom orientation widget (#702)

Bug Fixes

  • Checking vectors when setting vectors #763
  • Check overwriting dataset to avoid segfault #738
  • Fix faulthandler (#694 and #645)
  • Implicit point setters (#769)
  • Ellipsoid wrapping (#705)

CI Improvements

  • Unit testing is between 25-40% faster. MacOS testing no supports multiple testing processes using pytest-xdist. See #739 and #744
  • Improved code coverage #745 and #709
  • Removed all example downloading from unit testing. Greatly improves test stability (#731)
  • Various speedups (#661)

Refactoring

  • Removed untested pyansys quality method.
  • Using underscore numpy types (#762)
  • Optimized imports (#743)
  • Line break consistent (#737)
  • Use new style super() calls (#741)
  • Generic load/save (#736)
  • Refactored active scalars/vectors (#746)
  • Better error types (#759)
  • And many many more...

Contributors

Thanks to all those who contributed to this release! In no particular order:

  • @JevinJ
  • @mli0603
  • @banesullivan
  • @GuillaumeFavelier
  • @dcbr
  • @tomsal
  • @tkoyama010
  • @ralovich
  • @florian-wagner
  • @imsodin
  • @larsoner
  • @adeak
  • @akaszynski
pyvista - Release Candidate for 0.25.0

Published by akaszynski over 4 years ago

Release canidate for pyvista==0.25.0

pyvista - Major changes and improvements to BackgroundPlotter

Published by akaszynski over 4 years ago

New Features

  • Huge Refactor of QtInteractor to improve stability of BackgroundPlotter (#603, #619).
  • Rename extract edges filters (#610)
  • Exposing tip resolution in pyvista.Arrow (#624)

Squashed Bugs

  • Minor doc fixes (#616)
  • Disabled depth peeling by default (#618)
  • Fix increment point size (#609)
  • Disabled rendering on close (#638)

Behind the scenes & MISC

  • Using Azure Devops for testing. We made this decision to keep all the testing in one place for Linux, Mac OS, and Windows.
  • Added Mac OS CI testing. Azure made this easy.
  • Added a development docs website at https://dev.pyvista.org/. Anything merged with Master will show up here. Docs are only updated to https://docs.pyvista.org when a release is created
  • Printed directions for movie example.
  • Using meshio>=4.0.0

Contributors

Thanks to all those who contributed PRs for this release. Ping me if I missed you, because there was a lot this time around.

  • @adeak
  • @keurfonluu
  • @GuillaumeFavelier
  • @banesullivan
  • @RubendeBruin
  • @imsodin
  • @tkoyama010
pyvista - Bug fixes, improvements, and new widgets/filters

Published by banesullivan over 4 years ago

New Contributors

Be sure to welcome and thank these folks for their contributions!

  • @tkoyama010
  • @MatthewFlamm
  • @math-artist

New Features

  • New experimental plotter class with itkwidgets for interactive Jupyter Notebook plotting (see #389)
  • Add file drag ’n’ drop to BackgroundPlotter (see #567)
  • New extract_subset filter for UniformGrid (see #569)
  • New GPU details in Report (see #512)
  • New text slider widget (see #518)
  • Enable depth peeling by default (see #529)
  • New sample over line filter (see #525)
  • New checkbox button widget (see #528)
  • Refactor axes widget to be on any renderer in subplots (see #536 and #565)
  • Refactor BasePlotter’s wrapping of Renderer to improve interface and docs (see #552)
  • Improve meshio support and enable meshio objects to be passed to PyVista (see #559 and #568)
  • Improve repr for camera position (see #537)
  • Updates to visible cell selecting (see #571)
  • Add original point IDs to geodesic filter (see #544)

Squashed Bugs

  • Fix slider widget coordinate parameters (see #511)
  • Fix mesh name issues that prevented plotting in for-loops (see #521)
  • Fix issues when instantiating RectilinearGrid (see #530)
  • Fix brown plotting color (see #538)
  • Fixes to CylinderStructured (see #561 and #577)
  • Fix issues managing active scalars in widget plotting routines (see #533)
  • Fix issues with getitem on MultiBlock datasets (see #563)
  • Fix issue when volume rendering 3D NumPy arrays (see #575)
  • Fix combine filter for MultiBlock datasets (see #535)
  • Fixes to pyvista.voxelize (see #546)
  • Update copy_meta_from to deep copy textures (see #564)
pyvista - Stability Improvements and Additional Qt Support

Published by banesullivan almost 5 years ago

New Contributors

Be sure to welcome and thank these folks for their contributions!

  • @keurfonluu
  • @truenicoco
  • @imsodin

High Impact

  • Resolved Windows crashes and disappearing plotters (see #502)
  • Fully dropped support for Python 2.7 (see #493)
  • Depth peeling to properly render translucent geometries (see #450)
  • Full support for reading/writing files with meshio (see #472 and #495)
  • Log scale color mapping (see #499)
  • Keyword arguments are now strongly enforced across the API (see #432)
  • the IPython tools module has been entirely removed (see #403)

New Features & Improvements

  • More camera viewing options: e.g. Plotter.view_zx
  • Gradient background colors when plotting (see #411)
  • Gaussian smoothing filter for pyvista.UniformGrid meshes (see #420 and #485 )
  • Save graphic method for SVG images (see #331)
  • More culling options (see #292)
  • Array name auto-completion in IPython when getting array (see #425)
  • More keypress events in the plotters (see #434)
  • New click position tracking in world coordinates (see #466)
  • Enabled use of custom bounds with texture_map_to_plane (see #407)
  • Document how to instantiate pyvista.MultiBlock objects (see #413)
  • Control the border of the backgroundPlotter (see #416)
  • Enable access to various contouring algorithms in the contour filter (see #421)
  • Various widgets enhancements (see #415) and bug fixes
  • Added support for passing a PolyData mesh as the box for the clip_box filter (see #433)
  • PyQt improvements (see #424 and see #498)
    • Q-key will not automatically bind to embedded Qt apps (see #508)
    • Renderers will automatically update when embedded in Qt apps now (see #509)
  • Colormaps can be defined as a list of string colors (see #445)
  • Add helper method to see if PolyData mesh is made of all triangles (see #446)
  • Clamping range added to glyph filter (see #451)
  • Major naming consistency improvements for *_scalars and *_array (see #456)
  • Use the camera transform matrix when getting/setting the camera position in scaled environments (see #476)
  • More indexing options for MultiBlock objects (see #459)
  • Enable pyvista.read to handle lists of file names and return MultiBlock object
  • FileNotFoundError used over IOError (see #506)

Squashed Bugs

  • Fixed clim issues with Plotter.add_mesh_slice_orthogonal
  • Fixed issue when using rng keyword with widget plotting helpers
  • Fixed Python 3.8 issues
  • Fixed usage of render_points_as_spheres with Plotter.add_point_labels
  • Fixed point labeling issues appearing in front of opaque meshes (see #366)
  • Fixed issues when importing broken builds of panel (see #440)
  • Fixed random behavior of pyvista.CylinderStructured (see #442)
  • Fixed issues when copying pyvista.MultiBlock datasets
  • Fixed an issue when parsing VTK errors as Python warnings
  • Fixed major issues with volume rendering (see #464 and #497)
  • Fixed memory leak from plotter not being cleared (#484)
  • Fixed issue when saving PLY meshes (see #489)