coordinate_systems

class janim.items.coordinate.coordinate_systems.CoordinateSystem(*args, num_sampled_graph_points_per_tick, **kwargs)

基类:object

static create_axis(range: RangeSpecifier, axis_config: dict, length: float | None) NumberLine
abstractmethod get_axes() list[NumberLine]
get_origin() ndarray
coords_to_point(*coords: float) ndarray

传入坐标得到对应的位置

例如 c2p(1, 3) 得到 (1,3) 的位置

coords_array_to_points(coords_array: VectArray) ndarray

传入一组坐标得到对应的一组位置

例如 c2p([[1, 3], [2, 1], [-1, -1]]) 得到对应的三个位置

c2p(*coords: float) ndarray

coords_to_point() 的缩写

point_to_coords3d(point: Vect | Iterable[Vect]) ndarray

传入位置得到对应的坐标(但是会扩张为三维坐标;对于二维坐标系来说,第三个分量则表示距离二维平面的距离)

也可以传入一组位置得到一组对应的坐标

p2c3d(point: Vect | Iterable[Vect]) ndarray

point_to_coords3d() 的简写

point_to_coords(point: Vect | Iterable[Vect]) ndarray

传入位置得到对应坐标

也可以传入一组位置得到一组对应的坐标

p2c(point: Vect | Iterable[Vect]) ndarray

point_to_coords() 的缩写

number_to_point(number: complex | float) ndarray

传入复数得到对应位置

n2p(number: complex | float) ndarray

number_to_point() 的缩写

point_to_number(point: Vect) complex

传入位置得到对应复数

p2n(point: Vect) complex

point_to_number() 的缩写

class janim.items.coordinate.coordinate_systems.Axes(x_range: RangeSpecifier = (-8.0, 8.0, 1.0), y_range: RangeSpecifier = (-4.0, 4.0, 1.0), *, num_sampled_graph_points_per_tick: int = 5, axis_config: dict = {}, x_axis_config: dict = {}, y_axis_config: dict = {}, height: float | None = None, width: float | None = None, unit_size: float = 1.0, **kwargs)

基类:CoordinateSystem, Group

axis_config_d: dict = {'numbers_to_exclude': [0]}
x_axis_config_d: dict = {}
y_axis_config_d: dict = {'line_to_number_direction': array([0., 1., 0.])}
get_axes() list[NumberLine]
get_graph(function: Callable[[float], float], x_range: Sequence[float] | None = None, bind: bool = True, **kwargs) ParametricCurve
get_parametric_curve(function: Callable[[float], Vect], bind: bool = True, **kwargs)
cmpt_init_datas = {'depth': _ItemMeta._CmptInitData(info=<janim.components.component.CmptInfo object>, decl_cls=<class 'janim.items.item.Item'>), 'points': _ItemMeta._CmptInitData(info=<janim.components.component.CmptInfo object>, decl_cls=<class 'janim.items.points.Points'>)}
class janim.items.coordinate.coordinate_systems.CmptVPoints_NumberPlaneImpl(*args, **kwargs)

基类:Cmpt_VPoints

prepare_for_nonlinear_transform(num_inserted_curves: int = 50, *, root_only=False) Self
class janim.items.coordinate.coordinate_systems.NumberPlane(x_range: RangeSpecifier = (-8.0, 8.0, 1.0), y_range: RangeSpecifier = (-4.0, 4.0, 1.0), background_line_style: dict = {}, faded_line_style: dict = {}, faded_line_ratio: int = 4, **kwargs)

基类:Axes

points
background_line_style_d: dict = {'stroke_color': '#29ABCA', 'stroke_radius': 0.01}
axis_config_d: dict = {'include_ticks': False, 'include_tip': False, 'line_to_number_buff': 0.1, 'line_to_number_direction': array([-1., -1.,  0.]), 'stroke_color': '#FFFFFF', 'stroke_radius': 0.01}
y_axis_config_d: dict = {'line_to_number_direction': array([-1., -1.,  0.])}
get_lines_parallel_to_axis(axis1: NumberLine, axis2: NumberLine) tuple[Group, Group]
cmpt_init_datas = {'depth': _ItemMeta._CmptInitData(info=<janim.components.component.CmptInfo object>, decl_cls=<class 'janim.items.item.Item'>), 'points': _ItemMeta._CmptInitData(info=<janim.components.component.CmptInfo object>, decl_cls=<class 'janim.items.points.Points'>)}