public static function of(Curve $curve1, Curve ...$curveN) : CompoundCurve
    {
        return new CompoundCurve($curve1->coordinateSystem(), $curve1, ...$curveN);
    }
public static function of(Curve $curve1, Curve ...$curveN) : CompoundCurve
    {
        return new CompoundCurve($curve1->coordinateSystem(), $curve1, ...$curveN);
    }
public static function of ( Curve $ curve1 , Curve ... $ curveN ) : CompoundCurve { return new CompoundCurve ( $ curve1 -> coordinateSystem ( ) , $ curve1 , ... $ curveN ) ; }
Creates a non-empty CompoundCurve composed of the given curves.

@param Curve    $curve1 The first curve.
@param Curve ...$curveN The subsequent curves, if any.

@return CompoundCurve

@throws EmptyGeometryException    If any of the input curves is empty.
@throws InvalidGeometryException  If the compound curve is not continuous.
@throws CoordinateSystemException If the curves use different coordinate systems.
Creates a non - empty CompoundCurve composed of the given curves .