Scene
isa_scene provides two animation scenes, SingleIsaScene and MultiIsaScene, for ISA
animations. These two scenes hide the auto-scheduling and auto-placement behind APIs.
The inherent relationship between components is shown in below figure:
flowchart TB
A1[IsaAnimationFlow]
A2[IsaElemRefCount]
A3[IsaPlacementMap]
A4[IsaColorMap]
B[IsaDataFlow]
C1[SingleIsaScene]
C2[MultiIsaScene]
D[ZoomedScene]
subgraph IsaManim
A1-->B
A2-->B
A3-->B
A4-->B
B-->C1
B-->C2
end
subgraph Manim
D-->C1
D-->C2
end
The animation class is inherited from SingleIsaScene and MultiIsaScene. Meanwhile,
SingleIsaScene and MultiIsaScene are inherited from IsaDataFlow. Hence, the
animation class can directly apply these APIs to create animation.
The pages below introduce the implementation details for the auto-placement and auto-schedule of animations.
- The Color map (
IsaColorMap) assigns color to element units automatically. - The Placement (
IsaPlacementMap) automatically places the register, function, and memory units on the scene.0 - The Animation flow (
IsaAnimationFlow) and the Reference counter (IsaElemRefCount) introduce how to schedule the animation flow.
IsaDataFlow integrates IsaAnimationFlow, IsaElemRefCount, IsaPlacementMap, and
IsaColorMap. Meanwhile, IsaDataFlow provides the animation API as the base of
animation scenes. The list of APIs is listed in
Animation APIs.