[Script] WME Validator 2020.04.12 (PLACES BETA)

Discussion for the unofficial, community-developed addons, extensions and scripts built for the Waze Map Editor.

The official index of these tools is the Community Plugins, Extensions and Tools wiki page.

Moderators: Unholy, bextein, Glodenox, JustinS83

Forum rules
Discussion for the unofficial, community-developed addons, extensions and scripts built for the Waze Map Editor.

DO NOT START a new thread unless it is about a new idea. Keep discussion of existing tools within the main thread for that tool.

The official index of these tools is the Community Plugins, Extensions and Tools wiki page.

Re: [Script] WME Validator 0.5.5 (BETA) / 28.01.2014

Postby davidg666 » Wed Jan 29, 2014 10:36 am

Thanks for all the work so far! Something I've noticed in one of the country-specific checks you made for Ireland: this segment here reports "Incorrect Major Highway name" because of the fada (accent) in its name. The correct name is "N62 Cúchulainn", but if that's changed to "N62 Cuchulainn" (removing the accent on the first 'u') then Validator doesn't think it's incorrect any more.

Irish placenames use similar (but not all the same) characters as English placenames; as well as the usual [a-zA-Z] characters, fadas (accents) on vowels are also valid: [áéíóúÁÉÍÓÚ].

++David \ davidg666
Country manager and local champ for Ireland
AM for Dublin, Wicklow, Kilkenny, Wexford, Graiguenamanagh and Enniscorthy

[ img ]
davidg666
Waze Local Champs
Waze Local Champs
 
Posts: 1000
Joined: Thu Jan 12, 2012 6:58 pm
Location: Wicklow, Ireland
Has thanked: 91 times
Been thanked: 216 times

Re: [Script] WME Validator 0.6.1 (BETA) / 05.02.2014

Postby davidg666 » Wed Feb 05, 2014 8:53 pm

I've found what I consider to a bug: unneeded node reported between two segments where one of the segments has time-based restrictions and the other doesn't.

If you look here, there's a pair of segments, and Validator considers the node between them to be unneeded, however the top segment has time-based restrictions (there's a gate there that's closed at night) but the lower segment has no such restriction.

If you think this is a real bug, can you disable reporting of unneeded nodes in cases where one segment has time-based restrictions and the other doesn't? I expect this is a change that should be common to all countries, not just Ireland.

thanks!

++David \ davidg666
Country manager and local champ for Ireland
AM for Dublin, Wicklow, Kilkenny, Wexford, Graiguenamanagh and Enniscorthy

[ img ]
davidg666
Waze Local Champs
Waze Local Champs
 
Posts: 1000
Joined: Thu Jan 12, 2012 6:58 pm
Location: Wicklow, Ireland
Has thanked: 91 times
Been thanked: 216 times

Re: [Script] WME Validator 0.6.1 (BETA) / 05.02.2014

Postby davidg666 » Wed Feb 05, 2014 9:41 pm

AlanOfTheBerg wrote:
davidg666 wrote:If you look here, there's a pair of segments, and Validator considers the node between them to be unneeded, however the top segment has time-based restrictions (there's a gate there that's closed at night) but the lower segment has no such restriction.

I don't get this. Why would you ever traverse the lower segment just to turn around? Why not have a single segment with the restriction? It doesn't go anywhere else, so regardless of whether it is one or two segments, the routing effect is identical. Or else I'm not getting it...

If Waze thinks the destination is closer to the segment with restrictions than any other segment, it will override the segment restrictions. This is just like any turn restriction.

The only thing this segment restriction does is affect travel along the whole segment, so having two parts is unnecessary.

There are two buildings on the inside of the gate that are accessible at all times from inside the park (it's a very large park with roads throughout that doesn't close completely at night - just the smaller gates close at night). Access to these buildings shouldn't be restricted, only passage *through* the gate should be restricted.

I agree that restricting one single segment would have the same effect on routing because the restriction just imposes a routing penalty and there's no other way to the part of this road that remains accessible, however it feels wrong to mark a bit of road as time-restricted when it isn't.

++David \ davidg666
Country manager and local champ for Ireland
AM for Dublin, Wicklow, Kilkenny, Wexford, Graiguenamanagh and Enniscorthy

[ img ]
davidg666
Waze Local Champs
Waze Local Champs
 
Posts: 1000
Joined: Thu Jan 12, 2012 6:58 pm
Location: Wicklow, Ireland
Has thanked: 91 times
Been thanked: 216 times

[Script] WME Validator 0.6.2 (BETA) / 07.02.2014

Postby davielde » Sun Feb 09, 2014 10:09 pm

I currently get an indicator that a median u-turn segment is too short when it is actually a one way cross street that intersects with a split road. No direct left turn is enabled from the split road onto the cross street, so it's not technically a u-turn segment. Would it be possible to disable this when the street name of the "u-turn" segment is different from the intersecting road (and not "no street" or "u-turn" as well), when there are more than three segments intersecting at a junction, or some better solution? On tapatalk, so no permalink right now unfortunately.
[ img ]
CM: USA
SM: Michigan, Vermont
AM: Ann Arbor, MI & Thunder Bay, ON
WME Michigan
davielde
 
Posts: 1219
Joined: Tue Sep 17, 2013 2:01 pm
Location: Michigan, USA
Has thanked: 461 times
Been thanked: 759 times

Re: [Script] WME Validator 0.6.2 (BETA) / 07.02.2014

Postby davielde » Tue Feb 11, 2014 3:29 pm

berestovskyy wrote:
davielde wrote:I currently get an indicator that a median u-turn segment is too short when it is actually a one way cross street that intersects with a split road.

Sorry, I would appreciate a permalink. I'm looking into the code and the situation you describe is impossible :?


Now that I think it through, I believe that it was most likely a connectivity issue with the cross street segments that was causing the "u-turn" warning. The issues are reported in separate sections of the Validator report, but I clicked on the u-turn warning and likely fixed the glaring red connectivity issue at the same time. The u-turn problem was what stayed on the brain because it is more unique, whereas I've been fixing tons of connectivity problems recently.

Awesome tool!
[ img ]
CM: USA
SM: Michigan, Vermont
AM: Ann Arbor, MI & Thunder Bay, ON
WME Michigan
davielde
 
Posts: 1219
Joined: Tue Sep 17, 2013 2:01 pm
Location: Michigan, USA
Has thanked: 461 times
Been thanked: 759 times

Re: [Script] WME Validator 0.7.1 (BETA) / 20.02.2014

Postby davielde » Sat Feb 22, 2014 6:53 pm

petervdveen wrote:Another request ;-)
Is it possible to get a report when roads are connected to driveable roads with a specific streetname?

In this case the following:
busbaan
spoorlijn
tram
metro

Those should never be connected to driveable segments.

Could that either be country-specific or provide the option to enable only certain street names? We have a "Metro Parkway" that is the official name and is a major highway.
[ img ]
CM: USA
SM: Michigan, Vermont
AM: Ann Arbor, MI & Thunder Bay, ON
WME Michigan
davielde
 
Posts: 1219
Joined: Tue Sep 17, 2013 2:01 pm
Location: Michigan, USA
Has thanked: 461 times
Been thanked: 759 times

Re: [Script] WME Validator 0.9.4 (BETA) / 30.03.2014

Postby davielde » Fri Apr 04, 2014 2:01 pm

As mentioned earlier in this thread and discussed in a split one, I thought that we were going to let the elevation issue sleep ;)
[ img ]
CM: USA
SM: Michigan, Vermont
AM: Ann Arbor, MI & Thunder Bay, ON
WME Michigan
davielde
 
Posts: 1219
Joined: Tue Sep 17, 2013 2:01 pm
Location: Michigan, USA
Has thanked: 461 times
Been thanked: 759 times

Re: City Smudges

Postby davielde » Tue Apr 08, 2014 3:12 am

kentsmith9 wrote:When present they create a new city entry because that segment does not match the other segments around them. Once they are identified you simply update the segment state name. I am currently running a test in https://www.waze.com/forum/viewtopic.php?f=251&t=81200 to track when the city layer gets corrected without posting the entries in the city smudge form. It may turn out they will not get updated ever without using the form.


The "no state" smudge would be an easy check because Validator would only need to look for a stateID of 1. Not all smudges are due to the no state issue though. I corrected "F, Michigan" a few weeks ago; and the combination of "Canton, MI", "Canton Township, MI", "Canton Township (no state)", and "Canton Twp, MI" was a fun exercise too.

In short, true editor-created smudges can always be removed without using the form (if you're impatient or it only affects a small number of segments). Changes to Waze-provided city polygons require you to use the form though. While mass editing is obviously discouraged as noted in the wiki, you can make a smudge or any legitimate editor-created city disappear by changing the city name in WME or making it No City, and a regular tile update takes care of it. You could mark all segments and objects associated with a Waze-provided city as "No City" or something else, and it would never update the city unless you use the smudged city form.

I've been doing some detailed research with some examples in Michigan after GizmoGuy411 had me look at an issue remaining after a name change using the city smudge form. The "name" changed, but the "English name" did not, which created an issue where--from a WME display standpoint--there are two neighboring "Addison, Michigan" options that are completely identical. The only way to tell the difference is using Colour Highlights or looking at the JSON response from the web request. Right now, my thoughts are still fairly haphazard and stream of consciousness, but I was eventually hoping to post soon with that and a few other smudge-related items.

Kent, you're actually the person that I eventually wanted to touch base with because it looks like there was a wiki update from mid-February that listed out the options under "Need assistance from the Waze team" with no guidance on what each option would do based on people's experience with using the form. I know that there is a dead thread in the Wiki Updates forum discussing smudges to some extent, but perhaps we can create a page update thread specifically for the smudge city and continue discussion there, or you could forgive me for resurrecting the old one? The wiki really needs to provide more insight into name versus english name, explain how Waze-provided cities have english names while editor-created ones do not, and a few other things.
[ img ]
CM: USA
SM: Michigan, Vermont
AM: Ann Arbor, MI & Thunder Bay, ON
WME Michigan
davielde
 
Posts: 1219
Joined: Tue Sep 17, 2013 2:01 pm
Location: Michigan, USA
Has thanked: 461 times
Been thanked: 759 times

Re: [Script] WME Validator 1.1.2 / 01.10.2014

Postby davielde » Sun Oct 05, 2014 7:41 pm

MGODLEW wrote:Feature Request:
Flag/Highlight/compile a list of all parking lot landmarks (Places). Since many new editors go on a parking lot landmark adding spree not knowing about our guidelines for adding parking lots to the map, it would be nice to see an entire list of all of them in the area to validate valid or unnecessary parking lots.


Check out WME Data Store for an exportable Place list in the short term: https://www.waze.com/forum/viewtopic.ph ... 69#p911491

I'll likely be working with doctorkb and the Toolbox team to bring something similar to "Select Segments" to Toolbox "soon", but for Places.
[ img ]
CM: USA
SM: Michigan, Vermont
AM: Ann Arbor, MI & Thunder Bay, ON
WME Michigan
davielde
 
Posts: 1219
Joined: Tue Sep 17, 2013 2:01 pm
Location: Michigan, USA
Has thanked: 461 times
Been thanked: 759 times

Re: [Script] WME Validator 1.1.19 / 04.06.2016

Postby dbcm » Mon Aug 29, 2016 9:05 am

Hi guys, i've a request for you.

I found a problem that WME Validator is not warning us about.

In a nutshell, there is a segment with one way, pointing to a dead-end, connected are one or more segments with a red arrow to that segment.

Basically you have a blackhole and you don't want people to go in.

You can see it here:
https://www.waze.com/editor/?env=row&lo ... ,140027351

in case someone fix this, here are the screenshots.

[ img ]
[ img ]


I'm detecting this issue with this prototype code:

Code: Select all
// check if you can drive from seg1 to seg2
var hasGreenFlag = function(seg, segs) {
/*
    var x = Waze.model.nodes.get(150020468);
    var s = Waze.model.segments.get(140026991);
    var s2 = Waze.model.segments.get(140027351);
    var s3 = Waze.model.segments.get(140027352);
    x.getDirectionBetweenSegments(s, s2);
    x.getDirectionBetweenSegments(s2, s);
    x.getDirectionBetweenSegments(s, s3);
    x.getDirectionBetweenSegments(s3, s);
    s2.attributes.toConnections[140026991]
*/
           
   var att = seg.attributes;
   var segId = att.id;
   
   debugger;

   for (var i = 0; i < segs.length; i++) {
      var nodeSegId = segs[i];
      if (segId === nodeSegId)
         continue;

        var nodeSeg = Waze.model.segments.get(nodeSegId);
       
        if (nodeSeg.attributes.toConnections[segId] === true) {
            return true;
        }
        if (nodeSeg.attributes.fromConnections[segId]=== true) {
            return true;
        }
       
    }
   
    return false;

}

// fix one way segments that connects to a black hole
var fxcOneWay2BlackHole = function(seg) {
   seg = Waze.model.segments.get(140026991);

   if (document.getElementById('fxc-oneway2blackhole').checked !== true) {
      return;
   }

   var attributes = seg.attributes;
   var segRoadType = attributes.roadType;

   // only process road cars...
   if (!isDrivable(seg)) {
      return;
   }

   var segId = attributes.id;
   var segRevDir = attributes.revDirection;
   var segFwdDir = attributes.fwdDirection;
   
   
   if (segRevDir === false && segFwdDir === false) {
      return;
   }
      
   if (segRevDir === false || segFwdDir === false) {
      var fromNodeId = attributes.fromNodeID;
      var fromNode = Waze.model.nodes.get(fromNodeId);
      var toNodeId = attributes.toNodeID;
      var toNode = Waze.model.nodes.get(toNodeId);

      var toNodeSegIDs = Waze.model.nodes.objects[toNodeId].attributes.segIDs;
      var fromNodeSegIDs = Waze.model.nodes.objects[fromNodeId].attributes.segIDs;

      if ((segFwdDir === false && fromNodeSegIDs.length === 1) ||
         (segRevDir === false && toNodeSegIDs.length === 1)) {
         doLog("Oh no! One way to a black hole!!!!");

         //debugger;

         var fattr = {};
         fattr.revDirection = fattr.fwdDirection = true;
         setSegmentAttributes(seg, fattr);

         var WazeActionModifyConnection = require("Waze/Action/ModifyConnection");
         if (fromNodeSegIDs.length === 1) {
                var oneGreenFlag = hasGreenFlag(seg, toNodeSegIDs);
               
            for (var j = 0; j < toNodeSegIDs.length; j++) {
               var toNodeSegID = toNodeSegIDs[j];
               if (segId === toNodeSegID)
                  continue;

               var toNodeSeg = getSegment(toNodeSegID);
               if (isDrivable(toNodeSeg)) {
                  Waze.model.actionManager.add(new WazeActionModifyConnection(segId, toNode, toNodeSegID, true));
                        // if what you have is red flags, put them all green
                        if (!oneGreenFlag) {
                      Waze.model.actionManager.add(new WazeActionModifyConnection(toNodeSegID, toNode, segId, true));
                        }
               } else {
                  doLog("Oh LOOK, drivable connected to non-drivable!!!");
               }
            }
         }
         if (toNodeSegIDs.length === 1) {
                var oneGreenFlag = hasGreenFlag(seg, fromNodeSegIDs);
               
            for (var i = 0; i < fromNodeSegIDs.length; i++) {
               var fromNodeSegID = fromNodeSegIDs[i];
               if (segId === fromNodeSegID)
                  continue;

               var fromNodeSeg = getSegment(fromNodeSegID);
               if (isDrivable(fromNodeSeg)) {
                  //console.log(segId+" _ "+ fromNodeSegID);
                  Waze.model.actionManager.add(new WazeActionModifyConnection(segId, fromNode, fromNodeSegID, true));
                        // if what you have is red flags, put them all green
                        if (!oneGreenFlag) {   
                            Waze.model.actionManager.add(new WazeActionModifyConnection(fromNodeSegID, fromNode, segId, true));
                        }
               } else {
                  doLog("Oh LOOK, drivable connected to non-drivable!!!");
               }
            }
         }
      }
   }

}
It's so Magic™ | Y U N0 W0RK? ¯\_(ツ)_/¯
dbcm
Coordinators
Coordinators
 
Posts: 633
Joined: Mon Feb 08, 2010 12:25 pm
Location: Berlengas, Portugal
Has thanked: 279 times
Been thanked: 692 times

PreviousNext

Return to Addons, Extensions, and Scripts

Who is online

Users browsing this forum: JimboBaggins1966, jm6087, Mythdraug