private boolean connectAdjacentPaths() { SerializableMultiMap<Face> joinedLines = new SerializableMultiMap<Face>(); if (faces.size() < 1) return false; // Add our first line list joinedLines.add(faces.get(0)); faces.remove(0); // Now check every one in the source list boolean merged = false; for (Face src : faces) { FindResults results = new FindResults(); if (findAdjacentPath(src, joinedLines, results)) { merged = true; Face dest = joinedLines.get(results.index); combinePaths(dest, src, results); } else joinedLines.add(src); } faces = joinedLines; return merged; }
// ------------------------------------------------------------------------------------------------------------- // public void add(Face face) { faces.add(face); }