How aaryanrs/fury works
FURY is a Python scientific-visualization library: users build visual objects and interfaces, place them in a scene, then render and interact with them; timelines add animation and recording. The graph includes documented network visualization, physics-engine access, shaders, and notebook rendering. It reflects the file tree and README plus sampled excerpts; several capability links use only documented behavior, as their implementation was not sampled.
Main entry points: window.py Window manager · elements.py UI elements · core.py Visual actors · timeline.py Timeline playback
Components 19
Scene construction
- Visual actors
fury/actor/core.py - Geometry primitives
fury/geometry.py - Materials and color
fury/material.py - UI elements
fury/ui/elements.py - UI containers
fury/ui/containers.py - UI context
fury/ui/context.py
Interaction and animation
- Animation
fury/motion/core.py - Timeline playback
fury/motion/timeline.py - Interpolation
fury/motion/interpolator.py
Data and domain
- Network visualization
fury/network/core.py - Network parsers
fury/network/parser.py - Sample data fetch
fury/data/fetcher.py
Rendering and shaders
- Window manager
fury/window.py - Graphics backend
fury/lib.py - Custom shaders
fury/shader.py
Other components
- Python user
- Graphics runtime
- Jupyter environment
- Physics engines
Connections 23
- Python user → Visual actors: creates
- Python user → UI elements: builds interface
- Visual actors → Geometry primitives: uses primitives
- Visual actors → Materials and color: sets appearance
- UI elements → UI context: tracks UI state
- UI containers → UI elements: organizes elements
- Python user → UI containers: composes UI
- Python user → Network visualization: builds network view
- Network parsers → Network visualization: provides parsed data
- Python user → Network parsers: loads network files
- Python user → Sample data fetch: requests sample data
- Python user → Timeline playback: controls playback
- Timeline playback → Animation: updates animations
- Animation → Interpolation: evaluates keyframes
- Python user → Window manager: opens scene
- Window manager → Graphics backend: renders scene
- Graphics backend → Graphics runtime: uses graphics APIs
- Window manager → UI elements: dispatches events
- Window manager → Timeline playback: starts playback
- Python user → Custom shaders: customizes rendering
- Custom shaders → Graphics backend: registers shaders
- Window manager → Jupyter environment: supports notebook display
- Python user → Physics engines: integrates physics