Changed SupportsGetMesh protocol to be public

This commit is contained in:
Andrew Murray 2024-02-29 20:16:41 +11:00
parent 18af646365
commit dcbe402f77
2 changed files with 12 additions and 2 deletions

View File

@ -14,6 +14,8 @@ only work on L and RGB images.
.. autofunction:: colorize
.. autofunction:: crop
.. autofunction:: scale
.. autoclass:: SupportsGetMesh
:show-inheritance:
.. autofunction:: deform
.. autofunction:: equalize
.. autofunction:: expand

View File

@ -411,7 +411,15 @@ def scale(
return image.resize(size, resample)
class _SupportsGetMesh(Protocol):
class SupportsGetMesh(Protocol):
"""
An object that supports the ``getmesh`` method, taking an image as an
argument, and returning a list of tuples. Each tuple contains two tuples,
the source box as a tuple of 4 integers, and a tuple of 8 integers for the
final quadrilateral, in order of top left, bottom left, bottom right, top
right.
"""
def getmesh(
self, image: Image.Image
) -> list[
@ -421,7 +429,7 @@ class _SupportsGetMesh(Protocol):
def deform(
image: Image.Image,
deformer: _SupportsGetMesh,
deformer: SupportsGetMesh,
resample: int = Image.Resampling.BILINEAR,
) -> Image.Image:
"""