Changeset 600 in josm


Ignore:
Timestamp:
2008-04-12T02:08:37+02:00 (16 years ago)
Author:
framm
Message:
  • for "align in line", use nodes from selected way if none selected; patch by Zorko <zorkos@…>. Closes #687
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java

    r469 r600  
    1717import org.openstreetmap.josm.data.osm.Node;
    1818import org.openstreetmap.josm.data.osm.OsmPrimitive;
     19import org.openstreetmap.josm.data.osm.Way;
    1920
    2021/**
     
    4546                                itnodes.add((Node)osm);
    4647                        }
     48                // special case if no single nodes are selected and exactly one way is:
     49                // then use the way's nodes
     50                if ((nodes.size() == 0) && (sel.size() == 1))
     51                        for (OsmPrimitive osm : sel)
     52                                if (osm instanceof Way) {
     53                                        nodes.addAll(((Way)osm).nodes);
     54                                        itnodes.addAll(((Way)osm).nodes);
     55                                }
    4756                if (nodes.size() < 3) {
    4857                        JOptionPane.showMessageDialog(Main.parent, tr("Please select at least three nodes."));
     
    6069                        itnodes.remove(n);
    6170                        for (Node m : itnodes) {
    62                                 double dist = Math.sqrt(n.eastNorth.distance(m.eastNorth));
     71                                double dist = Math.sqrt(n.eastNorth.distanceSq(m.eastNorth));
    6372                                if (dist > distance) {
    6473                                        nodea = n;
Note: See TracChangeset for help on using the changeset viewer.