TransitionConfig

Transition configuration for segment between keystates.

Attributes: easing_dict: Per-field easing functions {field_name: easing_func} morphing_config: Morphing configuration for vertex states interpolation_dict: Per-field interpolation functions {field_name: interpolation_func} - Point2D fields: (p1, p2, t) -> Point2D (spatial curves) - Rotation field: (r1, r2, t) -> float (custom rotation) linear_angle_interpolation: If True, rotation interpolates linearly without angle wrapping (enables multi-revolution rotation like 0° → 7200°) state_interpolation: Optional callable (start_state, end_state, t) -> State that bypasses all per-field interpolation. t is raw segment t (0→1).

Constructor

TransitionConfig(
    easing_dict: dict[str, Callable[[float], ~T]] | None = None,
    morphing_config: MorphingConfig | dict[str, Any] | None = None,
    interpolation_dict: dict[str, Union[Callable[[ForwardRef('Point2D'), ForwardRef('Point2D'), float], ForwardRef('Point2D')], Callable[[float, float, float], float]]] | None = None,
    linear_angle_interpolation: bool = False,
    state_interpolation: Optional[Callable] = None
) -> None