Peter Stace

Results 25 comments of Peter Stace

Great suggestion, there are a bunch of other related functions that would be useful too: https://postgis.net/docs/reference.html#Linear_Referencing I'll consider implementing these as the next major feature.

The reason that `LineString` isn't implemented as `[]Point` is that `Point` may optionally be empty (i.e. WKT `POINT EMPTY`). However, the coordinates that make up a `LineString` cannot be empty....

I've got a WIP for this in `remove_repeated_points`, but I'm running into significant problems with the GEOS comparison tests. I'll park this for now and come back later.

I've attempted to dockerise the whole script, but that doesn't work too well -- since we need to switch between branches in the script. I'll instead attempt to build two...

Note that a slightly different map structure is now used (see https://github.com/peterstace/simplefeatures/pull/324 for details). I still suspect that a k-d tree would be faster.

This in general applies to all DCEL operations.

The original Bently Ottmann paper is http://www.itseng.org/research/papers/topics/VLSI_Physical_Design_Automation/Physical_Verification/DRC/Geometric_Intersection_Problems/1979-Bentley.pdf

Note that we're now using an R-Tree for LineString's IsSimple method. This isn't as good as using the Bently-Ottmann algorithm, but _does_ avoid the nasty O(n^2) behaviour we were seeing...

It would actually make more sense to use the Shamos Hoey algorithm here, rather than the Bently-Ottmann algorithm. Some details on the Shamos Hoey algorithm can be found here: -...

The `qd` library has some existing double-double algorithms implemented, which may be useful: https://www.davidhbailey.com/dhbsoftware/