A unit circle on axes with the radius drawn to 50 degrees, and the sine and cosine of that angle laid on the axes as two bars that breathe as the angle turns. The loop is one full revolution, run linear the way continuous rotation should be, so it closes on the resting frame. A readout layer carries the angle and both ratios.
manim/unit_circle.py
"""Unit circle: a radius sweeping the circle, sine and cosine dropped as bars.
Render (the driver does this for every palette; these are for eyeballing):
P=/opt/homebrew/opt/python@3.11/bin/python3.11
ASSET_MODE=still $P -m manim -s -t -r 1600,1600 manim/unit_circle.py UnitCircle
ASSET_MODE=motion $P -m manim -qh -r 1600,1600 manim/unit_circle.py UnitCircleLoop
"""
import numpy as np
from manim import (
DEGREES,
DOWN,
LEFT,
ORIGIN,
RIGHT,
TAU,
The full Manim source and the rendered video come with a plan.