throws MismatchedSizeException, MismatchedDimensionException,
MismatchedReferenceSystemException
{
final int necessaryNumber = getMinimumPointCount();
if (points.length < necessaryNumber) {
throw new MismatchedSizeException(Errors.format(ErrorKeys.INSUFFICIENT_POINTS_$2,
points.length, necessaryNumber));
}
CoordinateReferenceSystem crs = null;
final int dimension = getDimension();
for (int i=0; i<points.length; i++) {