public static function of(Point $point1, Point ...$pointN) : CircularString
    {
        return new CircularString($point1->coordinateSystem(), $point1, ...$pointN);
    }
public static function of(Point $point1, Point ...$pointN) : CircularString
    {
        return new CircularString($point1->coordinateSystem(), $point1, ...$pointN);
    }
public static function of ( Point $ point1 , Point ... $ pointN ) : CircularString { return new CircularString ( $ point1 -> coordinateSystem ( ) , $ point1 , ... $ pointN ) ; }
Creates a non-empty CircularString composed of the given points.

@param Point    $point1 The first point.
@param Point ...$pointN The subsequent points.

@return CircularString

@throws InvalidGeometryException  If the number of points is invalid.
@throws CoordinateSystemException If the points use different coordinate systems.
Creates a non - empty CircularString composed of the given points .