ArcPolygon¶
Qualified name: algan.mobs.manim\_compat.ArcPolygon
- class ArcPolygon(*vertices, angle=0.7853981633974483, radius=None, arc_config=None, **kwargs)¶
Bases:
ManimCompatMobA generalized polygon allowing for points to be connected with arcs.
This version tries to stick close to the way
Polygonis used. Points can be passed to it directly which are used to generate the according arcs (usingArcBetweenPoints). An angle or radius can be passed to it to use across all arcs, but to configure arcs individually anarc_configlist has to be passed with the syntax explained below.- Parameters:
vertices (Point3DLike) – A list of vertices, start and end points for the arc segments.
angle (float) – The angle used for constructing the arcs. If no other parameters are set, this angle is used to construct all arcs.
radius (float | None) – The circle radius used to construct the arcs. If specified, overrides the specified
angle.arc_config (list[dict] | None) – When passing a
dict, its content will be passed as keyword arguments toArcBetweenPoints. Otherwise, a list of dictionaries containing values that are passed as keyword arguments for every individual arc can be passed.kwargs (Any) – Further keyword arguments that are passed to the constructor of
VMobject.
- arcs¶
The arcs created from the input parameters:
>>> from manim import ArcPolygon >>> ap = ArcPolygon([0, 0, 0], [2, 0, 0], [0, 2, 0]) >>> ap.arcs [ArcBetweenPoints, ArcBetweenPoints, ArcBetweenPoints]
- Type:
list
Tip
Two instances of
ArcPolygoncan be transformed properly into one another as well. Be advised that any arc initialized withangle=0will actually be a straight line, so if a straight section should seamlessly transform into an arced section or vice versa, initialize the straight section with a negligible angle instead (such asangle=0.0001).Note
There is an alternative version (
ArcPolygonFromArcs) that is instantiated with pre-defined arcs.See also
Methods
Attributes
animation_managerThis mob's scene-owned animation manager.
basisThe Mob's orientation and scale, as a flattened 3x3 matrix of shape
(*, 9).casts_shadowsWhether this Mob's geometry blocks light on its way from a light source to another surface -- whether it casts a shadow.
childrenThe Mobs attached below this one, in attachment order.
closed_shellWhether this Mob's triangles form a CLOSED shell -- every camera ray that enters the geometry crosses a second time on its way out.
draws_descendantsWhether
get_render_primitivesreturns geometry belonging to this Mob's DESCENDANTS as well as its own.forwardGet the direction the Mob is facing.
lifespanThis mob's [spawn, despawn) interval on its Scene timeline (a
Lifespan).locationThe Mob's position in world space, shape
(*, 3).normalized_basisThe Mob's orientation with scale divided out, shape
(*, 9).parentsThe Mobs this one is attached to, in attachment order.
receives_shadowsWhether this Mob's surfaces are darkened by shadows cast onto them.
rightGet the Mob's own rightward direction.
scale_coefficientThe Mob's scale along its own right, up and forward axes, shape
(*, 3).stroke_colorThe color of the circuit's border stroke.
two_sidedWhether this Mob's geometry should be lit from whichever side the ray arrives on.
upGet the Mob's own upward direction.
xThe Mob's x coordinate in world units, shape
(*, 1).xyThe Mob's x and y coordinates in world units, shape
(*, 2).yThe Mob's y coordinate in world units, shape
(*, 1).zThe Mob's z coordinate in world units, shape
(*, 1).z_indexWhich of two exactly coplanar circuits draws in front (higher wins).