What is the most efficient way of projecting several thousands of polygons and multipolygons to a different CRS in Python? I have found that looping over the polygons and reprojecting them one by one is rather slow. Ideally, for a thousand polygons, this operation shouldn't take longer than 1 second.
Currently, I am using an approach where I extract all coordinates into a single numpy array, convert them, and split the results back up into polygons. While this is quite fast, right now it doesn't handle polygons with interiors or multipolygons. I could extend this approach, but before doing so, I was wondering whether I am overlooking something that is a bit more manageable.