[ManimGL 源码解读] Tex 如何渲染公式
这个专栏不是 manim 入门,需要有一些 Python 和 ManimGL 基础。manim 入门建议看:https://docs.manim.org.cn。
Tex 能根据传入的 tex_strings 渲染公式,根据 tex_to_color_map 设置颜色,根据 tex_strings、isolate 和 tex_to_color_map 拆出 submobjects(比如用于 TransformMatchingTex 不香吗)。TransformMatchingShapes
digest_config 处理参数,接着调用 break_up_tex_strings 将 tex_strings 进一步按照 self.isolate 和 self.tex_to_color_map 拆分。
self.tex_strings 被拼在一起(中间用 self.arg_separator 连接,通常是 ""),存在 full_string 里。调用 SingleStringTex 生成 SVG。调用 self.break_up_by_substrings。这个函数大概是,根据 self.tex_strings 再分别调用 SingleStringTex 渲染 SVG 得到 sub_tex_mob,把它设置为自己的 submobjects。
调用 self.set_color_by_tex_to_color_map 上色。
set_color_by_tex 能对单个 tex 字符串上色。
get_parts_by_tex 查找 tex 对应的部分,包装成 VGroup 返回。
若 self.organize_left_to_right,调用 self.organize_submobjects_left_to_right 把 self.submobjects 按横坐标排序(只是下标改变,位置不变)。
然后,没了。

