Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/clemrouxx/phyvista
Python library working with pyvista for easy 3D physics illustrations
https://github.com/clemrouxx/phyvista
physics physics-3d python pyvista
Last synced: about 1 month ago
JSON representation
Python library working with pyvista for easy 3D physics illustrations
- Host: GitHub
- URL: https://github.com/clemrouxx/phyvista
- Owner: clemrouxx
- Created: 2024-11-29T17:36:09.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-12-11T18:20:41.000Z (2 months ago)
- Last Synced: 2024-12-11T18:48:01.385Z (2 months ago)
- Topics: physics, physics-3d, python, pyvista
- Language: Python
- Homepage:
- Size: 31.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Phyvista
## Purpose
Phyvista is a python library built as an extension to pyvista specifically for the creation of 3D illustrations for physics. As such, it provides useful functions to make the process fast and easy.
## Requirements
As of now, phyvista requires a recent version of pyvista and numpy. It is possible that some specific submodules may have higher requirements.
## Code organization
One requirement is for this library to work seamlessly with pyvista, so that it is simple for the user to use pyvista functions when PHYvista doesn't provides what they want.
The "core" and "material" python files provides functionnality used my most of the other, more specific files.
### Submodules
#### General-purpose
- core.py : add the 'add' method to pyvista.Plotter, and creates classes Element and Group
- materials.py : creates class Material, and provide some template materials as instances
- constructors.py : defines additionnal functions for creating pyvista grids of commonly used shapes
- colors.py : provides useful color-related functions#### Specific
- lattices.py : repeating patterns & crystals
- optics.py : optical elements such as lenses
- light.py : laser beams, "fluorescent" points#### Example images
Scene from running the example 'example_lattices.py' :
![Scene from running the example 'example_lattices.py'](images/lattices_nacl.png)
Scene from running the example 'example_optics.py' (with global theme 'dark' and 'semirealistic' beam style) :
![Scene from running the example 'example_optics.py'](images/optics.png)
Scene from running the example 'graphene.py' :
![Scene from running the example 'graphene.py'](images/graphene.png)