Logo Lanfrica

DannySye/When-Code-Becomes-Art-Building-Animations-with-Python-and-Manim

Créateur:
Dan
Hôte:
This is the repository for PyCon Uganda presentation by Mwiine Daniel and Collins Mesue Asibong # When Code Becomes Art: Building Animations with Python and Manim This repository contains the code and resources for the presentation "When Code Becomes Art: Building Animations with Python and Manim," presented by Mwiine Daniel and Collins Mesue Asibong at PyCon Uganda 2025. ## About This Project The goal of this project is to demonstrate how to use Python and the Manim library to create stunning mathematical animations. Manim is a powerful animation engine created by 3Blue1Brown for creating precise, code-driven animations, particularly for educational content, data visualization, and storytelling. ## Why Choose Manim? * **Code-Driven Control:** Create precise and complex animations programmatically. * **High-Quality Output:** Generate crisp, high-resolution videos. * **LaTeX Support:** Seamlessly integrate mathematical equations and formulas. * **3D Capabilities:** Create and animate in three-dimensional space. * **Strong Community:** A large and active community for support and resources. ## Installation ### Prerequisites * Python 3.8 or newer * `pip` (Python package manager) * A modern terminal (PowerShell, Bash, CMD, etc.) * Git (for installing the development version of Manim) * A code editor (e.g., VS Code, PyCharm) * A LaTeX distribution (e.g., MiKTeX, MacTeX, TeX Live) ### Installation Steps 1. **Create a virtual environment (recommended):** ```bash python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate` ``` 2. **Install Manim:** ```bash pip install manim ``` 3. **Verify the installation:** ```bash manim --version ``` ## Getting Started: Creating Animations ### Basic Syntax The core of Manim is the `Scene` class. You create animations by defining a class that inherits from `Scene` and implementing the `construct` method. **Hello, World!** ```python from manim import * class HelloWorld(Scene): def construct(self): text = Text("Hello, World") self.play(Write(text)) self.wait(3) ``` ### Rendering a Scene …