In case there is anyone interested in using a robust convex hull algorithm in Processing, here’s a link to a library I made, a slightly modified version of the QuickHull3D library by John Lloyd (check his documentation here).
Library: newhull
Just un-zip and stick it in your libraries folder in Processing.
The most significant functional difference is the addition of a boolean myCheck() function that can check the validity of your hull BEFORE you attempt to draw it to the screen, thus saving you from QuickHull3D’s exception errors that crash Processing.
Usage below, the first parameter being the Point3D array of points, the second being the number of points in your array. Returns true if your hull contains no colinear, coplanar, or coincident points.
if (hull.myCheck(points, numPoints) == true) {
Simple complete example:
For some more detailed usage examples, check out the code section of this website under the UCube examples.