simplification VS lonlat_bng

Compare simplification vs lonlat_bng and see what are their differences.

simplification

Very fast Python line simplification using either the RDP or Visvalingam-Whyatt algorithm implemented in Rust (by urschrei)

lonlat_bng

A multithreaded Rust library with FFI for converting WGS84 longitude and latitude coordinates into BNG (OSGB36) Eastings and Northings and vice versa (using OSTN15) (by urschrei)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
simplification lonlat_bng
2 1
155 25
- -
7.7 3.5
14 days ago 10 months ago
Python Rust
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

simplification

Posts with mentions or reviews of simplification. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-09-15.
  • Making large line-charts (visualizations) scalable with plotly-resampler
    3 projects | /r/Python | 15 Sep 2022
    Looks great! I have been using https://github.com/urschrei/simplification Visvalingam-Whyatt algo as per suggestion of Mike Bostock https://bost.ocks.org/mike/simplify/, don't know if it's comptetitive with the EffLTTB. It is surposesd to be fast and good in terms of shape preservation.
  • Julia is the better language for extending Python
    13 projects | news.ycombinator.com | 19 Apr 2021
    Rust doesn’t need to copy the data. It’s trivial to pass e.g. Numpy arrays to Rust as slices via Cython (let alone originating in Cython!), modify them, and return them, or use them as input for a new returned struct.

    https://github.com/urschrei/simplification

    https://github.com/urschrei/lonlat_bng

    https://github.com/urschrei/pypolyline

    Each of those repos has links to the corresponding Rust “shim” libraries that provide FFIs for dealing with the incoming data, constructing Rust data structures from it, and then transforming it back on the way out.

    As a more general comment, using a GC language as the FFI target from a GC language is begging for difficult-if-not-impossible-to-debug crashes down the line.

lonlat_bng

Posts with mentions or reviews of lonlat_bng. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-04-19.
  • Julia is the better language for extending Python
    13 projects | news.ycombinator.com | 19 Apr 2021
    Rust doesn’t need to copy the data. It’s trivial to pass e.g. Numpy arrays to Rust as slices via Cython (let alone originating in Cython!), modify them, and return them, or use them as input for a new returned struct.

    https://github.com/urschrei/simplification

    https://github.com/urschrei/lonlat_bng

    https://github.com/urschrei/pypolyline

    Each of those repos has links to the corresponding Rust “shim” libraries that provide FFIs for dealing with the incoming data, constructing Rust data structures from it, and then transforming it back on the way out.

    As a more general comment, using a GC language as the FFI target from a GC language is begging for difficult-if-not-impossible-to-debug crashes down the line.

What are some alternatives?

When comparing simplification and lonlat_bng you can also consider the following projects:

pyrdp - RDP monster-in-the-middle (mitm) and library for Python with the ability to watch connections live or after the fact

Python-Complementary-Languages - Just a small test to see which language is better for extending python when using lists of lists

rust-numpy - PyO3-based Rust bindings of the NumPy C-API

fapro - Fake Protocol Server

rust-s2 - S2 geometry library in Rust

cunumeric - An Aspiring Drop-In Replacement for NumPy at Scale

pypolyline - Fast Google Polyline encoding and decoding using a Rust binary

plotly-resampler - Visualize large time series data with plotly.py