仅在 manim 线/箭头的一端添加 buff

Add buff only in one end of a manim line / arrow

我正在用带尖端或箭头的线连接两个矩形(哪一个并不重要)。我只想要箭头末端的 buff,而不是开始和结束。

from manim import *

class MyScene(Scene):
    def construct(self):
        rect1 = Rectangle(color=WHITE, height=0.75, width=1.5).to_edge(LEFT)
        rect2 = Rectangle(color=WHITE, height=0.75, width=1.5).next_to(rect1, buff=1.5)

        arrow = Line(start=rect1.get_right(), end=rect2.get_left(), buff=0.1).add_tip()
        # Or
        # arrow = Arrow(start=rect1.get_right(), end=rect2.get_left(), buff=0.1)

        self.play(Create(rect1))
        self.play(Create(rect2))
        self.play(Create(arrow))
        self.wait(2)

如图所示,左边矩形和箭头之间,右边矩形和箭头之间有一个buff。我只想要第二个

想到的一个解决方案是我设置 buff=0 并更改箭头的结束位置以手动创建所需的 buff,但我希望找到更好更清洁的解决方案。

可惜buff是一个对称量。您必须手动修改终点才能获得所需的效果。