GEOS  3.8.0dev
Public Member Functions | Static Public Member Functions | List of all members
geos::geom::util::GeometryCombiner Class Reference

Combines Geometrys to produce a GeometryCollection of the most appropriate type. More...

#include <GeometryCombiner.h>

Public Member Functions

 GeometryCombiner (std::vector< Geometry * > const &geoms)
 Creates a new combiner for a collection of geometries. More...
 
std::unique_ptr< Geometrycombine ()
 Computes the combination of the input geometries to produce the most appropriate Geometry or GeometryCollection. More...
 

Static Public Member Functions

static std::unique_ptr< Geometrycombine (std::vector< Geometry * > const &geoms)
 Combines a collection of geometries. More...
 
static std::unique_ptr< Geometrycombine (const Geometry *g0, const Geometry *g1)
 Combines two geometries. More...
 
static std::unique_ptr< Geometrycombine (const Geometry *g0, const Geometry *g1, const Geometry *g2)
 Combines three geometries. More...
 
static GeometryFactory const * extractFactory (std::vector< Geometry * > const &geoms)
 Extracts the GeometryFactory used by the geometries in a collection. More...
 

Detailed Description

Combines Geometrys to produce a GeometryCollection of the most appropriate type.

Input geometries which are already collections will have their elements extracted first. No validation of the result geometry is performed. (The only case where invalidity is possible is where polygonal geometries are combined and result in a self-intersection).

See also
GeometryFactory::buildGeometry

Constructor & Destructor Documentation

geos::geom::util::GeometryCombiner::GeometryCombiner ( std::vector< Geometry * > const &  geoms)

Creates a new combiner for a collection of geometries.

Parameters
geomsthe geometries to combine

Member Function Documentation

static std::unique_ptr<Geometry> geos::geom::util::GeometryCombiner::combine ( std::vector< Geometry * > const &  geoms)
static

Combines a collection of geometries.

Parameters
geomsthe geometries to combine (ownership left to caller)
Returns
the combined geometry
static std::unique_ptr<Geometry> geos::geom::util::GeometryCombiner::combine ( const Geometry g0,
const Geometry g1 
)
static

Combines two geometries.

Parameters
g0a geometry to combine (ownership left to caller)
g1a geometry to combine (ownership left to caller)
Returns
the combined geometry
static std::unique_ptr<Geometry> geos::geom::util::GeometryCombiner::combine ( const Geometry g0,
const Geometry g1,
const Geometry g2 
)
static

Combines three geometries.

Parameters
g0a geometry to combine (ownership left to caller)
g1a geometry to combine (ownership left to caller)
g2a geometry to combine (ownership left to caller)
Returns
the combined geometry
std::unique_ptr<Geometry> geos::geom::util::GeometryCombiner::combine ( )

Computes the combination of the input geometries to produce the most appropriate Geometry or GeometryCollection.

Returns
a Geometry which is the combination of the inputs
static GeometryFactory const* geos::geom::util::GeometryCombiner::extractFactory ( std::vector< Geometry * > const &  geoms)
static

Extracts the GeometryFactory used by the geometries in a collection.

Parameters
geoms
Returns
a GeometryFactory

The documentation for this class was generated from the following file: