欢迎光临散文网 会员登陆 & 注册

[ManimGL 源码解读] Tex 如何渲染公式

2022-07-17 12:25 作者:EKVTGwNJiElK  | 我要投稿

这个专栏不是 manim 入门,需要有一些 Python 和 ManimGL 基础。manim 入门建议看:https://docs.manim.org.cn。

Tex 能根据传入的 tex_strings 渲染公式,根据 tex_to_color_map 设置颜色,根据 tex_stringsisolate 和 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 按横坐标排序(只是下标改变,位置不变)。

然后,没了。

[ManimGL 源码解读] Tex 如何渲染公式的评论 (共 条)

分享到微博请遵守国家法律