Man I love your work! Keep it up! Presumably the two-directional variant you used on the bunny cactus would work with any basis, even if it's not orthogonal? (Can't think of any particular use for that right now, normally things being normal means they also are simpler but I'm sure there are some neat tricks doable that way) What about direction fields as found in your earlier works? Is that related to how these insights could help for quad-meshing?
Thanks. :-) Yes, you can use any pair of vector fields you like to drive the input; they do not have to be orthogonal. A non-orthogonal pair could be useful for meshing. For instance, one sometimes wishes to use a conjugate rather than orthogonal parameterization.
I don't know of a MATLAB implementation; there's C++ code here: www.cs.cmu.edu/~kmcrane/Projects/StripePatterns/code.zip Would love to see a port to MATLAB! ;-)