SVGMobject

限定名称: manim.mobject.svg.svg\_mobject.SVGMobject

class SVGMobject(file_name=None, should_center=True, height=2, width=None, color=None, opacity=None, fill_color=None, fill_opacity=None, stroke_color=None, stroke_opacity=None, stroke_width=None, svg_default=None, path_string_config=None, use_svg_cache=True, **kwargs)[source]

基础类: VMobject

从导入SVG文件创建的向量化mobject。

Parameters:
  • file_name (str | os.PathLike | None) – SVG文件的路径。

  • should_center (bool) – 是否在导入后将mobject居中。

  • height (float | None) – mobject的目标高度,默认设置为2个Manim单位。 如果高度和宽度都设置为None,则mobject在导入时不会被缩放。

  • width (float | None) – mobject的目标宽度,默认设置为None。如果高度和宽度都设置为None,则mobject在导入时不会被缩放。

  • color (str | None) – mobject的颜色(包括填充颜色和描边颜色)。如果为None(默认值),则使用SVG文件中设置的颜色。

  • opacity (float | None) – mobject的不透明度(包括填充和描边的不透明度)。 如果为None(默认值),则使用SVG文件中设置的不透明度。

  • fill_color (str | None) – mobject的填充颜色。如果为None(默认值),则使用SVG文件中设置的填充颜色。

  • fill_opacity (float | None) – mobject的填充不透明度。如果为None(默认值),则使用SVG文件中设置的填充不透明度。

  • stroke_color (str | None) – mobject的描边颜色。如果为None(默认值),则使用SVG文件中设置的描边颜色。

  • stroke_opacity (float | None) – mobject的描边不透明度。如果为None(默认值),则使用SVG文件中设置的描边不透明度。

  • stroke_width (float | None) – mobject的描边宽度。如果为None(默认值),则使用SVG文件中设置的描边宽度值。

  • svg_default (dict | None) – 一个字典,用于定义SVG文件中未指定属性的回退值。如果为None(默认值),则coloropacityfill_colorfill_opacitystroke_colorstroke_opacity设置为None,并且stroke_width设置为0。

  • path_string_config (dict | None) – 一个包含关键字参数的字典,传递给 VMobjectFromSVGPath 用于导入路径元素。 如果 None(默认值),则不传递任何额外参数。

  • use_svg_cache (bool) – 如果为True(默认值),svg输入(例如file_name, settings)将用作键,并且创建的mobject的副本将使用该键保存,以便在以后需要处理相同的输入时快速检索。对于仅使用一次的大型SVG,可以省略此选项以提高性能。

  • kwargs – 传递给父类的其他参数。

方法

apply_style_to_mobject

将SVG样式信息应用于转换后的mobject。

ellipse_to_mobject

将椭圆或圆形元素转换为矢量化的mobject。

generate_config_style_dict

生成一个包含默认样式信息的字典。

generate_mobject

解析SVG并将其元素转换为子对象。

get_file_path

根据指定的文件名搜索现有文件。

get_mobjects_from

将SVG的元素转换为mobjects的列表。

handle_transform

将SVG变换应用于转换后的mobject。

init_svg_mobject

检查SVG是否已经导入,如果没有则生成它。

line_to_mobject

将线条元素转换为向量化的mobject。

modify_xml_tree

修改SVG元素树以包含默认样式信息。

move_into_position

缩放并移动生成的mobject到指定位置。

path_to_mobject

将路径元素转换为向量化的mobject。

polygon_to_mobject

将多边形元素转换为矢量化的mobject。

polyline_to_mobject

将折线元素转换为矢量化的mobject。

rect_to_mobject

将矩形元素转换为矢量化的mobject。

text_to_mobject

将文本元素转换为向量化的mobject。

属性

animate

用于动画化self的任何方法的应用。

animation_overrides

color

depth

mobject的深度。

fill_color

如果有多种颜色(用于渐变),则返回第一个颜色

hash_seed

表示生成的mobject点结果的唯一哈希值。

height

mobject的高度。

n_points_per_curve

sheen_factor

stroke_color

width

mobject的宽度。

_original__init__(file_name=None, should_center=True, height=2, width=None, color=None, opacity=None, fill_color=None, fill_opacity=None, stroke_color=None, stroke_opacity=None, stroke_width=None, svg_default=None, path_string_config=None, use_svg_cache=True, **kwargs)

初始化自身。有关准确的签名,请参阅 help(type(self))。

Parameters:
  • file_name (str | PathLike | None)

  • should_center (bool)

  • height (float | None)

  • width (float | None)

  • 颜色 (字符串 | )

  • opacity (float | None)

  • fill_color (str | None)

  • fill_opacity (float | None)

  • stroke_color (str | None)

  • stroke_opacity (float | None)

  • stroke_width (float | None)

  • svg_default (字典 | )

  • path_string_config (dict | None)

  • use_svg_cache (bool)

static apply_style_to_mobject(mob, shape)[来源]

将SVG样式信息应用于转换后的mobject。

Parameters:
  • mob (VMobject) – 转换后的mobject。

  • shape (GraphicObject) – 解析后的SVG元素。

Return type:

VMobject

static ellipse_to_mobject(ellipse)[来源]

将椭圆或圆形元素转换为矢量化的mobject。

Parameters:

ellipse (Ellipse | Circle) – 解析后的SVG椭圆或圆形。

Return type:

圆形

generate_config_style_dict()[source]

生成一个包含默认样式信息的字典。

Return type:

字典[字符串, 字符串]

generate_mobject()[来源]

解析SVG并将其元素转换为子对象。

Return type:

get_file_path()[source]

根据指定的文件名搜索现有文件。

Return type:

路径

get_mobjects_from(svg)[来源]

将SVG的元素转换为mobjects的列表。

Parameters:

svg (SVG) – 解析后的SVG文件。

Return type:

列表[VMobject]

static handle_transform(mob, matrix)[source]

将SVG变换应用于转换后的mobject。

Parameters:
  • mob (VMobject) – 转换后的mobject。

  • matrix (Matrix) – 从SVG变换中确定的变换矩阵。

Return type:

VMobject

property hash_seed: tuple

表示生成的mobject点结果的唯一哈希值。

用作SVG_HASH_TO_MOB_MAP缓存字典中的键。

init_svg_mobject(use_svg_cache)[source]

检查SVG是否已经导入,如果没有则生成它。

Parameters:

use_svg_cache (bool)

Return type:

static line_to_mobject(line)[source]

将线条元素转换为向量化的mobject。

Parameters:

line (Line) – 解析后的SVG线条。

Return type:

线

modify_xml_tree(element_tree)[source]

修改SVG元素树以包含默认样式信息。

Parameters:

element_tree (ElementTree) – 从SVG文件解析出的元素树。

Return type:

ElementTree

move_into_position()[来源]

缩放并移动生成的mobject到指定位置。

Return type:

path_to_mobject(path)[source]

将路径元素转换为向量化的mobject。

Parameters:

path (Path) – 解析后的SVG路径。

Return type:

VMobjectFromSVGPath

static polygon_to_mobject(polygon)[source]

将多边形元素转换为矢量化的mobject。

Parameters:

多边形 (多边形) – 解析后的SVG多边形。

Return type:

多边形

polyline_to_mobject(polyline)[来源]

将折线元素转换为矢量化的mobject。

Parameters:

折线 (折线) – 解析后的SVG折线。

Return type:

VMobject

static rect_to_mobject(rect)[来源]

将矩形元素转换为矢量化的mobject。

Parameters:

rect (Rect) – 解析后的SVG矩形。

Return type:

矩形

static text_to_mobject(text)[source]

将文本元素转换为向量化的mobject。

警告

尚未实现。

Parameters:

文本 (文本) – 解析后的SVG文本。