package de.naeveke.c2g.mapping;
import com.fasterxml.jackson.databind.util.StdConverter;
import de.naeveke.c2g.Coordinates;
import java.util.ArrayList;
import java.util.List;
public class PolygonConverter extends StdConverter<double[], List<Coordinates>> {
@Override
public List<Coordinates> convert(double[] in) {
if ((in.length % 3) != 0) {
throw new IllegalArgumentException("coordinates have to be a multiple of 3");
}
int pointCount = in.length;
List<Coordinates> coordinates = new ArrayList<>(pointCount/3);
for(int i = 0; i < pointCount; i+=3){
coordinates.add(new Coordinates(in[i+1], in[i]));
}
return coordinates;
}
}