NeuroML / pyNeuroML

A single package in Python unifying scripts and modules for reading, writing, simulating and analysing NeuroML2/LEMS models.
https://docs.neuroml.org/Userdocs/Software/pyNeuroML.html
GNU Lesser General Public License v3.0
34 stars 30 forks source link

Improve performance of vispy plotter using meshes and their instances #260

Closed sanjayankur31 closed 8 months ago

sanjayankur31 commented 9 months ago

Includes some heuristics to decide which cylinders are considered instances of the same mesh---could be further tweaked.

pgleeson commented 8 months ago

Is pyqt5 an actual requirement? 3D works fine on my mac now with that removed from requirements. Also requires vispy>=0.13.0

sanjayankur31 commented 8 months ago

Is pyqt5 an actual requirement? 3D works fine on my mac now with that removed from requirements. Also requires vispy>=0.13.0

I think it is---vispy needs to have a "backend" and pyqt5/qt6 are probably the best ones:

https://vispy.org/installation.html#backend-requirements

Is it perhaps conflicting with another qt/pyqt install on your system---one installed using homebrew or something?

pgleeson commented 8 months ago

I did have PyQt6 preinstalled. Any reason not to use that in the requirements?

sanjayankur31 commented 8 months ago

Not really. I know qt5 has been around for ages so is fairly stable. qt6 is newer, and it's available on Fedora now, but I don't know if it's as heavily used as qt5 yet. Could maybe do two extras: vispy-qt5 and vispy-qt6 to support both and let the user choose? I'd initially thought we'd let the user choose the backend and install it themselves so had not included pyqt5 at all, but then the first time they run our tool, they'll get nothing, so I added pyqt5 as the default.

sanjayankur31 commented 8 months ago

Updated deps to use pyqt6, and at least vispy 0.13.0.