Ramer-Douglas-Peucker line simplification: Difference between revisions
Ramer-Douglas-Peucker line simplification (view source)
Revision as of 14:21, 25 May 2020
, 3 years agoChanged name of function parameter
(Added C solution) |
m (Changed name of function parameter) |
||
Line 40:
// Returns the number of output points.
size_t douglas_puecker(const point_t* points, size_t n, double epsilon,
point_t* dest, size_t
assert(n >= 2);
assert(epsilon >= 0);
Line 53:
}
if (max_dist > epsilon) {
size_t n1 = douglas_puecker(points, index + 1, epsilon, dest,
if (
dest += n1 - 1;
} else {
}
size_t n2 = douglas_puecker(points + index, n - index, epsilon, dest,
return n1 + n2 - 1;
}
if (
dest[0] = points[0];
dest[1] = points[n - 1];
|