29 PairCells(
const std::vector<CGAL::Epick::Point_2> &points,
30 double upperBound =
inf,
31 bool parallelSort =
false,
32 bool parallelMatrixConstruction =
false);
35 bool distanceMatrix =
false,
36 double upperBound =
inf,
37 bool parallelSort =
false,
38 bool parallelMatrixConstruction =
false);
42 double upperBound =
inf,
43 bool parallelSort =
false,
44 bool parallelMatrixConstruction =
false);
50 std::vector<Generator1> &generators)
const;
56 std::vector<int>
const &globalIndices)
const;
60 std::vector<double> compressedDM_{};
62 const bool parallelSort_;
63 const bool parallelMatrixConstruction_;
65 std::vector<FiltratedEdge> edges_{};
66 std::vector<FiltratedTriangle> triangles_{};
67 std::vector<id_t> edgesIndices_{};
68 std::vector<id_t> edgesOrder_{};
69 std::vector<id_t> trianglesIndices_{};
71 std::vector<id_t> edgesPartner_{};
72 std::vector<id_t> trianglesPartner_{};
73 std::vector<std::vector<id_t>> boundaries_{};
78 std::vector<std::vector<id_t>> cascadeEdges_{};
84 double &DM(
unsigned i,
unsigned j) {
85 return compressedDM_[j * (j - 1) / 2 + i];
89 void initializeWithBound();
91 void executeKruskal();
92 void symbolicPerturbation(
double eps
93 = std::numeric_limits<float>::epsilon());