I made a quick and dirty VB.NET script component in Grasshopper for finding surfaces that work with quadrangular flat panels. this script makes it so the flat panel edges match their neighbors. No mathematical surfaces are used in this case...
Click here to download the Grasshopper Definition
SOME NOTES ON HOW IT WORKS:
1. This script uses lists UV points on a surface and generates an iterative set of planar panels.
2. It works from one corner of the surface and then assembles flat panels row-by-row
3. The resulting panels are always planar with edges that meet.
4. Very handy if you are looking for irregular doubly-curved surfaces that you can fabricate out of flat material.
1. The script just does what it wants... and what it wants is flat panels. Don't expect a lot of flexibility in this regard (ie, Do not expect the output to match your input surface if you are working with double-curvatures. it does its best, but as Scotty would say "I can't break the laws of physics!")