Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mayavi causing issues, need to migrate to different 3D framework #12

Closed
GrowlingM1ke opened this issue Dec 17, 2024 · 1 comment
Closed
Assignees
Labels
bug Something isn't working enhancement New feature or request

Comments

@GrowlingM1ke
Copy link
Collaborator

Recently all builds have been segfaulting due to the mayavi dependency. Which, has been reported multiple times on their issues page: enthought/mayavi#1325 (comment) it seems there might be a workaround with specifying numpy and vtk versions but for the time being I've been unable to get it to work, furthermore the relatively slow response of the maintainer makes me wary that this issue won't creep up again in the future.

I would like to take this opportunity to migrate to a different 3D visualization framework, that will address as well one of the issues I've been having with mayavi, specifically the relatively slow update to plane vertices in mayavi that leaves the GUI slightly hanging on each render call:

  • https://github.com/vispy/vispy - Doesn't make use of the VTK as an API for rendering and it serves as a direct interface for opengl. Therefore, there is an opportunity for improving the performance. I'll attempt migrating to this first.
  • https://github.com/pyvista - Also utilizes VTK as mayavi so I'm not confident there will be much of an improvement in performance, however it seems both well maintained, documented and seems to be the easiest to implement, so it will be my backup in case vispy doesn't achieve to replace mayavi successfully.
@GrowlingM1ke
Copy link
Collaborator Author

After testing out both vispy and pyvista. Interestingly enough pyvista is the clear winner. The pv.StructuredGrid function is just leaps and bounds more efficeint in rendering a plane in real time compared to alternative functions in both mayavi and vispy. I am working now on migrating the code we have to be compatible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant