private void addNewFaces(FaceList newFaces, Vertex eyeVtx, List <HalfEdge> horizon) { newFaces.clear(); HalfEdge hedgeSidePrev = null; HalfEdge hedgeSideBegin = null; for (int i = 0; i < horizon.Count; i++) { HalfEdge horizonHe = horizon[i]; HalfEdge hedgeSide = addAdjoiningFace(eyeVtx, horizonHe); if (debug) { Print("new face: " + hedgeSide.face.getVertexString()); } if (hedgeSidePrev != null) { hedgeSide.next.setOpposite(hedgeSidePrev); } else { hedgeSideBegin = hedgeSide; } newFaces.add(hedgeSide.getFace()); hedgeSidePrev = hedgeSide; } hedgeSideBegin.next.setOpposite(hedgeSidePrev); }