I have a number of points stored as geographies in PostGIS (version 2.0.1), and I'd like to create rather large buffers around them (with a radius of 5000+ km).
However, ST_Buffer doesn't handle this case. As the documentation warns, it doesn't work well when you cross the poles or the international dateline, which happens with this very large radius.
What can I do instead? I only have 170 points, and this is being done offline, so it doesn't have to be super fast. I'm envisioning creating smaller buffers (which work correctly), and then programmatically extending each of the corners of the resulting polygon outward to approximately the right distance from the point (probably by creating a function in pl/python or something). But it seems like there ought to be a better way.
(In case it matters, after creating these buffers I'm unioning them; my use case is to visualize parts of the earth that are not within 5000 km of these points, by filling in the areas that are within that range.)
ST_Buffer(geog, N)
is akin to ``` ST_Transform(ST_Buffer(ST_Transform(geog::geometry, st_bestsrid(geog)), N),4326)::geography ``` The problem is the buffer operation normally works in a projection where you can cross the date line, then you try to bring it back to a representation where you can't. Unfortunately, this isn't an answer.