Hi Brian, just a question: You know the work by Mats Bader on merging polygons in map generalization? Are you trying to do the same, i.e. re-implement it? However, I am not aware of any code that he left, I only now the paper [1]. Though, I have some of his original ductile truss code in java (but quite complicated to read/understand, as it is from the time before Eclipse and JTS etc.)
cheers, stefan [1] Bader & Weibel (1997) Detecting and resolving size and proximity conflicts in the generalization of polygonal maps. http://www.geo.unizh.ch/~sschmid/Diplomarbeit/Literatur/Detecting%20and%20Resolving%20Size%20and%20Proximity%20Conflicts%20in%20the%20%20Generalization%20of%20Polygonal%20Maps.pdf Am 21.11.13 07:48, schrieb Brian Sanjeewa Rupasinghe: > Hi Micheal, > > Many thanks. My use case is to merge polygon clusters to be used in map > generalization. > Idea is to identify each adjacent pair of polygons based on > triangulation and a cluster > distance threshold, and then fill the gap between each polygon pair. > Finally all gaps obtained are union with the original polygons in the > cluster. One way is to fill the gap with triangles by running > triangulation between each pair. The original polygons are irregular in > shape and may i know what you mean by working out polygon envelope?? > > Brian > > > On Wed, Nov 20, 2013 at 8:37 PM, > <[email protected] > <mailto:[email protected]>> wrote: > > Send Jts-topo-suite-user mailing list submissions to > [email protected] > <mailto:[email protected]> > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > or, via email, send a message with subject or body 'help' to > [email protected] > <mailto:[email protected]> > > You can reach the person managing the list at > [email protected] > <mailto:[email protected]> > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Jts-topo-suite-user digest..." > > > Today's Topics: > > 1. Re: Publishing "jtsio" in Maven Central? (Andy Jefferson) > 2. Re: Associating metadata (color) to returned Voronoi Polygons > (Martin Davis) > 3. Re: Polygon triangulation (Micha?l Michaud) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 20 Nov 2013 15:09:36 +0000 > From: Andy Jefferson <[email protected] > <mailto:[email protected]>> > Subject: Re: [Jts-topo-suite-user] Publishing "jtsio" in Maven > Central? > To: [email protected] > <mailto:[email protected]> > Message-ID: <6475045.bP9DWc3x2I@rookie> > Content-Type: text/plain; charset="us-ascii" > > > Andy, I hope this meets your needs. > > @Michael, Martin, So this will apply from the next release onwards > presumably > ? Any ball park estimate for when that is likely to be, so I have a > date in > mind for checking the repo? > > Thanks > -- > Andy > > > > ------------------------------ > > Message: 2 > Date: Wed, 20 Nov 2013 11:28:36 -0800 > From: Martin Davis <[email protected] <mailto:[email protected]>> > Subject: Re: [Jts-topo-suite-user] Associating metadata (color) to > returned Voronoi Polygons > Cc: "[email protected] > <mailto:[email protected]>" > <[email protected] > <mailto:[email protected]>> > Message-ID: > > <CAK2ens2FJAEhUcroQny1FL-bLBhtb21-8=a7_siao1x3npe...@mail.gmail.com > <mailto:[email protected]>> > Content-Type: text/plain; charset="windows-1252" > > As per the Javadoc for the QuadEdgeSubdivision.getVoronoiCellPolygon > [1], > the original site Coordinate is returned as the userData of the cell > polygons. So you should be able to use a simple Hashmap to look up the > polygon for a site. > > If that doesn't work, let me know... > > [1] > > http://tsusiatsoftware.net/jts/javadoc/com/vividsolutions/jts/triangulate/quadedge/QuadEdgeSubdivision.html#getVoronoiCellPolygon(com.vividsolutions.jts.triangulate.quadedge.QuadEdge, > com.vividsolutions.jts.geom.GeometryFactory) > > > On Tue, Nov 19, 2013 at 3:17 PM, Dutrow, Daniel A. > <[email protected] <mailto:[email protected]> > > wrote: > > > I have a data structure which is basically a list of records that > contain > > coordinates and labeling/coloring data. I would like to convert these > > records to a FeaturedGeometry object which contains the Thiessen > polygon > > and labeling/coloring data. > > > > > > > > Consider these classes (simplified for the purpose of this > demonstration). > > > > > > > > public class Record { > > > > String label; > > > > Coordinate coordinate; > > > > int color; > > > > } > > > > > > > > public class FeaturedGeometry{ > > > > String label; > > > > Geometry geometry; > > > > int color; > > > > } > > > > > > > > To produce that Voronoi diagram, I loop through all records and > add the > > Coordinate to a list of points. > > > > > > > > List<Coordinate> points = *new* > ArrayList<Coordinate>(listRecords.size()); > > > > *for* (Record record : listRecords) { > > > > points.add(record.coordinate); > > > > //label??? > > > > //color??? > > > > } > > > > > > > > DelaunayTriangulationBuilder builder = > *new*DelaunayTriangulationBuilder(); > > > > builder.setTolerance(0.001); > > > > builder.setSites(points); > > > > List<Geometry> subdivisions = > > builder.getSubdivision().getVoronoiCellPolygons(geometryFactory); > > > > > > > > *for* (Geometry polygon : subdivisions) { > > > > FeaturedGeometry f = new FeaturedGeometry(); > > > > f.geometry = polygon; > > > > f.label = ?????; > > > > f.color = 0; > > > > > > > > } > > > > > > > > What is the best way to associate the geometry with the original > point? I > > would hate to have to check every combination of Record and > subdivision > > Geometry to test for intersection. Is there any chance I could > use the > > ?setUserData? method to import and export the metadata? > > > > > > > > Thanks, > > Dan > > > > > > > > ------------------------------------------------------------------------------ > > Shape the Mobile Experience: Free Subscription > > Software experts and developers: Be at the forefront of tech > innovation. > > Intel(R) Software Adrenaline delivers strategic insight and > game-changing > > conversations that shape the rapidly evolving mobile landscape. > Sign up > > now. > > > > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > > _______________________________________________ > > Jts-topo-suite-user mailing list > > [email protected] > <mailto:[email protected]> > > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 3 > Date: Wed, 20 Nov 2013 21:37:29 +0100 > From: Micha?l Michaud <[email protected] > <mailto:[email protected]>> > Subject: Re: [Jts-topo-suite-user] Polygon triangulation > To: [email protected] > <mailto:[email protected]> > Message-ID: <[email protected] <mailto:[email protected]>> > Content-Type: text/plain; charset="iso-8859-1" > > Hi, > > How about densify the polygons before applying Delaunay > triangulation. > > But again, there is no guarantee not to have steinar points. > Yes, I don't know how much you have to densify to guarantee that no > point will be added. > Just a naive question, as I don't know exactly your problem. If you want > to fill the gap > between your polygons, can you use the difference between the polygon > envelope (or > anu surface including your gap) and your polygons ? > > Micha?l > > > > Brian. > > > > > > On Mon, Nov 18, 2013 at 10:20 AM, Brian Sanjeewa Rupasinghe > > <[email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>>> wrote: > > > > Thanks Micheal, good point. Yes, i use JTS Conformal Delaunay > > Triangulation with edge enforcement with a small tolerance > > (0.001). As you mentioned, it introduces steinar paoints that are > > not in the polygons. If i stick with Conformal Delaunay > > Triangulation, any solution to overcome > > this? Otherwise, i can use your Polygon triangulation to > > triangulate space between the two polygons. I think again it > might > > introduce the same > > problem, when deriving the space by subtracting the union of > > polygons from the ConvexHull!!!. Any idea is appreciated. > > > > Brian. > > > > > > On Mon, Nov 18, 2013 at 1:54 AM, > > <[email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>>> wrote: > > > > Send Jts-topo-suite-user mailing list submissions to > > [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > > > To subscribe or unsubscribe via the World Wide Web, visit > > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > > or, via email, send a message with subject or body 'help' to > > [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > > > You can reach the person managing the list at > > [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > > > When replying, please edit your Subject line so it is more > > specific > > than "Re: Contents of Jts-topo-suite-user digest..." > > > > > > Today's Topics: > > > > 1. Re: Polygon union (Brian Sanjeewa Rupasinghe) > > 2. Re: Polygon union (Micha?l Michaud) > > > > > > > ---------------------------------------------------------------------- > > > > Message: 1 > > Date: Sun, 17 Nov 2013 10:24:50 +0000 > > From: Brian Sanjeewa Rupasinghe <[email protected] > <mailto:[email protected]> > > <mailto:[email protected] <mailto:[email protected]>>> > > Subject: Re: [Jts-topo-suite-user] Polygon union > > To: [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > Message-ID: > > > > > <CAEMA-4h+_w7o0=eigqfd_s8bg5gunat6cildxga8zf5qpsv...@mail.gmail.com > <mailto:[email protected]> > > > <mailto:[email protected] > <mailto:[email protected]>>> > > Content-Type: text/plain; charset="iso-8859-1" > > > > Hi, Micheal > > > > Thanks for the reply. My use case is to add triangles between > > a pair of > > polygons to get the amalgam. My polygons are in PostGIS > > and what i do is, i get the union of polygon pair with a > query > > in PostGIS > > and output is converted into JTS and triangulated. > > Then i find the triangles between them and add all of them > > with the union > > pair. So the final result should be a polygon which does > > not happen always. Where should i exactly apply geometry > precision > > reduction. Is it only to the union geometry from PostGIS or > > do i need to apply it to output triangles as well? > > > > Brian. > > > > > > On Sat, Nov 16, 2013 at 6:43 PM, Brian Sanjeewa Rupasinghe < > > [email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>>> wrote: > > > > > Hi, > > > > > > I need to union adjoining polygons together. I use > > UnionWithUnionOp() > > > method in JTS 1.13. > > > However, sometimes, even if i reduce the geometry > precision, > > it does not > > > end up with a unique polygon resulting a multi-polygon. In > > such instances > > > which method is the best to > > > avoid creating multi-polygon? I used buffer(0), but it did > > not work. What > > > about adding a small +- buffer? > > > > > > Brian. > > > > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > > > ------------------------------ > > > > Message: 2 > > Date: Sun, 17 Nov 2013 12:26:57 +0100 > > From: Micha?l Michaud <[email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>>> > > Subject: Re: [Jts-topo-suite-user] Polygon union > > To: [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > Message-ID: <[email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>>> > > Content-Type: text/plain; charset="iso-8859-1" > > > > Hi, > > > > Do you use a constrained triangulation or not ? > > How do you find triangles between your polygons ? > > Possible problems I can see are : > > > > Triangulation without constraint : some triangles may be > > partly on your polygon (green) and partly in the gap (blue) > > > > > > Triangulation with constraint : triangles "seem" to fill > the gap, > > but some vertices are not part of the original polygons. > > Depending on > > how you find the triangles lying in the gap, you may miss > some. > > > > > > Micha?l > > > Hi, Micheal > > > > > > Thanks for the reply. My use case is to add triangles > > between a pair > > > of polygons to get the amalgam. My polygons are in PostGIS > > > and what i do is, i get the union of polygon pair with a > > query in > > > PostGIS and output is converted into JTS and triangulated. > > > Then i find the triangles between them and add all of them > > with the > > > union pair. So the final result should be a polygon > which does > > > not happen always. Where should i exactly apply geometry > > precision > > > reduction. Is it only to the union geometry from PostGIS or > > > do i need to apply it to output triangles as well? > > > > > > Brian. > > > > > > > > > On Sat, Nov 16, 2013 at 6:43 PM, Brian Sanjeewa Rupasinghe > > > <[email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>> > > <mailto:[email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>>>> wrote: > > > > > > Hi, > > > > > > I need to union adjoining polygons together. I > > > use UnionWithUnionOp() method in JTS 1.13. > > > However, sometimes, even if i reduce the geometry > > precision, it > > > does not end up with a unique polygon resulting a > > multi-polygon. > > > In such instances which method is the best to > > > avoid creating multi-polygon? I used buffer(0), but it > > did not > > > work. What about adding a small +- buffer? > > > > > > Brian. > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > > DreamFactory - Open Source REST & JSON Services for HTML5 & > > Native Apps > > > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External > > API Access > > > Free app hosting. Or install the open source package on any > > LAMP server. > > > Sign up and see examples for AngularJS, jQuery, Sencha > Touch > > and Native! > > > > > > > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > > > > > > > > > _______________________________________________ > > > Jts-topo-suite-user mailing list > > > [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > > > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > > > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > -------------- next part -------------- > > A non-text attachment was scrubbed... > > Name: fhjjfdae.png > > Type: image/png > > Size: 12830 bytes > > Desc: not available > > -------------- next part -------------- > > A non-text attachment was scrubbed... > > Name: jddagbaf.png > > Type: image/png > > Size: 13980 bytes > > Desc: not available > > > > ------------------------------ > > > > > > ------------------------------------------------------------------------------ > > DreamFactory - Open Source REST & JSON Services for HTML5 & > > Native Apps > > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and > External API > > Access > > Free app hosting. Or install the open source package on any > > LAMP server. > > Sign up and see examples for AngularJS, jQuery, Sencha Touch > > and Native! > > > > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > > > > ------------------------------ > > > > _______________________________________________ > > Jts-topo-suite-user mailing list > > [email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > > > > > > End of Jts-topo-suite-user Digest, Vol 47, Issue 8 > > ************************************************** > > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > DreamFactory - Open Source REST & JSON Services for HTML5 & > Native Apps > > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access > > Free app hosting. Or install the open source package on any LAMP > server. > > Sign up and see examples for AngularJS, jQuery, Sencha Touch and > Native! > > > > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > > > > > > _______________________________________________ > > Jts-topo-suite-user mailing list > > [email protected] > <mailto:[email protected]> > > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ------------------------------------------------------------------------------ > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and > game-changing > conversations that shape the rapidly evolving mobile landscape. Sign > up now. > > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > > ------------------------------ > > _______________________________________________ > Jts-topo-suite-user mailing list > [email protected] > <mailto:[email protected]> > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > > > End of Jts-topo-suite-user Digest, Vol 47, Issue 11 > *************************************************** > > > > > ------------------------------------------------------------------------------ > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and game-changing > conversations that shape the rapidly evolving mobile landscape. Sign up now. > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > > > > _______________________________________________ > Jts-topo-suite-user mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user > ------------------------------------------------------------------------------ Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk _______________________________________________ Jts-topo-suite-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jts-topo-suite-user
