MCPcopy Create free account
hub / github.com/comaps/comaps / SimplifyDP

Function SimplifyDP

libs/geometry/simplification.hpp:36–49  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

34// Actual SimplifyDP implementation.
35template <typename DistanceFn, typename Iter, typename Out>
36void SimplifyDP(Iter first, Iter last, double epsilon, DistanceFn & distFn, Out & out)
37{
38 if (first != last)
39 {
40 auto const maxDist = MaxDistance(first, last, distFn);
41 if (maxDist.first >= epsilon)
42 {
43 simpl::SimplifyDP(first, maxDist.second, epsilon, distFn, out);
44 simpl::SimplifyDP(maxDist.second, last, epsilon, distFn, out);
45 return;
46 }
47 }
48 out(*last);
49}
50//@}
51
52struct SimplifyOptimalRes

Callers 1

CheckDPStrictFunction · 0.85

Calls 1

MaxDistanceFunction · 0.85

Tested by 1

CheckDPStrictFunction · 0.68