Ignore:
Timestamp:
2017-06-21T22:49:23+02:00 (7 years ago)
Author:
giackserva
Message:

[pt_assistant] small refactoring

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/utils/RouteUtils.java

    r33055 r33406  
    4141            return false;
    4242        }
    43         if (r.hasTag("route", "bus") || r.hasTag("route", "trolleybus") || r.hasTag("route", "share_taxi")
    44                 || r.hasTag("route", "tram") || r.hasTag("route", "light_rail") || r.hasTag("route", "subway")
    45                 || r.hasTag("route", "train")) {
    46 
    47             if (!r.hasTag("bus", "on_demand")) {
    48                 return true;
    49             }
    50 
    51         }
    52         return false;
     43
     44        String [] acceptedRouteTags = new String[] {
     45                        "bus", "trolleybus", "share_taxi",
     46                "tram", "light_rail", "subway", "train"};
     47
     48        return r.hasTag("route", acceptedRouteTags)
     49             && !r.hasTag("bus", "on_demand");
    5350    }
    5451
     
    6360    public static boolean isPTStop(RelationMember rm) {
    6461
    65 
    6662        if (rm.getType().equals(OsmPrimitiveType.NODE)) {
    6763                return true;
    6864        }
    6965
    70         if (rm.getType().equals(OsmPrimitiveType.WAY)) {
    71             if (rm.getWay().hasTag("public_transport", "platform") || rm.getWay().hasTag("highway", "platform")
    72                     || rm.getWay().hasTag("railway", "platform")) {
    73                 return true;
    74             }
    75         }
    76 
    77         return false;
    78 
     66        return (rm.getType().equals(OsmPrimitiveType.WAY))
     67            && (rm.getWay().hasTag("public_transport", "platform")
     68                        || rm.getWay().hasTag("highway", "platform")
     69                    || rm.getWay().hasTag("railway", "platform"));
    7970    }
    8071
     
    9687
    9788        if (rm.getType().equals(OsmPrimitiveType.WAY)) {
    98             if (rm.getWay().hasTag("public_transport", "platform") || rm.getWay().hasTag("highway", "platform")
    99                     || rm.getWay().hasTag("railway", "platform")) {
    100                 return false;
    101             }
    102             return true;
     89            return !(rm.getWay().hasTag("public_transport", "platform")
     90                        || rm.getWay().hasTag("highway", "platform")
     91                    || rm.getWay().hasTag("railway", "platform"));
    10392        }
    10493
     
    125114    public static int isOnewayForPublicTransport(Way way) {
    126115
    127         if (OsmUtils.isTrue(way.get("oneway")) || OsmUtils.isReversed(way.get("oneway"))
    128                 || way.hasTag("junction", "roundabout") || way.hasTag("highway", "motorway")) {
    129 
    130             if (!way.hasTag("busway", "lane") && !way.hasTag("busway:left", "lane")
    131                     && !way.hasTag("busway:right", "lane") && !way.hasTag("oneway:bus", "no")
    132                     && !way.hasTag("busway", "opposite_lane") && !way.hasTag("oneway:psv", "no")
     116        if (OsmUtils.isTrue(way.get("oneway"))
     117                        || OsmUtils.isReversed(way.get("oneway"))
     118                || way.hasTag("junction", "roundabout")
     119                || way.hasTag("highway", "motorway")) {
     120
     121            if (!way.hasTag("busway", "lane")
     122                    && !way.hasTag("busway", "opposite_lane")
     123                        && !way.hasTag("busway:left", "lane")
     124                    && !way.hasTag("busway:right", "lane")
     125                    && !way.hasTag("oneway:bus", "no")
     126                    && !way.hasTag("oneway:psv", "no")
    133127                    && !way.hasTag("trolley_wire", "backward")) {
    134128
     
    136130                    return -1;
    137131                }
    138 
    139132                return 1;
    140 
    141133            }
    142 
    143         }
    144 
     134        }
    145135        return 0;
    146136    }
     
    164154        Node w2LastNode = w2.lastNode();
    165155
    166         if (w1FirstNode == w2FirstNode || w1FirstNode == w2LastNode || w1LastNode == w2FirstNode
    167                 || w1LastNode == w2LastNode) {
    168             return true;
    169         }
    170 
    171         return false;
     156        return w1FirstNode == w2FirstNode
     157                        || w1FirstNode == w2LastNode
     158                        || w1LastNode == w2FirstNode
     159                || w1LastNode == w2LastNode;
    172160    }
    173161
     
    206194     */
    207195    public static boolean isWaySuitableForBuses(Way way) {
    208         if (way.hasTag("highway", "motorway") || way.hasTag("highway", "trunk") || way.hasTag("highway", "primary")
    209                 || way.hasTag("highway", "secondary") || way.hasTag("highway", "tertiary")
    210                 || way.hasTag("highway", "unclassified") || way.hasTag("highway", "road")
    211                 || way.hasTag("highway", "residential") || way.hasTag("highway", "service")
    212                 || way.hasTag("highway", "motorway_link") || way.hasTag("highway", "trunk_link")
    213                 || way.hasTag("highway", "primary_link") || way.hasTag("highway", "secondary_link")
    214                 || way.hasTag("highway", "tertiary_link") || way.hasTag("highway", "living_street")
    215                 || way.hasTag("highway", "bus_guideway") || way.hasTag("highway", "road")
    216                 || way.hasTag("cycleway", "share_busway") || way.hasTag("cycleway", "shared_lane")) {
     196
     197        String [] acceptedHighwayTags = new String [] {
     198                        "motorway", "trunk", "primary", "secondary", "tertiary",
     199                "unclassified" , "road", "residential", "service",
     200                "motorway_link", "trunk_link", "primary_link", "secondary_link",
     201                "tertiary_link", "living_street", "bus_guideway", "road"};
     202
     203        if(way.hasTag("highway", acceptedHighwayTags)
     204                || way.hasTag("cycleway", "share_busway")
     205                || way.hasTag("cycleway", "shared_lane")) {
    217206            return true;
    218207        }
    219208
    220         if (way.hasTag("highway", "pedestrian") && (way.hasTag("bus", "yes") || way.hasTag("psv", "yes")
    221                 || way.hasTag("bus", "designated") || way.hasTag("psv", "designated"))) {
     209        if (way.hasTag("highway", "pedestrian")
     210                        && (way.hasTag("bus", "yes")
     211                                        || way.hasTag("psv", "yes")
     212                                        || way.hasTag("bus", "designated")
     213                                        || way.hasTag("psv", "designated"))) {
    222214            return true;
    223215        }
     
    233225    public static boolean isWaySuitableForPublicTransport(Way way) {
    234226
    235         if (isWaySuitableForBuses(way) || way.hasTag("railway", "tram") || way.hasTag("railway", "subway")
    236                 || way.hasTag("railway", "subway") || way.hasTag("railway", "light_rail")
    237                 || way.hasTag("railway", "rail")) {
    238             return true;
    239         }
    240 
    241         return false;
    242 
    243     }
    244 
     227        String [] acceptedRailwayTags = new String [] {
     228                        "tram", "subway", "light_rail", "rail"};
     229
     230        return isWaySuitableForBuses(way)
     231                        || way.hasTag("railway", acceptedRailwayTags);
     232    }
    245233}
Note: See TracChangeset for help on using the changeset viewer.