If you want to pose your question closer to the actual code that implements it, asking in the GEOS list might be good. In general, as Greg notes, a simple example geometry demonstrating your misgivings, if such a thing exists, is a great way to seed a discussion. Particularly for something as “personal” as coverage cleaning, there is a lot of opinion involved in what is “correct” for any given input.
ATB, P > On Sep 23, 2025, at 5:24 AM, Douglas Fan <[email protected]> wrote: > > Dear PostGIS Developers and Users, > > First of all, thank you for the development of the new ST_CoverageClean > function in PostGIS 3.6.0. It’s a fantastic addition that has already helped > a lot in my work with polygonal coverages. I really appreciate the effort > that went into making this tool available. > While testing the function, I’ve encountered some behaviors that I’d like to > better understand, particularly regarding the snappingDistance and > gapMaximumWidth parameters. > > From the documentation, I understand that: > 1. snappingDistance controls vertex snapping, with -1 applying an automatic > distance, and 0.0 disabling snapping. > 2. gapMaximumWidth closes gaps smaller than the specified tolerance. > > However, during testing with various combinations (e.g., snappingDistance set > to -1, 0.0, 1, 2 and gapMaximumWidth set to 0, 1, 2), I noticed: > 1. Even when snappingDistance is explicitly set to 0.0, small sliver vertices > still appear to be snapped or altered when gapMaximumWidth is greater than 0. > 2. Slivers that are thinner than the gapMaximumWidth are removed, even when > they are not actual gaps or overlaps. > > This behavior seems counterintuitive, as I expected no snapping to occur with > snappingDistance = 0.0. Could this be due to internal gap cleaning logic that > also affects vertex positions? Or is there an implicit snapping step tied to > gapMaximumWidth? > > I’d be grateful for any insights into: > > 1. How do these two parameters interact? > 2. Best practices or recommended workflows for cleaning polygonal coverages > with minimal geometry distortion. > 3. Any known edge cases or limitations when using ST_CoverageClean. > 4. Whether gapMaximumWidth also triggers geometry simplification or sliver > removal beyond gap closing. > > Thanks in advance for your help and for the continued development of PostGIS. > > Best regards, > Man Ho Fan
