public PointList clone(boolean reverse) { PointList clonePL = new PointList(size, is3D); if (is3D) for (int i = 0; i < size; i++) { clonePL.add(latitudes[i], longitudes[i], elevations[i]); } else for (int i = 0; i < size; i++) { clonePL.add(latitudes[i], longitudes[i]); } if (reverse) clonePL.reverse(); return clonePL; }