PolarPlane

Qualified name: manim.mobject.coordinate\_systems.PolarPlane

class PolarPlane(radius_max=4.0, size=None, radius_step=1, azimuth_step=None, azimuth_units='PI radians', azimuth_compact_fraction=True, azimuth_offset=0, azimuth_direction='CCW', azimuth_label_buff=0.1, azimuth_label_font_size=24, radius_config=None, background_line_style=None, faded_line_style=None, faded_line_ratio=1, make_smooth_after_applying_functions=True, **kwargs)[source]

Bases: manim.mobject.coordinate_systems.Axes

Creates a polar plane with background lines.

Parameters
  • azimuth_step (Optional[float]) –

    The number of divisions in the azimuth (also known as the angular coordinate or polar angle). If None is specified then it will use the default specified by azimuth_units:

    • "PI radians" or "TAU radians": 20

    • "degrees": 36

    • "gradians": 40

    • None: 1

    A non-integer value will result in a partial division at the end of the circle.

  • size (Optional[float]) – The diameter of the plane.

  • radius_step (float) – The distance between faded radius lines.

  • radius_max (float) – The maximum value of the radius.

  • azimuth_units (Optional[str]) –

    Specifies a default labelling system for the azimuth. Choices are:

    • "PI radians": Fractional labels in the interval \(\left[0, 2\pi\right]\) with \(\pi\) as a constant.

    • "TAU radians": Fractional labels in the interval \(\left[0, \tau\right]\) (where \(\tau = 2\pi\)) with \(\tau\) as a constant.

    • "degrees": Decimal labels in the interval \(\left[0, 360\right]\) with a degree (\(^{\circ}\)) symbol.

    • "gradians": Decimal labels in the interval \(\left[0, 400\right]\) with a superscript “g” (\(^{g}\)).

    • None: Decimal labels in the interval \(\left[0, 1\right]\).

  • azimuth_compact_fraction (bool) – If the azimuth_units choice has fractional labels, choose whether to combine the constant in a compact form \(\tfrac{xu}{y}\) as opposed to \(\tfrac{x}{y}u\), where \(u\) is the constant.

  • azimuth_offset (float) – The angle offset of the azimuth, expressed in radians.

  • azimuth_direction (str) –

    The direction of the azimuth.

    • "CW": Clockwise.

    • "CCW": Anti-clockwise.

  • azimuth_label_buff (float) – The buffer for the azimuth labels.

  • azimuth_label_font_size (float) – The font size of the azimuth labels.

  • radius_config (Optional[dict]) – The axis config for the radius.

  • background_line_style (Optional[dict]) –

  • faded_line_style (Optional[dict]) –

  • faded_line_ratio (int) –

  • make_smooth_after_applying_functions (bool) –

Examples

Example: PolarPlaneExample

../_images/PolarPlaneExample-1.png
from manim import *

class PolarPlaneExample(Scene):
    def construct(self):
        polarplane_pi = PolarPlane(
            azimuth_units="PI radians",
            size=6,
            azimuth_label_font_size=33.6,
            radius_config={"font_size": 33.6},
        ).add_coordinates()
        self.add(polarplane_pi)

References: PolarPlane

Methods

add_coordinates

Adds the coordinates.

get_axes

Gets the axes.

get_coordinate_labels

Gets labels for the coordinates :param r_values: Iterable of values along the radius, by default None.

get_radian_label

get_vector

point_to_polar

Gets polar coordinates from a point.

polar_to_point

Gets a point from polar coordinates.

pr2pt

Abbreviation for polar_to_point()

prepare_for_nonlinear_transform

pt2pr

Abbreviation for point_to_polar()

Attributes

animate

Used to animate the application of a method.

animation_overrides

depth

The depth of the mobject.

height

The height of the mobject.

width

The width of the mobject.

add_coordinates(r_values=None, a_values=None)[source]

Adds the coordinates. :param r_values: Iterable of values along the radius, by default None. :param a_values: Iterable of values along the azimuth, by default None.

Parameters
  • r_values (Optional[Iterable[float]]) –

  • a_values (Optional[Iterable[float]]) –

get_axes()[source]

Gets the axes. :returns: A pair of axes. :rtype: VGroup

Return type

manim.mobject.types.vectorized_mobject.VGroup

get_coordinate_labels(r_values=None, a_values=None, **kwargs)[source]

Gets labels for the coordinates :param r_values: Iterable of values along the radius, by default None. :param a_values: Iterable of values along the azimuth, by default None.

Returns

Labels for the radius and azimuth values.

Return type

VDict

Parameters
  • r_values (Optional[Iterable[float]]) –

  • a_values (Optional[Iterable[float]]) –

point_to_polar(point)[source]

Gets polar coordinates from a point.

Parameters

point (numpy.ndarray) – The point.

Returns

The coordinate radius (\(r\)) and the coordinate azimuth (\(\theta\)).

Return type

Tuple[float, float]

polar_to_point(radius, azimuth)[source]

Gets a point from polar coordinates.

Parameters
  • radius (float) – The coordinate radius (\(r\)).

  • azimuth (float) – The coordinate azimuth (\(\theta\)).

Returns

The point.

Return type

numpy.ndarray

Examples

Example: PolarToPointExample

../_images/PolarToPointExample-1.png
from manim import *

class PolarToPointExample(Scene):
    def construct(self):
        polarplane_pi = PolarPlane(azimuth_units="PI radians", size=6)
        polartopoint_vector = Vector(polarplane_pi.polar_to_point(3, PI/4))
        self.add(polarplane_pi)
        self.add(polartopoint_vector)

References: PolarPlane Vector

pr2pt(radius, azimuth)[source]

Abbreviation for polar_to_point()

Parameters
  • radius (float) –

  • azimuth (float) –

Return type

numpy.ndarray

pt2pr(point)[source]

Abbreviation for point_to_polar()

Parameters

point (numpy.ndarray) –

Return type

Tuple[float, float]