WindMessAnlage/Display/.venv/lib/python3.7/site-packages/pygame/mask.pyi

74 lines
2.8 KiB
Python

from typing import Optional, Union, Tuple, List, TypeVar, Sequence, NewType
from pygame.math import Vector2
from pygame.surface import Surface
from pygame.rect import Rect
from pygame.color import Color
_Coordinate = Union[Tuple[float, float], List[float], Vector2]
_ColorValue = Union[
Color, Tuple[int, int, int], List[int], int, Tuple[int, int, int, int]
]
_RectValue = Union[
Rect,
Union[Tuple[int, int, int, int], List[int]],
Union[Tuple[_Coordinate, _Coordinate], List[_Coordinate]],
]
_Offset = TypeVar("_Offset", Tuple[int, int], Sequence[int])
def from_surface(surface: Surface, threshold: Optional[int] = 127) -> Mask: ...
def from_threshold(
surface: Surface,
color: _ColorValue,
threshold: Optional[_ColorValue] = (0, 0, 0, 255),
other_surface: Optional[Surface] = None,
palette_colors: Optional[int] = 1,
) -> Mask: ...
class Mask:
def __init__(
self, size: Union[List[int], Tuple[int, int]], fiil: Optional[bool] = False
) -> None: ...
def copy(self) -> Mask: ...
def get_size(self) -> Tuple[int, int]: ...
def get_rect(self, **kwargs) -> Rect: ... # Dict type needs to be completed
def get_at(self, pos: Union[List[int], Tuple[int, int]]) -> int: ...
def set_at(
self, pos: Union[List[int], Tuple[int, int]], value: Optional[int] = 1
) -> None: ...
def overlap(
self, othermask: Mask, offset: _Offset
) -> Union[Tuple[int, int], None]: ...
def overlap_area(self, othermask: Mask, offset: _Offset) -> int: ...
def overlap_mask(self, othermask: Mask, offset: _Offset) -> Mask: ...
def fill(self) -> None: ...
def clear(self) -> None: ...
def invert(self) -> None: ...
def scale(self, size: Union[List[int], Tuple[int, int]]) -> Mask: ...
def draw(self, othermask: Mask, offset: _Offset) -> None: ...
def erase(self, othermask: Mask, offset: _Offset) -> None: ...
def count(self) -> int: ...
def centroid(self) -> Tuple[int, int]: ...
def angle(self) -> float: ...
def outline(self, every: Optional[int] = 1) -> List[Tuple[int, int]]: ...
def convolve(
self,
othermask: Mask,
outputmask: Optional[Mask] = None,
offset: Optional[_Offset] = (0, 0),
) -> Mask: ...
def connected_component(
self, pos: Union[List[int], Tuple[int, int]] = (-1, -1)
) -> Mask: ...
def connected_components(self, min: Optional[int] = 0) -> List[Mask]: ...
def get_bounding_rects(self) -> Rect: ...
def to_surface(
self,
surface: Optional[Surface] = None,
setsurface: Optional[Surface] = None,
unsetsurface: Optional[Surface] = None,
setcolor: Optional[_ColorValue] = (255, 255, 255, 255),
unsetcolor: Optional[_ColorValue] = (0, 0, 0, 255),
dest: Optional[Union[_RectValue, _Coordinate]] = (0, 0),
) -> Surface: ...