PathResolver

Resolves path functions for Point2D animations using a 2-level priority system.

Priority (highest to lowest): 1. Segment-level path (from KeyState.transition.path dict) 2. Global default (linear) Path functions can apply to any Point2D field, specified by field name.

Methods

get_path

get_path(
    segment_path: Optional[Callable[[ForwardRef('Point2D'), ForwardRef('Point2D'), float], ForwardRef('Point2D')]] = None
) -> Callable[[ForwardRef('Point2D'), ForwardRef('Point2D'), float], ForwardRef('Point2D')]

Get the path function following the 2-level priority.

Parameters

segment_path
Optional segment-level path function.

get_path_for_field

get_path_for_field(
    field_name: str,
    segment_interpolation_config: dict[str, Callable[[ForwardRef('Point2D'), ForwardRef('Point2D'), float], ForwardRef('Point2D')]] | None = None
) -> Callable[[ForwardRef('Point2D'), ForwardRef('Point2D'), float], ForwardRef('Point2D')]

Get the path function for a specific field following the 2-level priority.

Parameters

field_name
Name of the Point2D field (e.g., "pos", "anchor")
segment_interpolation_config
Optional segment-level path config dict {field_name: path_function}.