The surfaceLib gives you an easy way to create different 3d surfaces in processing.
To understand the math behind the different surfaces take a look at Paul Bourkes surface site, which was the main source for the math stuff.
If you create new surface it would be nice if you send me the source so I can add them to the library.
You can also add your own surface implementation, following this short tutorial.
The library is created to work with processing 2.0 and higher.
Examples: