Geometrylessonsgithub -
## Objectives - Define point, line, ray, segment - Distinguish between collinear and non-collinear points - Use notation and sketch figures
Interactive geometry lessons combining visual animations (Manim) and computational exploration (Jupyter). git clone https://github.com/yourusername/geometrylessonsgithub.git cd geometrylessonsgithub pip install -r requirements.txt </code></pre> <p>Then open any <code>interactive.ipynb</code> in Jupyter Lab.</p> <h2>📚 Lessons</h2> <ol> <li><strong>Points, Lines, Rays, Segments</strong> – Foundations</li> <li><strong>Angles</strong> – Types, bisectors, relationships</li> <li><strong>Triangles</strong> – Types, Pythagorean theorem, inequalities</li> <li><strong>Circles</strong> – Radius, diameter, inscribed angles, tangents</li> <li><strong>Coordinate Geometry</strong> – Distance, slope, line/circle equations</li> </ol> <h2>🎬 Example Visual</h2> <p>Run a visual proof:</p> <pre><code class="language-bash">manim visual_proofs/pythagoras_animated.py PythagoreanTheorem -pqh </code></pre> <h2>🧠 Exercises</h2> <p>Each lesson includes an interactive notebook with:</p> <ul> <li>Auto-graded quizzes (using <code>ipywidgets</code>)</li> <li>Dynamic geometry plots (Matplotlib/Plotly)</li> <li>Coding challenges</li> </ul> <h2>🤝 Contributing</h2> <p>See <code>docs/contributing.md</code>.</p> <h2>📖 License</h2> <p>MIT</p> <pre><code> --- geometrylessonsgithub
### **2. `requirements.txt`**
## Installation See `installation.md`.
self.play(FadeIn(dot_a, label_a), FadeIn(dot_b, label_b)) self.wait() self.play(Create(line)) self.wait() self.play(Transform(line, ray)) self.wait() self.play(Transform(line, segment)) self.wait() </code></pre> <hr> <h3><strong>5. Sample Interactive Notebook: <code>lessons/01_points_lines/interactive.ipynb</code></strong> (JSON-like snippet)</h3> <pre><code class="language-json">{ "cells": [ { "cell_type": "markdown", "source": [ "# Interactive Geometry: Points & Lines" ] }, { "cell_type": "code", "source": [ "import matplotlib.pyplot as plt\n", "import ipywidgets as widgets\n", "from IPython.display import display\n", "\n", "def plot_points(x1, y1, x2, y2, draw_line):\n", " plt.figure(figsize=(5,5))\n", " plt.scatter([x1, x2], [y1, y2], color='red')\n", " if draw_line:\n", " plt.plot([x1, x2], [y1, y2], 'b-')\n", " plt.xlim(-5,5); plt.ylim(-5,5)\n", " plt.grid(True)\n", " plt.show()\n", "\n", "widgets.interact(plot_points,\n", " x1=(-5,5,0.5), y1=(-5,5,0.5),\n", " x2=(-5,5,0.5), y2=(-5,5,0.5),\n", " draw_line=False)" ] } ] } </code></pre> <hr> <h3><strong>6. <code>tools/geometry_utils.py</code></strong></h3> <pre><code class="language-python">import math ## Objectives - Define point, line, ray, segment
</code></pre> <p>manim>=0.17.0 numpy>=1.21.0 matplotlib>=3.5.0 jupyter>=1.0.0 ipywidgets>=7.6.0 pytest>=6.2.0 plotly>=5.10.0 sympy>=1.10</p> <pre><code> --- Sample Lesson: `lessons/01_points_lines/lesson_notes
### **3. Sample Lesson: `lessons/01_points_lines/lesson_notes.md`**