// License: GPL. For details, see LICENSE file.
package org.openstreetmap.josm.plugins.opendata.modules.fr.sncf.datasets;
import org.openstreetmap.josm.data.coor.EastNorth;
import org.openstreetmap.josm.data.coor.LatLon;
import org.openstreetmap.josm.data.osm.DataSet;
import org.openstreetmap.josm.data.osm.Node;
public class EquipementsHandler extends SncfDataSetHandler {
private class LambertIICsvHandler extends InternalCsvHandler {
@Override
public LatLon getCoor(EastNorth en, String[] fields) {
// Lambert II coordinates offset by 2000000 (see https://fr.wikipedia.org/wiki/Projection_conique_conforme_de_Lambert#Projections_officielles_en_France_métropolitaine)
return super.getCoor(new EastNorth(en.getX(), en.getY()-2000000), fields);
}
}
public EquipementsHandler() {
super("equipementsgares");
setCsvHandler(new LambertIICsvHandler());
setSingleProjection(lambert4Zones[1]); // Lambert II
}
@Override
public boolean acceptsFilename(String filename) {
return acceptsCsvXlsFilename(filename, "gare_20......");
}
@Override
public void updateDataSet(DataSet ds) {
for (Node n : ds.getNodes()) {
replace(n, "nom gare", "name");
n.put("railway", "station");
}
}
}