Changeset 33031 in osm


Ignore:
Timestamp:
2016-10-11T11:23:59+02:00 (8 years ago)
Author:
bastik
Message:

fixed #josm11878 Terracer plugin: error when creating associatedStreet relation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/terracer/src/terracer/TerracerAction.java

    r32426 r33031  
    371371            for (int i = 0; i < nb; ++i) {
    372372                final Way terr;
    373                 if (i > 0 || keepOutline) {
     373                boolean createNewWay = i > 0 || keepOutline;
     374                if (createNewWay) {
    374375                    terr = new Way();
    375376                    // add the tags of the outline to each building (e.g. source=*)
     
    386387                terr.addNode(newNodes[0][i]);
    387388
    388                 ways.add(addressBuilding(terr, street, streetName, associatedStreet, housenumbers, i,
    389                         from != null ? Integer.toString(from + i * step) : null, buildingValue));
    390 
    391                 if (i > 0 || keepOutline) {
     389                addressBuilding(terr, street, streetName, associatedStreet, housenumbers, i,
     390                        from != null ? Integer.toString(from + i * step) : null, buildingValue);
     391
     392                if (createNewWay) {
     393                    ways.add(terr);
    392394                    this.commands.add(new AddCommand(terr));
    393395                } else {
     396                    ways.add(outline);
    394397                    this.commands.add(new ChangeCommand(outline, terr));
    395398                }
     
    408411        } else {
    409412            // Single building, just add the address details
    410             ways.add(addressBuilding(outline, street, streetName, associatedStreet, housenumbers, 0, start, buildingValue));
     413            addressBuilding(outline, street, streetName, associatedStreet, housenumbers, 0, start, buildingValue);
     414            ways.add(outline);
    411415        }
    412416
     
    508512     * @throws UserCancelException
    509513     */
    510     private Way addressBuilding(Way outline, Way street, String streetName, Relation associatedStreet,
     514    private void addressBuilding(Way outline, Way street, String streetName, Relation associatedStreet,
    511515            List<Node> housenumbers, int i, String defaultNumber, String buildingValue) throws UserCancelException {
    512516        Node houseNum = (housenumbers != null && i >= 0 && i < housenumbers.size()) ? housenumbers.get(i) : null;
     
    541545            }
    542546        }
    543         return outline;
    544547    }
    545548
Note: See TracChangeset for help on using the changeset viewer.