code: public static MultiPoint readMultiPoint(ByteReader reader, boolean hasZ,
  			boolean hasM) {
  
  		MultiPoint multiPoint = new MultiPoint(hasZ, hasM);
  
  		int numPoints = reader.readInt();
  
  		for (int i = 0; i < numPoints; i++) {
  			Point point = readGeometry(reader, Point.class);
  			multiPoint.addPoint(point);
  
  		}
  
  		return multiPoint;
  	}
docs: Read a Multi Point
  
  @param reader
  @param hasZ
  @param hasM
  @return multi point