diff options
author | Arnur Nigmetov <a.nigmetov@gmail.com> | 2017-04-06 12:21:30 +0200 |
---|---|---|
committer | Arnur Nigmetov <a.nigmetov@gmail.com> | 2017-04-06 12:21:30 +0200 |
commit | 211b596991529e2c7f4458454faa92bede554d80 (patch) | |
tree | e36322f9589d8a6561ee4d5c7de427332b08f4de /geom_bottleneck | |
parent | 478642224bca43ebe2c878159fb5b7989ed2641e (diff) |
Minor changes
Diffstat (limited to 'geom_bottleneck')
-rw-r--r-- | geom_bottleneck/bottleneck/src/bottleneck.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/geom_bottleneck/bottleneck/src/bottleneck.cpp b/geom_bottleneck/bottleneck/src/bottleneck.cpp index e41e131..da0c425 100644 --- a/geom_bottleneck/bottleneck/src/bottleneck.cpp +++ b/geom_bottleneck/bottleneck/src/bottleneck.cpp @@ -101,7 +101,9 @@ void sampleDiagramForHeur(const DiagramPointSet& dgmIn, DiagramPointSet& dgmOut) }; std::unordered_map<std::pair<double, double>, int, pair_hash> m; for(auto ptIter = dgmIn.cbegin(); ptIter != dgmIn.cend(); ++ptIter) { - m[std::make_pair(ptIter->getRealX(), ptIter->getRealY())]++; + if (ptIter->isNormal()) { + m[std::make_pair(ptIter->getRealX(), ptIter->getRealY())]++; + } } if (m.size() < 2) { dgmOut = dgmIn; @@ -122,6 +124,9 @@ void sampleDiagramForHeur(const DiagramPointSet& dgmIn, DiagramPointSet& dgmOut) } } std::vector<std::pair<double, double>> vv; + // keep points whose multiplicites are at most cutVal + // quick-and-dirty: fill in vv with copies of each point + // to construct DiagramPointSet from it later for(const auto& ptQty : m) { if (ptQty.second < cutVal) { for(int i = 0; i < ptQty.second; ++i) { @@ -129,7 +134,6 @@ void sampleDiagramForHeur(const DiagramPointSet& dgmIn, DiagramPointSet& dgmOut) } } } - // keep points whose multiplicites are at most cutVal dgmOut.clear(); dgmOut = DiagramPointSet(vv.begin(), vv.end()); } |