Fast detection of narrow polygons with JTS

Some spatial use cases require identifying "narrow" or "skinny" polygons. A classic example is the process of cleaning polygonal coverages. Coverages (even clean ones) may contain narrow gaps between polygons which are unwanted. But they may also contain larger gaps which are valid. A geometric test is required to distinguish narrow polygons which are gaps (that can be merged) from wider ones…