public static function of(Geometry $geometry1, Geometry ...$geometryN) : GeometryCollection
    {
        return new static($geometry1->coordinateSystem(), $geometry1, ...$geometryN);
    }
public static function of(Geometry $geometry1, Geometry ...$geometryN) : GeometryCollection
    {
        return new static($geometry1->coordinateSystem(), $geometry1, ...$geometryN);
    }
public static function of ( Geometry $ geometry1 , Geometry ... $ geometryN ) : GeometryCollection { return new static ( $ geometry1 -> coordinateSystem ( ) , $ geometry1 , ... $ geometryN ) ; }
Creates a non-empty GeometryCollection composed of the given geometries.

@param Geometry    $geometry1 The first geometry.
@param Geometry ...$geometryN The subsequent geometries, if any.

@return static

@throws CoordinateSystemException   If the geometries use different coordinate systems.
@throws UnexpectedGeometryException If a geometry is not a valid type for a sub-class of GeometryCollection.
Creates a non - empty GeometryCollection composed of the given geometries .