mark

class janim.components.mark.Cmpt_Mark(*args, **kwargs)

Bases: Component, Generic

names: list[str] = []
copy() Self
become(other: Cmpt_Mark) Self
not_changed(other: Cmpt_Mark) bool
classmethod align_for_interpolate(cmpt1: Cmpt_Mark, cmpt2: Cmpt_Mark) AlignedData[Self]
interpolate(cmpt1: ~typing.Self, cmpt2: ~typing.Self, alpha: float, *, path_func: PathFunc = <function straight_path>) None
get_points() ndarray

Directly get all recorded coordinate point data

get(index: int | str = 0) ndarray

Get the coordinate point recorded at the specified index (default is 0)

set_points(points: VectArray) Self

Directly set all recorded coordinate point data, which will not affect points

set(point: Vect, index: int | str = 0, *, root_only: bool = False) Self

Set the coordinate point recorded at the specified index (default is 0)

Changes will be synchronized to points

format_index(index: int | str) int
apply_points_fn(func: PointsFn, about_point: Vect | None = None) Self

Pass all points as a single parameter to func, and use the result returned by func as the new point coordinate data

Used to synchronize transformations with points, synchronization is already bound in MarkedItem, no need to manually set and call