// z-ccordinate
for (int j = 0; j < n; j++) {
b.setElement(j, points[j].z);
}
sol.zero();
sol.backSolveLUD(lu, b, perm);
for (int j = 0; j < n; j++) {
cps[j].z = (float) sol.get(j);
}
return new BasicNurbsCurve(cps, uKnots);
} catch (SingularMatrixException ex) {