123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- from .bezier import BezierSegment
- from .transforms import Affine2D, Transform, Bbox
- from collections.abc import Generator, Iterable, Sequence
- import numpy as np
- from numpy.typing import ArrayLike
- from typing import Any, overload
- class Path:
- code_type: type[np.uint8]
- STOP: np.uint8
- MOVETO: np.uint8
- LINETO: np.uint8
- CURVE3: np.uint8
- CURVE4: np.uint8
- CLOSEPOLY: np.uint8
- NUM_VERTICES_FOR_CODE: dict[np.uint8, int]
- def __init__(
- self,
- vertices: ArrayLike,
- codes: ArrayLike | None = ...,
- _interpolation_steps: int = ...,
- closed: bool = ...,
- readonly: bool = ...,
- ) -> None: ...
- @property
- def vertices(self) -> ArrayLike: ...
- @vertices.setter
- def vertices(self, vertices: ArrayLike) -> None: ...
- @property
- def codes(self) -> ArrayLike | None: ...
- @codes.setter
- def codes(self, codes: ArrayLike) -> None: ...
- @property
- def simplify_threshold(self) -> float: ...
- @simplify_threshold.setter
- def simplify_threshold(self, threshold: float) -> None: ...
- @property
- def should_simplify(self) -> bool: ...
- @should_simplify.setter
- def should_simplify(self, should_simplify: bool) -> None: ...
- @property
- def readonly(self) -> bool: ...
- def copy(self) -> Path: ...
- def __deepcopy__(self, memo: dict[int, Any] | None = ...) -> Path: ...
- deepcopy = __deepcopy__
- @classmethod
- def make_compound_path_from_polys(cls, XY: ArrayLike) -> Path: ...
- @classmethod
- def make_compound_path(cls, *args: Path) -> Path: ...
- def __len__(self) -> int: ...
- def iter_segments(
- self,
- transform: Transform | None = ...,
- remove_nans: bool = ...,
- clip: tuple[float, float, float, float] | None = ...,
- snap: bool | None = ...,
- stroke_width: float = ...,
- simplify: bool | None = ...,
- curves: bool = ...,
- sketch: tuple[float, float, float] | None = ...,
- ) -> Generator[tuple[np.ndarray, np.uint8], None, None]: ...
- def iter_bezier(self, **kwargs) -> Generator[BezierSegment, None, None]: ...
- def cleaned(
- self,
- transform: Transform | None = ...,
- remove_nans: bool = ...,
- clip: tuple[float, float, float, float] | None = ...,
- *,
- simplify: bool | None = ...,
- curves: bool = ...,
- stroke_width: float = ...,
- snap: bool | None = ...,
- sketch: tuple[float, float, float] | None = ...
- ) -> Path: ...
- def transformed(self, transform: Transform) -> Path: ...
- def contains_point(
- self,
- point: tuple[float, float],
- transform: Transform | None = ...,
- radius: float = ...,
- ) -> bool: ...
- def contains_points(
- self, points: ArrayLike, transform: Transform | None = ..., radius: float = ...
- ) -> np.ndarray: ...
- def contains_path(self, path: Path, transform: Transform | None = ...) -> bool: ...
- def get_extents(self, transform: Transform | None = ..., **kwargs) -> Bbox: ...
- def intersects_path(self, other: Path, filled: bool = ...) -> bool: ...
- def intersects_bbox(self, bbox: Bbox, filled: bool = ...) -> bool: ...
- def interpolated(self, steps: int) -> Path: ...
- def to_polygons(
- self,
- transform: Transform | None = ...,
- width: float = ...,
- height: float = ...,
- closed_only: bool = ...,
- ) -> list[ArrayLike]: ...
- @classmethod
- def unit_rectangle(cls) -> Path: ...
- @classmethod
- def unit_regular_polygon(cls, numVertices: int) -> Path: ...
- @classmethod
- def unit_regular_star(cls, numVertices: int, innerCircle: float = ...) -> Path: ...
- @classmethod
- def unit_regular_asterisk(cls, numVertices: int) -> Path: ...
- @classmethod
- def unit_circle(cls) -> Path: ...
- @classmethod
- def circle(
- cls,
- center: tuple[float, float] = ...,
- radius: float = ...,
- readonly: bool = ...,
- ) -> Path: ...
- @classmethod
- def unit_circle_righthalf(cls) -> Path: ...
- @classmethod
- def arc(
- cls, theta1: float, theta2: float, n: int | None = ..., is_wedge: bool = ...
- ) -> Path: ...
- @classmethod
- def wedge(cls, theta1: float, theta2: float, n: int | None = ...) -> Path: ...
- @overload
- @staticmethod
- def hatch(hatchpattern: str, density: float = ...) -> Path: ...
- @overload
- @staticmethod
- def hatch(hatchpattern: None, density: float = ...) -> None: ...
- def clip_to_bbox(self, bbox: Bbox, inside: bool = ...) -> Path: ...
- def get_path_collection_extents(
- master_transform: Transform,
- paths: Sequence[Path],
- transforms: Iterable[Affine2D],
- offsets: ArrayLike,
- offset_transform: Affine2D,
- ) -> Bbox: ...
|