Repository: ManimCommunity/manim
File: manim/mobject/geometry.py (Python)

Code before:
            self.add(right_dot)


class RightAngle(VMobject):
    """Am elbow-type like object representing a right angle of two intersecting lines.

    Parameters
    ----------
    line1 : :class:`Line`
        The first of the intersecting lines.
    line2 : :class:`Line`
        The second of the intersecting lines.
    length : :class:`float`
        The length of the arms.
    quadrant : Sequence[:class:`int`]
        A sequence of two :class:`int` numbers determining which of the 4 quadrants should be used.
        Possibilities: (1,1), (-1,1), (1,-1), (-1,-1).
    kwargs
        Further keyword arguments that are passed to the constructor of :class:`~.VMobject`.

    Examples
    --------

    .. manim:: RightAngleExample

        class RightAngleExample(Scene):
            def construct(self):
                line1 = Line( LEFT, RIGHT )
                line2 = Line( DOWN, UP )
                rightangles = [
                    RightAngle(line1, line2),
                    RightAngle(line1, line2, length=0.4, quadrant=(1,-1)),
                    RightAngle(line1, line2, length=0.5, quadrant=(-1,1), stroke_width=8),
                    RightAngle(line1, line2, length=0.7, quadrant=(-1,-1), color=RED),
                ]
                line_list = VGroup( *[VGroup() for k in range(4)] )
                for k in range(4):
                    linea = line1.copy()
                    lineb = line2.copy()
                    line_list[k].add( linea )
                    line_list[k].add( lineb )
                    line_list[k].add( rightangles[k] )
                line_list.arrange_in_grid(buff=1.5)
                self.play(
                    *[ShowCreation(
                        line_list[k][:2]
                    ) for k in range(4)]
                )
                self.wait(0.5)
                self.play(
                    LaggedStart(

Review comment (suggestion):
```suggestion
    ..manim:: RightAngleExample
        :save_last_frame:

        class RightAngleExample(Scene):
```

Code after:
                if dot_radius is None:
                    dot_radius = radius / 10
                else:
                    self.dot_radius = dot_radius
                right_dot = Dot(ORIGIN, radius=dot_radius, color=dot_color)
                dot_anchor = (
                    inter
                    + (self.get_center() - inter)
                    / np.linalg.norm(self.get_center() - inter)
                    * radius
                    * dot_distance
                )
                right_dot.move_to(dot_anchor)
                self.add(right_dot)

    def generate_points(self):
        if self.elbow:
            Elbow.generate_points(self)
        else:
            Arc.generate_points(self)


class RightAngle(Angle):
    """An elbow-type mobject representing a right angle between two lines.

    Parameters
    ----------
    line1 : :class:`Line`
        The first line.
    line2 : :class:`Line`
        The second line.
    length : :class:`float`
        The length of the arms.
    **kwargs
        Further keyword arguments that are passed to the constructor of :class:`Angle`.

    Examples
    --------

    .. manim:: RightAngleExample
        :save_last_frame:

        class RightAngleExample(Scene):
            def construct(self):
                line1 = Line( LEFT, RIGHT )
                line2 = Line( DOWN, UP )
                rightangles = [
                    RightAngle(line1, line2),
                    RightAngle(line1, line2, length=0.4, quadrant=(1,-1)),
                    RightAngle(line1, line2, length=0.5, quadrant=(-1,1), stroke_width=8),
                    RightAngle(line1, line2, length=0.7, quadrant=(-1,-1), color=RED),