Skip to content

Commit e85f876

Browse files
write Beziers
1 parent b9dc655 commit e85f876

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

docs/source/contributing/docs/types.rst

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,23 @@ you will need something like:
9393
9494
Béziers
9595
-------
96+
Manim internally represents a ``Mobject`` by a collection of points. These
97+
points represent Bézier curves, which are a way of representing a curve using a
98+
sequence of points.
99+
100+
.. note::
101+
102+
To learn more about Béziers, take a look at https://pomax.github.io/bezierinfo/
103+
104+
105+
Manim supports two different renderers, which each have different representations of
106+
Béziers: Cairo uses cubic Bézier curves, while OpenGL uses quadratic Bézier curves.
107+
108+
Typehints like ``BezierPoints`` represent a single bezier curve, and ``BezierPath`` is
109+
essentially a sequence of ``BezierPoints``. A ``Spline`` is when a ``BezierPath``
110+
forms a closed curve. Manim also provides more specific type aliases when working with
111+
quadratic or cubic curves, and they are prefixed with their respective type (e.g. ``CubicBezierPoints``,
112+
which is a ``BezierPoints`` that specifically applies to cubic Bézier curves).
96113

97114

98115
Functions

0 commit comments

Comments
 (0)