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.
There is a bunch of surfaces implemented but you can also wrote your own class which extends the basic surface class. I've wrote a small tutorial how to create your own surface.
If you create new surface it would be nice if you send me the source so I can add them to the library.
The library is created to work with processing 149 and higher.