Yep, definitely you need to butt-buffer (a new technical term...) every line *segment*.

Let me know how it goes.

This will probably be quite a bit slower than plain ol buffer if you have any significant number of line segments, since iterated union is pretty inefficient. JTS 1.9 contains a new feature called Unary Union (via the new Geometry#union() method) which makes unioning a set of polygons *much* faster (maybe even competive with buffer). This will be out very shortly.

Paul Austin wrote:
I'm going to give it a try, the key is the word line segment as opposed
to line string, otherwise with a line string it'll only be mitered at
the start/end of the boundary.

Paul

Martin Davis wrote:
Yep, I think that would work.

Paul Austin wrote:
Martin,

In terms of an aglorithm would this work? May not be the most
efficient way.

    * Create a buffer with square ends for each line segment in the
      exterior and inner rings
    * Union all those polygons with the original polygon

Paul

Martin Davis wrote:
Ok, good to hear you have a workaround.

The square corner (I believe the technical term would be "mitred
corner") idea is a good one, tho - I'll add it to the  ToDo list!

Paul Austin wrote:
_______________________________________________
jts-devel mailing list
jts-devel@lists.jump-project.org
http://lists.refractions.net/mailman/listinfo/jts-devel


_______________________________________________
jts-devel mailing list
jts-devel@lists.jump-project.org
http://lists.refractions.net/mailman/listinfo/jts-devel


--
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022

_______________________________________________
jts-devel mailing list
jts-devel@lists.jump-project.org
http://lists.refractions.net/mailman/listinfo/jts-devel

Reply via email to