public static function of(Polygon $patch1, Polygon ...$patchN) : PolyhedralSurface
    {
        return new static($patch1->coordinateSystem(), $patch1, ...$patchN);
    }
public static function of(Polygon $patch1, Polygon ...$patchN) : PolyhedralSurface
    {
        return new static($patch1->coordinateSystem(), $patch1, ...$patchN);
    }
public static function of ( Polygon $ patch1 , Polygon ... $ patchN ) : PolyhedralSurface { return new static ( $ patch1 -> coordinateSystem ( ) , $ patch1 , ... $ patchN ) ; }
Creates a non-empty PolyhedralSurface composed of the given patches.

@param Polygon    $patch1 The first patch.
@param Polygon ...$patchN The subsequent patches, if any.

@return PolyhedralSurface

@throws CoordinateSystemException If the patches use different coordinate systems.
Creates a non - empty PolyhedralSurface composed of the given patches .