[geos-devel] GEOS C API for Polygonal Coverage operations?

Sandro Santilli strk at kbt.io
Thu Sep 8 08:53:09 PDT 2022


On Wed, Sep 07, 2022 at 03:44:10PM -0700, Martin Davis wrote:
> On Wed, Sep 7, 2022 at 3:18 PM Sandro Santilli <strk at kbt.io> wrote:
> 
> > On Tue, Sep 06, 2022 at 02:37:37PM -0700, Martin Davis wrote:
> > > I've started to build out operations on Polygonal Coverages in JTS ([1],
> > > [2]).
> >
> > [...]
> >
> > > A key question is how to expose these operations in the GEOS C API.  I
> > see
> > > two options:
> > > 1) Model a Polygonal Coverage as an array of simple Polygons (and
> > possibly
> > > MultiPolygons)
> > > 2) Provide a Polygonal Coverage datatype (which might contain internal
> > > topology)
> >
> > Could a coverage datatype allow performing operations on PostGIS Topologies
> > w/out building the polygons for each face ?
> 
> 
> The short answer is "yes, probably, if suitable builders are defined for
> the coverage datatype".  But that starts getting complex (in particular, it
> probably requires a concept of a Face, which might also have to be
> exposed).  This is quite a bit more design than the current work requires.

It really depends on what you mean by "Coverage" really.
All I'm hoping for is that when using TopoGeometry objects I don't
have to build Geometry objects from them for the SOLE PURPOSE of
feeding them to GEOS which on its side would re-compute noding and
labeling which was already known by the TopoGeometry objects itself.

> > There's an ISO standard
> > representation of topologies, maybe such representation could be used
> > to transfer those topologies back and forth with GEOS ?
> 
> Not familiar with that representation.  How does it handle identity for
> Faces of topologies?

Faces are identified by an integer value, referenced by edges
(attributes: left_face, right_face)

See http://strk.kbt.io/projects/postgis/topology-ER.pdf


--strk;


More information about the geos-devel mailing list