GEOS 3.14.0dev
|
#include <EnvelopeIntersectsClusterFinder.h>
Protected Member Functions | |
const geom::Envelope & | queryEnvelope (const geom::Geometry *a) override |
bool | shouldJoin (const geom::Geometry *a, const geom::Geometry *b) override |
Protected Member Functions inherited from geos::operation::cluster::AbstractClusterFinder | |
virtual Clusters | process (const std::vector< const geom::Geometry * > &components, index::strtree::TemplateSTRtree< std::size_t > &index, UnionFind &uf) |
Additional Inherited Members | |
Public Member Functions inherited from geos::operation::cluster::AbstractClusterFinder | |
Clusters | cluster (const std::vector< const geom::Geometry * > &g) |
std::vector< std::unique_ptr< geom::Geometry > > | clusterToVector (std::unique_ptr< geom::Geometry > &&g) |
std::vector< std::unique_ptr< geom::Geometry > > | clusterToVector (const geom::Geometry &g) |
std::unique_ptr< geom::Geometry > | clusterToCollection (std::unique_ptr< geom::Geometry > &&g) |
std::unique_ptr< geom::Geometry > | clusterToCollection (const geom::Geometry &g) |
EnvelopeIntersectsClusterFinder clusters geometries by envelope intersection. Any two geometries whose envelopes intersect will be included in the same cluster.
|
inlineoverrideprotectedvirtual |
Provide an query Envelope that can be used to find all geometries possibly in the same cluster as the input.
a | Geometry |
Implements geos::operation::cluster::AbstractClusterFinder.
References geos::geom::Geometry::getEnvelopeInternal().
|
inlineoverrideprotectedvirtual |
Determine whether two geometries should be considered in the same cluster.
a | Geometry |
b | Geometry |
true
if the clusters associated with a
and b
should be merged. Implements geos::operation::cluster::AbstractClusterFinder.
References geos::geom::Geometry::getEnvelopeInternal(), and geos::geom::Envelope::intersects().