I've got what I'm hoping will be an interesting question. I'm working on an assignment for an intro to GIS course that uses some Gulf oil spill data to introduce common vector-based spatial analysis methods (buffers, overlays, etc.) I've got a polygon feature class that holds the bounds of the Deepwater Horizon oil spill on a given day, and I'm simulating its expansion with buffers.
It does the job to illustrate the concept, but certainly doesn't provide realistic results. It got me thinking about how this could be done in a way that provided less uniform results, mimicking/faking the effect of currents directing the oil in various directions as it expands.
In a general sense, I'm looking for a workflow that would accomplish the following given an input polygon feature:
- Create a new polygon feature that is bigger than the original by a specified area (like 10 sq. km.) or maybe a specified factor (like 5%)
- The new polygon feature would have an arbitrary shape, with the caveat that...
- The new polygon feature would contain the original polygon feature (this point isn't a deal breaker, but would be nice to have)
Any real-world solution would have to involve modeling ocean currents, fluid dynamics, and the like, which goes well outside the scope of what I'm trying to do (though solutions incorporating this are certainly welcome and would be interesting to see), but the idea has piqued my curiosity about the underlying spatial problem and I'm curious what solutions are out there. I've got one solution in mind, but I'd like to hear what solutions others may have.
I'm working in the ESRI world, but solutions that involve other packages/platforms are certainly welcome (though I may not be able to test them). General algorithms, pseudocode, and code are fine as well.