rdp
Pure Python implementation of the Ramer-Douglas-Peucker algorithm
Decision gist · record as of 2026-08-14
No. The package is abandoned (last release 2016-12-19, repository archived) with classifiers only for Python 2.5–3.4, all now end-of-life. High install friction and no runtime dependencies means you're taking on maintenance risk for a decade-old codebase. If you need line simplification, consider a maintained alternative or vendor the algorithm directly.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Classifiers indicate support only for Python 2.5–3.4, all end-of-life; compatibility with modern Python versions is unverified.
- High install friction due to source distribution only (rdp-0.8.tar.gz).
- The package is abandoned—last release was 2016-12-19 and the repository is archived—so no maintenance or updates are expected.
License · maintenance · safety
MIT (permissive) — MIT license is permissive, allowing commercial and private use with minimal restrictions.
last release 2016-12-19 (3525 days) · last repo commit 2025-04-14 · 261 stars · archived
0 known vulnerabilities (OSV.dev, 2026-08-14) · 90,363 downloads/mo, #13,591 on PyPI
Alternatives
Verify before relying
pip install rdp
from rdp import rdp
rdp([[1, 1], [2, 2], [3, 3], [4, 4]])- Whether the package works reliably on modern Python versions despite classifiers only listing up to 3.4.
- Whether NumPy is an optional or required dependency—description mentions NumPy interface but deps list shows zero runtime dependencies.
What it is and what it does
rdp is a pure Python implementation of the Ramer-Douglas-Peucker line simplification algorithm, which reduces the number of points needed to represent a curve while maintaining its overall shape. It accepts either plain Python lists of coordinate pairs or NumPy arrays, making it suitable for both simple scripts and numerical computing workflows.
The algorithm works by iteratively removing points that fall within a specified distance (epsilon) of the line connecting their neighbors. This is commonly used in cartography, GPS track simplification, and graphics rendering to reduce data size or computational cost without significant loss of fidelity. The package provides a straightforward functional interface—call rdp() with your point sequence and an optional epsilon parameter.
Use it for
- Simplify GPS tracks or map polylines to reduce storage and transmission overhead while preserving route shape.
- Decimate dense point clouds from sensors or 3D scans before visualization or further processing.
- Reduce the complexity of hand-drawn curves or paths in graphics applications for cleaner rendering.
- Compress time-series trajectory data in robotics or motion capture systems.
- Preprocess geometric data for machine learning pipelines that are sensitive to point density.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
The package is abandoned (last release 2016-12-19, repository archived) with classifiers only for Python 2.5–3.4, all now end-of-life. High install friction and no runtime dependencies means you're taking on maintenance risk for a decade-old codebase. If you need line simplification, consider a maintained alternative or vendor the algorithm directly.
Install
rdp on PyPI
Before you install
High install friction due to source distribution only (rdp-0.8.tar.gz). The package is abandoned—last release was 2016-12-19 and the repository is archived—so no maintenance or updates are expected.
Classifiers indicate support only for Python 2.5–3.4, all end-of-life; compatibility with modern Python versions is unverified.
License in practice
MIT license is permissive, allowing commercial and private use with minimal restrictions.
Quickstart
pip install rdp
from rdp import rdp
rdp([[1, 1], [2, 2], [3, 3], [4, 4]])
Verify before relying
- Whether the package works reliably on modern Python versions despite classifiers only listing up to 3.4.
- Whether NumPy is an optional or required dependency—description mentions NumPy interface but deps list shows zero runtime dependencies.
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Abandoned 3,525 days since the last release |
| Last repo commit | repository archived |
| First released | |
| Downloads | 90,363 / month, #13,591 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.5Programming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.2Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4 |
Evidence: rdp-0.8.tar.gz
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “line simplification algorithm”
- rdpImplements the Ramer-Douglas-Peucker algorithm to reduce the number…
- shapely-polyskelComputes the straight skeleton of a polygon, a geometric medial axis…
- PyGEL3DPyGEL3D provides Python bindings for a C++ geometry processing…
Give your agent the search over MCP, or paste the wish link into any chat.
More Mathematics packages
NetworkX provides data structures and algorithms for creating, analyzing, and manipulating graphs and networks, supporting everything from simple undirected graphs to complex directed and weighted networks.
kiwisolver is a Python binding to a fast C++ implementation of the Cassowary constraint solver, enabling you to solve systems of linear constraints and inequalities.
Install it if you need to solve constraint systems; skip it if you only need simple linear algebra.
SymPy is a Python library for symbolic mathematics, performing algebraic manipulation, calculus, equation solving, and mathematical expression simplification without numerical approximation.
ContourPy calculates contours of 2D quadrilateral grids using C++11 algorithms wrapped in Python, offering serial and multithreaded implementations without requiring Matplotlib as a dependency.
PyTorch provides GPU-accelerated tensor computation and automatic differentiation for building and training deep neural networks in Python.
onnxruntime loads and executes Open Neural Network Exchange (ONNX) models with a focus on inference performance across CPUs and accelerators.
Install it if you have ONNX models to run in production or development.
See also simplification · kneed · fast-simplification · lttb · isosurfaces · topojson · python-motion-planning · pyclothoids · transforms3d · ott-jax