private static void pointToLine3D(ReadonlyVec3D p, ReadonlyVec3D t,
Vec3D top, Vec3D out) {
Vec3D dir = top.sub(p);
float hyp = dir.magnitude();
out.set(p.add(t.scale(t.dot(dir.normalize()) * hyp)));
}
private static float[][] surfaceMeshParameters(Vec3D points[][], int n,
int m) {
final float[][] res = new float[2][];