# esel3d

Esel3D is an interactive playground to visualize math in three spatial dimensions.
It is a 3D plotter for curves, surfaces, shapes and more. The redering uses [BabylonJS](https://www.babylonjs.com/) 
game engine to produce vibrant visuals and provides intuitive controls right inside a
Jupyter or Google Colab cell. 

## Navigate

Explore and view the plot from all angles in 3D space.
![Fig:1](https://raw.githubusercontent.com/esel-fliegen/esel3d/main/img/esel3d_img1.png)

## Configurate

Add custom labels. Change the color scheme of the axis. Chose the background color which is the most appealing. Plot up to 3 sufaces. 
![Fig:2](https://raw.githubusercontent.com/esel-fliegen/esel3d/main/img/esel3d_img2.png)
![Fig:5](https://raw.githubusercontent.com/esel-fliegen/esel3d/main/img/esel3d_img5.png)
![Fig:3](https://raw.githubusercontent.com/esel-fliegen/esel3d/main/img/esel3d_img3.png)

## Inspect

With the point explorer gizmo, users can view point location. 

![Fig:4](https://raw.githubusercontent.com/esel-fliegen/esel3d/main/img/esel3d_img4.png)
 
## Tutorials and Examples

Tuts and examples will be provided in the form of YouTube videos with accompanying example notebooks. 

## TODO
- [ ] Add animation option
- [ ] Make 3D cylindrical grid
- [ ] Make 3D polar grid
- [ ] Make vector field plot