Ignore:
Timestamp:
2013-11-25T02:47:26+01:00 (11 years ago)
Author:
donvip
Message:

[josm_opendata] update plugin and toulouse module

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/datasets/DataSetUpdater.java

    r28053 r30097  
    2121
    2222import org.openstreetmap.josm.Main;
     23import org.openstreetmap.josm.actions.SimplifyWayAction;
     24import org.openstreetmap.josm.command.SequenceCommand;
    2325import org.openstreetmap.josm.data.osm.DataSet;
     26import org.openstreetmap.josm.data.osm.OsmPrimitive;
     27import org.openstreetmap.josm.data.osm.Relation;
     28import org.openstreetmap.josm.data.osm.Way;
    2429import org.openstreetmap.josm.plugins.opendata.core.OdConstants;
    2530
     
    4045                        handler.checkDataSetSource(dataSet);
    4146                        handler.checkNames(dataSet);
     47                        // Replace multipolygons with single untagged member by their sole member
     48                        for (Relation r : dataSet.getRelations()) {
     49                            if (r.isMultipolygon() && r.getMembersCount() == 1) {
     50                                OsmPrimitive outer = r.getMember(0).getMember();
     51                                if (!outer.isTagged()) {
     52                                    r.remove("type");
     53                                    r.removeMember(0);
     54                        outer.setKeys(r.getKeys());
     55                                    dataSet.removePrimitive(r);
     56                                }
     57                            }
     58                        }
     59                        // Simplify ways geometries
     60                        for (Way w : dataSet.getWays()) {
     61                            SequenceCommand command = Main.main.menu.simplifyWay.simplifyWay(w, 0.25);
     62                            if (command != null) {
     63                                Main.main.undoRedo.addNoRedraw(command);
     64                            }
     65                        }
    4266                }
    4367        }
Note: See TracChangeset for help on using the changeset viewer.