package de.westnordost.streetcomplete.tangram;
import com.mapzen.tangram.LngLat;
import java.util.ArrayList;
import java.util.List;
import de.westnordost.osmapi.map.data.LatLon;
import de.westnordost.osmapi.map.data.OsmLatLon;
public class TangramConst
{
public static LngLat toLngLat(LatLon pos)
{
return new LngLat(pos.getLongitude(), pos.getLatitude());
}
public static LatLon toLatLon(LngLat pos)
{
// TODO https://github.com/tangrams/tangram-es/issues/1097
while(pos.longitude > 180) pos.longitude -= 360;
while(pos.longitude <= -180) pos.longitude += 360;
return new OsmLatLon(pos.latitude, pos.longitude);
}
public static List<List<LngLat>> toLngLat(List<List<LatLon>> positionLists)
{
List<List<LngLat>> result = new ArrayList<>(positionLists.size());
for(List<LatLon> positions : positionLists)
{
List<LngLat> resultPositions = new ArrayList<>(positions.size());
for(LatLon pos : positions)
{
resultPositions.add(toLngLat(pos));
}
result.add(resultPositions);
}
return result;
}
public static List<List<LatLon>> toLatLon(List<List<LngLat>> positionLists)
{
List<List<LatLon>> result = new ArrayList<>(positionLists.size());
for(List<LngLat> positions : positionLists)
{
List<LatLon> resultPositions = new ArrayList<>(positions.size());
for(LngLat pos : positions)
{
resultPositions.add(toLatLon(pos));
}
result.add(resultPositions);
}
return result;
}
}