private LineString readCircularStringText() throws IOException, ParseException {
List<Coordinate> coordinates = getCoordinateList( true );
if (coordinates.size() == 0) {
return geometryFactory.createLineString(new Coordinate[0]);
} else if (coordinates.size() < 3) {
throw new ParseException("A CIRCULARSTRING must contain at least 3 control points");
} else {
double[] controlPoints = toControlPoints(coordinates);
return geometryFactory.createCurvedGeometry(2, controlPoints);
}
}