def polygon_from_transform(width: float, height: float, transform: Affine, crs: MaybeCRS) -> Geometry: """ Create a 2D Polygon from an affine transform :param width: :param height: :param transform: :param crs: CRS """ points = [(0, 0), (0, height), (width, height), (width, 0), (0, 0)] transform.itransform(points) return polygon(points, crs=crs)