RamerDouglasPeucker

function RamerDouglasPeucker(const path: TPathD; epsilon: double): TPathD; overload;

function RamerDouglasPeucker(const path: TPathsD; epsilon: double): TPathsD; overload;


This function has been deprecated in favour of SimplifyPaths which is much better when simplifying closed paths.

A line simplification algorithm that removes extraneous vertices.

The algorithm recursively finds the vertex between line endpoints that's furthest from the virtual segment joining these endpoints, If this vertex is within a predefined (epsilon) distance, then all vertices between endpoints will be removed. Otherwise the line is divided into two at this vertex and the process is repeated. See Wikipedia

See Also

SimplifyPaths, SmoothToCubicBezier, Vectorize