Ignore:
Timestamp:
2009-08-30T17:49:38+02:00 (17 years ago)
Author:
guggis
Message:

Cleanup of deprecated data API for OsmPrimitive and Way

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/utilsplugin/src/UtilsPlugin/SimplifyWayAction.java

    r16628 r17361  
    1111import java.util.HashSet;
    1212import java.util.LinkedList;
     13import java.util.List;
    1314
    1415import javax.swing.JOptionPane;
     
    5253                    // bounding box. Otherwise nodes may get deleted that are necessary by
    5354                    // unloaded ways (see Ticket #1594)
    54                     for (Node node : way.nodes) {
     55                    for (Node node : way.getNodes()) {
    5556                        boolean isInsideOneBoundingBox = false;
    5657                        for (Bounds b : bounds) {
     
    105106        Way wnew = new Way(w);
    106107
    107         int toI = wnew.nodes.size() - 1;
    108         for (int i = wnew.nodes.size() - 1; i >= 0; i--) {
     108        int toI = wnew.getNodesCount() - 1;
     109        for (int i = wnew.getNodesCount() - 1; i >= 0; i--) {
    109110            CollectBackReferencesVisitor backRefsV = new CollectBackReferencesVisitor(Main.main.getCurrentDataSet(), false);
    110             backRefsV.visit(wnew.nodes.get(i));
     111            backRefsV.visit(wnew.getNode(i));
    111112            boolean used = false;
    112113            if (backRefsV.data.size() == 1) {
    113                 used = Collections.frequency(w.nodes, wnew.nodes.get(i)) > 1;
     114                used = Collections.frequency(w.getNodes(), wnew.getNode(i)) > 1;
    114115            } else {
    115116                backRefsV.data.remove(w);
     
    117118            }
    118119            if (!used)
    119                 used = wnew.nodes.get(i).isTagged();
     120                used = wnew.getNode(i).isTagged();
    120121
    121122            if (used) {
     
    127128
    128129        HashSet<Node> delNodes = new HashSet<Node>();
    129         delNodes.addAll(w.nodes);
    130         delNodes.removeAll(wnew.nodes);
    131 
    132         if (wnew.nodes.size() != w.nodes.size()) {
     130        delNodes.addAll(w.getNodes());
     131        delNodes.removeAll(wnew.getNodes());
     132
     133        if (wnew.getNodesCount() != w.getNodesCount()) {
    133134            Collection<Command> cmds = new LinkedList<Command>();
    134135            cmds.add(new ChangeCommand(w, wnew));
     
    143144            ArrayList<Node> ns = new ArrayList<Node>();
    144145            simplifyWayRange(wnew, from, to, ns, thr);
    145             for (int j = to - 1; j > from; j--)
    146                 wnew.nodes.remove(j);
    147             wnew.nodes.addAll(from + 1, ns);
     146            List<Node> nodes = wnew.getNodes();
     147            for (int j = to - 1; j > from; j--) {               
     148                nodes.remove(j);               
     149            }           
     150            nodes.addAll(from + 1, ns);
     151            wnew.setNodes(nodes);
    148152        }
    149153    }
     
    154158     */
    155159    public void simplifyWayRange(Way wnew, int from, int to, ArrayList<Node> ns, double thr) {
    156         Node fromN = wnew.nodes.get(from), toN = wnew.nodes.get(to);
     160        Node fromN = wnew.getNode(from), toN = wnew.getNode(to);
    157161
    158162        int imax = -1;
    159163        double xtemax = 0;
    160164        for (int i = from + 1; i < to; i++) {
    161             Node n = wnew.nodes.get(i);
     165            Node n = wnew.getNode(i);
    162166            double xte = Math.abs(EARTH_RAD
    163167                    * xtd(fromN.getCoor().lat() * Math.PI / 180, fromN.getCoor().lon() * Math.PI / 180, toN.getCoor().lat() * Math.PI
     
    172176        if (imax != -1 && xtemax >= thr) {
    173177            simplifyWayRange(wnew, from, imax, ns, thr);
    174             ns.add(wnew.nodes.get(imax));
     178            ns.add(wnew.getNode(imax));
    175179            simplifyWayRange(wnew, imax, to, ns, thr);
    176180        }
Note: See TracChangeset for help on using the changeset viewer.