private static Intersection getIntersection(TriangleObject obj, Vector3D p, Vector3D pc) { DecompositionSolver solver = obj.getSolverXY(); try { double[] params = {pc.getX(), pc.getY()}; return getIntersection(obj, solver, p, pc, params); } catch (Exception ex) { solver = obj.getSolverYZ(); try { double[] params = {pc.getY(), pc.getZ()}; return getIntersection(obj, solver, p, pc, params); } catch (Exception e) { solver = obj.getSolverXZ(); double[] params = {pc.getX(), pc.getZ()}; return getIntersection(obj, solver, p, pc, params); } } }