[postgis-users] A question on ST_RemEdgeModFace usability

Sandro Santilli strk at keybit.net
Thu Apr 12 22:55:30 PDT 2012


On Thu, Apr 12, 2012 at 11:44:37PM +0200, Andrea Peri wrote:

> my experience is that the topology is useful to produce a good really
> topologic dataset starting from a simple-feature topologically aprossimated
> dataset.
> 
> So after apply the starting dataset to a topology is often necessary to
> remove the
> little danlges or slivers that the topology costruction phase (totopogeo)
> will evidence.
> 
> The standard solution to remove the sliver is to remove the edge that is
> born wrongly.

Try to think of this operation as:
"univoquely assign primitives to one or another TopoGeometry".

The final result is the same, except you'd end up with more faces
than really needed at the primitive level (which you could clean up
in a later step or keep to make better use of the index).

See the example query I sent in response to Pierre Racine on
postgis-users. That query was returning the list of faces "shared"
by multiple TopoGeometry objects. When every face has at most 1
TopoGeometry associated your guaranteed there are no more overlaps.

You may think of different rules to decide which TopoGeometry retains
exclusive use of a face ... the one with biggest or smallest area,
the one with least identifier (first created wins), the leftmost/rightmost.

This is the reason why it's not ST_RemEdge*'s business to decide for you.
Note that ST_ prefixed function come from ISO SQL/MM which has _no_ concept
of TopoGeometry. If you're happier with a single abstraction level and want
to do things w/out TopoGeometries you can also do that - but TopoGeometry is
more fun !!! :)

--strk;

  ,------o-. 
  |   __/  |    Delivering high quality PostGIS 2.0 !
  |  / 2.0 |    http://strk.keybit.net - http://vizzuality.com
  `-o------'




More information about the postgis-users mailing list