[Dev] More features coming: ShapeCollection, BufferedLine, BufferedLineString

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[Dev] More features coming: ShapeCollection, BufferedLine, BufferedLineString

dsmiley
For the last 5 weeks I've been working on a variety of things on Spatial4j locally (for expediency) and I'm ready to start bringing them into the project.  In hindsight I should have done a local branch but instead I have a different local git project, but whatever -- my pain.  Here's a list of them:

* ShapeCollection:  This is rename of MultiShape; with fixed relate(), tested and does a minimum geo bounding box.
* BufferedLine:  You can think of this as a rectangle on an angle.  It has 2 points & a buffer.  The corners are boxed out.  The buffer may be 0, in which case it's a line.  It's not geodetic yet; just Euclidean.  Though I want it to "work" in a geo context.
* BufferedLineString: a chain of BufferedLine shapes.

None of these shapes yet have string reading & writing, because I want Chris to port his WKTParser from ElasticSearch first.  I have done that locally, made it extensible, and implemented parsing from the above shapes, and I'd be happy to bring that over pending Chris's remarks.

FYI I also have a temporal Point variant and a temporal BufferedLine and a temporal BufferedLineString plus WKT parsing of these, but I'm not yet sure how to introduce them.  One step at a time.

These changes include a package-local Range class used internally by some shapes, as well as a package-local InfBufLine.

And in addition there are some improvements to the randomized testing infrastructure such that I can test relate(rectangle) against new shapes robustly.

These changes will get committed a bit at a time.  Aside from test infrastructure and MultiShape (which wasn't being used), this doesn't disrupt the existing API so I don't plan to use a branch.

~ David

_______________________________________________
dev mailing list
[hidden email]
http://lists.spatial4j.com/listinfo.cgi/dev-spatial4j.com
Reply | Threaded
Open this post in threaded view
|

Re: [Dev] More features coming: ShapeCollection, BufferedLine, BufferedLineString

Chris Male

Comments inline:

On Mon, Nov 5, 2012 at 3:40 AM, [hidden email] <[hidden email]> wrote:
For the last 5 weeks I've been working on a variety of things on Spatial4j locally (for expediency) and I'm ready to start bringing them into the project.  In hindsight I should have done a local branch but instead I have a different local git project, but whatever -- my pain.  Here's a list of them:

I think you can set the upstream to a branch and push them into the branch.
 

* ShapeCollection:  This is rename of MultiShape; with fixed relate(), tested and does a minimum geo bounding box.

Good name.
 
* BufferedLine:  You can think of this as a rectangle on an angle.  It has 2 points & a buffer.  The corners are boxed out.  The buffer may be 0, in which case it's a line.  It's not geodetic yet; just Euclidean.  Though I want it to "work" in a geo context.

One of my concerns with having Shapes with buffers is how to represent them in Shape languages which are entirely coordinate driven.  Just something we need to chew over.
 
* BufferedLineString: a chain of BufferedLine shapes.

None of these shapes yet have string reading & writing, because I want Chris to port his WKTParser from ElasticSearch first.  I have done that locally, made it extensible, and implemented parsing from the above shapes, and I'd be happy to bring that over pending Chris's remarks.

Go ahead and put it somewhere and I'll review.  I'm sure your changes are fine anyway and I'm unlikely to have any time to invest in it in the next few weeks.
 

FYI I also have a temporal Point variant and a temporal BufferedLine and a temporal BufferedLineString plus WKT parsing of these, but I'm not yet sure how to introduce them.

Do we perhaps need a temporal Shape interface?
 
 One step at a time.

These changes include a package-local Range class used internally by some shapes, as well as a package-local InfBufLine.

And in addition there are some improvements to the randomized testing infrastructure such that I can test relate(rectangle) against new shapes robustly.

These changes will get committed a bit at a time.  Aside from test infrastructure and MultiShape (which wasn't being used), this doesn't disrupt the existing API so I don't plan to use a branch.

~ David

_______________________________________________
dev mailing list
[hidden email]
http://lists.spatial4j.com/listinfo.cgi/dev-spatial4j.com




--
Chris Male | Open Source Search Developer | elasticsearch | www.elasticsearch.com

_______________________________________________
dev mailing list
[hidden email]
http://lists.spatial4j.com/listinfo.cgi/dev-spatial4j.com
Reply | Threaded
Open this post in threaded view
|

Re: [Dev] More features coming: ShapeCollection, BufferedLine, BufferedLineString

dsmiley

On Mon, Nov 5, 2012 at 3:28 AM, Chris Male <[hidden email]> wrote:

FYI I also have a temporal Point variant and a temporal BufferedLine and a temporal BufferedLineString plus WKT parsing of these, but I'm not yet sure how to introduce them.

Do we perhaps need a temporal Shape interface?


It affects every shape that has temporal information; you can't have just one.  For example, a temporal Point adds 1 time, but a temporal BufferedLineString is composed of temporal Points but it has a temporal buffer, and derivable from there is a min & max time for the shape (not unlike a BBox in concept but 1 dimensional).  This is probably rather niche, but could nonetheless live in a temporal package.

_______________________________________________
dev mailing list
[hidden email]
http://lists.spatial4j.com/listinfo.cgi/dev-spatial4j.com