vibeproj.compat

Thin compatibility layer for Shapely 2.x and GeoPandas integration.

Not re-exported from vibeproj.__init__. Use explicitly:

from vibeproj.compat import reproject_geodataframe

Functions

reproject_geodataframe(→ geopandas.GeoDataFrame)

Reproject a GeoDataFrame using vibeProj's bulk transform.

make_shapely_transform(→ Callable[[numpy.ndarray], ...)

Return a callable for use with shapely.transform(geom, func).

reproject_geometries(→ Any)

Bulk-reproject Shapely geometries via coordinate extraction.

Module Contents

vibeproj.compat.reproject_geodataframe(gdf: geopandas.GeoDataFrame, dst_crs: vibeproj.crs.CRSInput, *, transformer: vibeproj.transformer.Transformer | None = None, chunk_size: int = 1000000, **kw: Any) geopandas.GeoDataFrame

Reproject a GeoDataFrame using vibeProj’s bulk transform.

Returns a new GeoDataFrame with the target CRS set. Pass a pre-built transformer to reuse CRS resolution and pinned-buffer pools across calls.

vibeproj.compat.make_shapely_transform(src_crs: vibeproj.crs.CRSInput, dst_crs: vibeproj.crs.CRSInput, *, chunk_size: int = 1000000, **kw: Any) Callable[[numpy.ndarray], numpy.ndarray]

Return a callable for use with shapely.transform(geom, func).

The returned function accepts an (N, 2) or (N, 3) coordinate array.

vibeproj.compat.reproject_geometries(geometries: Any, src_crs: vibeproj.crs.CRSInput, dst_crs: vibeproj.crs.CRSInput, *, transformer: vibeproj.transformer.Transformer | None = None, chunk_size: int = 1000000, **kw: Any) Any

Bulk-reproject Shapely geometries via coordinate extraction.

Accepts a single geometry, list, or numpy array. Returns same type. Pass a pre-built transformer to amortise CRS resolution across calls.