diff --git a/data/core.yaml b/data/core.yaml index e7ad45c11..61343d5dc 100644 --- a/data/core.yaml +++ b/data/core.yaml @@ -647,273 +647,6 @@ en: out: Zoom out cannot_zoom: "Cannot zoom out further in current mode." full_screen: Toggle Full Screen - keepRight: - keepRight: Error - - tooltip: Q/A data from keepright.at - title: Edit Error - detail_title: Error - detail_description: Description - inputPlaceholder: Enter a comment to share with other users. - newComment: New Comment - upload_explanation: Your comments will be publicly visible to all keepRight.at users. - upload_explanation_with_user: "Your comments as {user} will be publicly visible to all keepRight.at users." - resolve_comment: Comment and Resolve - ignore_comment: Comment and Ignore - resolve: Resolve - ignore: Ignore - toggle-on: All on - toggle-off: All off - entities: - node: node - way: way - relation: relation - highway: highway - cycleway: cycleway - waterway: waterway - riverbank: riverbank - errorTypes: - errors: - _30: - description: 'non-closed_areas' - tooltip: 'This way is tagged with {var1}={var2} and should be closed-loop' - _40: - description: 'dead-ended one-ways' - tooltip: 'The first node (id {var1}) of this one-way is not connected to any other way' - _41: - description: '' - tooltip: 'The last node (id {var1}) of this one-way is not connected to any other way' - _42: - description: '' - tooltip: 'This node cannot be reached because one-ways only lead away from here' - _43: - description: '' - tooltip: 'You cannot escape from this node because one-ways only lead to here' - _50: - description: 'almost-junctions' - tooltip: 'This node is very close but not connected to way #{var1}' - _70: - description: 'missing tags' - tooltip: 'This {var1} has an empty tag: {var2}' - _71: - description: 'way without tags' - tooltip: 'This way has no tags' - _72: - description: 'node without tags' - tooltip: 'This node is not member of any way and doesn''t have any tags' - _90: - description: 'motorways without ref' - tooltip: 'This way is tagged as motorway and therefore needs a ref nat_ref or int_ref tag' - _100: - description: 'places of worship without religion' - tooltip: 'This {var1} is tagged as place of worship and therefore needs a religion tag' - _110: - description: 'point of interest without name' - tooltip: 'This node is tagged as {var1} and therefore needs a name tag' - _120: - description: 'ways without nodes' - tooltip: 'This way has just one single node' - _130: - description: 'floating islands' - tooltip: 'This way is not connected to the rest of the map' - _150: - description: 'railway crossing without tag' - tooltip: 'This crossing of a highway and a railway needs to be tagged as railway=crossing or railway=level_crossing' - _160: - description: 'wrongly used railway tag' - tooltip: 'There are ways in different layers coming together in this railway crossing. There are ways tagged as tunnel or bridge coming together in this railway crossing' - _170: - description: 'FIXME tagged items' - tooltip: '{var1}' - _180: - description: 'relations without type' - tooltip: 'This relation has no type tag which is mandatory for relations' - _190: - description: 'intersections without junctions' - tooltip: 'Finds way crossings on same layer without common node as a junction' - _191: - description: 'highway-highway' - tooltip: 'This {var1} intersects the {var2} #{var3} but there is no junction node' - _192: - description: 'highway-waterway' - tooltip: 'This {var1} intersects the {var2} #{var3}' - _193: - description: 'highway-riverbank' - tooltip: 'This {var1} intersects the {var2} #{var3}' - _194: - description: 'waterway-waterway' - tooltip: 'This {var1} intersects the {var2} #{var3} but there is no junction node' - _195: - description: 'cycleway-cycleway' - tooltip: 'This {var1} intersects the {var2} #{var3} but there is no junction node' - _196: - description: 'highway-cycleway' - tooltip: 'This {var1} intersects the {var2} #{var3} but there is no junction node' - _197: - description: 'cycleway-waterway' - tooltip: 'This {var1} intersects the {var2} #{var3}' - _198: - description: 'cycleway-riverbank' - tooltip: 'This {var1} intersects the {var2} #{var3}' - _200: - description: 'overlapping ways' - tooltip: 'Finds overlapping ways on same layer' - _201: - description: 'highway-highway' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _202: - description: 'highway-waterway' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _203: - description: 'highway-riverbank' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _204: - description: 'waterway-waterway' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _205: - description: 'cycleway-cycleway' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _206: - description: 'highway-cycleway' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _207: - description: 'cycleway-waterway' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _208: - description: 'cycleway-riverbank' - tooltip: 'This {var1} overlaps the {var2} #{var3}' - _210: - description: 'loopings' - tooltip: 'These errors contain self intersecting ways' - _211: - description: '' - tooltip: 'This way contains more than one node at least twice. Nodes are {var1}. This may or may not be an error' - _212: - description: '' - tooltip: 'This way has only two different nodes and contains one of them more than once' - _220: - description: 'misspelled tags' - tooltip: 'This {var1} is tagged {var2}={var3} where {var4} looks like {var5}' - _221: - description: '' - tooltip: 'The key of this {var1} tag is key {var2}' - _230: - description: 'layer conflicts' - tooltip: '' - _231: - description: 'mixed layers intersection' - tooltip: 'This node is a junction of ways on different layers: {var1}' - _232: - description: 'strange layers' - tooltip: 'This {var1} is tagged with layer {var2}. This need not be an error but it looks strange' - _270: - description: 'motorways connected directly' - tooltip: 'This node is a junction of a motorway and a highway other than motorway, motorway_link, trunk, rest_area or construction. Service or unclassified is only valid if it has access=no/private or it leads to a motorway service area or if it is a service=parking_aisle.' - _280: - description: 'boundaries' - tooltip: '' - _281: - description: 'missing name' - tooltip: 'This boundary has no name' - _282: - description: 'missing admin level' - tooltip: 'The boundary of {var1} has no valid numeric admin_level. Please do not use admin levels like for example 6;7. Always tag the lowest admin_level of all boundaries' - _283: - description: 'no closed loop' - tooltip: 'The boundary of {var1} is not closed-loop' - _284: - description: 'splitting boundary' - tooltip: 'The boundary of {var1} splits here' - _285: - description: 'admin_level too high' - tooltip: 'This boundary-way has admin_level {var1} but belongs to a relation with lower admin_level (higher priority); it should have the lowest admin_level of all relations' - _290: - description: 'restrictions' - tooltip: 'Analyses all relations tagged type=restriction or following variations type=restriction:hgv type=restriction:caravan type=restriction:motorcar type=restriction:bus type=restriction:agricultural type=restriction:motorcycle type=restriction:bicycle and type=restriction:hazmat' - _291: - description: 'missing type' - tooltip: 'This turn-restriction has no known restriction type' - _292: - description: 'missing from way' - tooltip: 'A turn-restriction needs exactly one {var1} member. This one has {var2}' - _293: - description: 'missing to way' - tooltip: 'A turn-restriction needs exactly one {var1} member. This one has {var2}' - _294: - description: 'from or to not a way' - tooltip: 'From- and To-members of turn restrictions need to be ways. {var1}' - _295: - description: 'via is not on the way ends' - tooltip: 'via (node #{var1}) is not the first or the last member of from (way #{var2})' - _296: - description: 'wrong restriction angle' - tooltip: 'restriction type is {var1} but angle is {var2} degrees. Maybe the restriction type is not appropriate?' - _297: - description: 'wrong direction of to member' - tooltip: 'wrong direction of to way {var1}' - _298: - description: 'already restricted by oneway' - tooltip: 'entry already prohibited by oneway tag on {var1}' - _310: - description: 'roundabouts' - tooltip: 'Analyses ways with tag junction=roundabout. More then one way can form a roundabout. It supports tag oneway=-1' - _311: - description: 'not closed loop' - tooltip: 'This way is part of a roundabout but is not closed-loop. (split carriageways approaching a roundabout should not be tagged as roundabout)' - _312: - description: 'wrong direction' - tooltip: 'If this roundabout is in a country with right-hand traffic then its orientation goes the wrong way around | If this roundabout is in a country with left-hand traffic then its orientation goes the wrong way around | If this mini_roundabout is in a country with right-hand traffic then its orientation goes the wrong way around | If this mini_roundabout is in a country with left-hand traffic then its orientation goes the wrong way around' - _313: - description: 'faintly connected' - tooltip: 'This roundabout has only {var1} other roads connected. Roundabouts typically have three' - _320: - description: '*_link connections' - tooltip: 'This way is tagged as highway={var1}_link but doesn''t have a connection to any other {var1} or {var1}_link' - _350: - description: 'bridge-tags' - tooltip: 'This bridge doesn''t have a tag in common with its surrounding ways that shows the purpose of this bridge. There should be one of these tags: {var1}' - _370: - description: 'doubled places' - tooltip: 'This node has tags in common with the surrounding way #{var1} and seems to be redundand | This node has tags in common with the surrounding way #{var1} (including the name {var2}) and seems to be redundand' - _380: - description: 'non-physical use of sport-tag' - tooltip: 'This way is tagged {var1} but has no physical tag like e.g. leisure, building, amenity or highway' - _400: - description: 'geometry glitches' - tooltip: '' - _401: - description: 'missing turn restriction' - tooltip: 'ways {var1} and {var2} join in a very sharp angle here and there is no oneway tag or turn restriction that prevents turning from way {var1} to {var2}' - _402: - description: 'impossible angles' - tooltip: 'this way bends in a very sharp angle here' - _410: - description: 'website' - tooltip: 'Web pages are analyzed. Web page is defined by any of the following tags website=* url=* website:mobile=* contact:website=* contact:url=* image=* source:website=* or source:url=*' - _411: - description: 'http error' - tooltip: 'The URL ({var1}) cannot be opened (HTTP status code {var2})' - _412: - description: 'domain hijacking' - tooltip: 'Possible domain squatting: {var1}. Suspicious text is: "{var2}"' - _413: - description: 'non-match' - tooltip: 'Content of the URL ({var1}) did not contain these keywords: ({var2})' - warnings: - _20: - description: 'multiple nodes on the same spot' - tooltip: 'There is more than one node in this spot. Offending node IDs: {var1}' - _60: - description: 'depreciated tags' - tooltip: 'This {var1} uses deprecated tag {var2}={var3}. Please use {var4} instead!' - _300: - description: 'missing maxspeed' - tooltip: 'missing maxspeed tag' - _360: - description: 'language unknown' - tooltip: 'It would be nice if this {var1} had an additional tag name:XX={var2} where XX shows the language of its name {var2}' - _390: - description: 'missing tracktype' - tooltip: This track doesn't have a tracktype QA: keepRight: tooltip: automatically detected errors from keepright.at diff --git a/dist/locales/en.json b/dist/locales/en.json index 715d0e153..ed5847ee5 100644 --- a/dist/locales/en.json +++ b/dist/locales/en.json @@ -787,358 +787,6 @@ }, "cannot_zoom": "Cannot zoom out further in current mode.", "full_screen": "Toggle Full Screen", - "keepRight": { - "keepRight": "Error -", - "tooltip": "Q/A data from keepright.at", - "title": "Edit Error", - "detail_title": "Error", - "detail_description": "Description", - "inputPlaceholder": "Enter a comment to share with other users.", - "newComment": "New Comment", - "upload_explanation": "Your comments will be publicly visible to all keepRight.at users.", - "upload_explanation_with_user": "Your comments as {user} will be publicly visible to all keepRight.at users.", - "resolve_comment": "Comment and Resolve", - "ignore_comment": "Comment and Ignore", - "resolve": "Resolve", - "ignore": "Ignore", - "toggle-on": "All on", - "toggle-off": "All off", - "entities": { - "node": "node", - "way": "way", - "relation": "relation", - "highway": "highway", - "cycleway": "cycleway", - "waterway": "waterway", - "riverbank": "riverbank" - }, - "errorTypes": { - "errors": { - "_30": { - "description": "non-closed_areas", - "tooltip": "This way is tagged with {var1}={var2} and should be closed-loop" - }, - "_40": { - "description": "dead-ended one-ways", - "tooltip": "The first node (id {var1}) of this one-way is not connected to any other way" - }, - "_41": { - "description": "", - "tooltip": "The last node (id {var1}) of this one-way is not connected to any other way" - }, - "_42": { - "description": "", - "tooltip": "This node cannot be reached because one-ways only lead away from here" - }, - "_43": { - "description": "", - "tooltip": "You cannot escape from this node because one-ways only lead to here" - }, - "_50": { - "description": "almost-junctions", - "tooltip": "This node is very close but not connected to way #{var1}" - }, - "_70": { - "description": "missing tags", - "tooltip": "This {var1} has an empty tag: {var2}" - }, - "_71": { - "description": "way without tags", - "tooltip": "This way has no tags" - }, - "_72": { - "description": "node without tags", - "tooltip": "This node is not member of any way and doesn't have any tags" - }, - "_90": { - "description": "motorways without ref", - "tooltip": "This way is tagged as motorway and therefore needs a ref nat_ref or int_ref tag" - }, - "_100": { - "description": "places of worship without religion", - "tooltip": "This {var1} is tagged as place of worship and therefore needs a religion tag" - }, - "_110": { - "description": "point of interest without name", - "tooltip": "This node is tagged as {var1} and therefore needs a name tag" - }, - "_120": { - "description": "ways without nodes", - "tooltip": "This way has just one single node" - }, - "_130": { - "description": "floating islands", - "tooltip": "This way is not connected to the rest of the map" - }, - "_150": { - "description": "railway crossing without tag", - "tooltip": "This crossing of a highway and a railway needs to be tagged as railway=crossing or railway=level_crossing" - }, - "_160": { - "description": "wrongly used railway tag", - "tooltip": "There are ways in different layers coming together in this railway crossing. There are ways tagged as tunnel or bridge coming together in this railway crossing" - }, - "_170": { - "description": "FIXME tagged items", - "tooltip": "{var1}" - }, - "_180": { - "description": "relations without type", - "tooltip": "This relation has no type tag which is mandatory for relations" - }, - "_190": { - "description": "intersections without junctions", - "tooltip": "Finds way crossings on same layer without common node as a junction" - }, - "_191": { - "description": "highway-highway", - "tooltip": "This {var1} intersects the {var2} #{var3} but there is no junction node" - }, - "_192": { - "description": "highway-waterway", - "tooltip": "This {var1} intersects the {var2} #{var3}" - }, - "_193": { - "description": "highway-riverbank", - "tooltip": "This {var1} intersects the {var2} #{var3}" - }, - "_194": { - "description": "waterway-waterway", - "tooltip": "This {var1} intersects the {var2} #{var3} but there is no junction node" - }, - "_195": { - "description": "cycleway-cycleway", - "tooltip": "This {var1} intersects the {var2} #{var3} but there is no junction node" - }, - "_196": { - "description": "highway-cycleway", - "tooltip": "This {var1} intersects the {var2} #{var3} but there is no junction node" - }, - "_197": { - "description": "cycleway-waterway", - "tooltip": "This {var1} intersects the {var2} #{var3}" - }, - "_198": { - "description": "cycleway-riverbank", - "tooltip": "This {var1} intersects the {var2} #{var3}" - }, - "_200": { - "description": "overlapping ways", - "tooltip": "Finds overlapping ways on same layer" - }, - "_201": { - "description": "highway-highway", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_202": { - "description": "highway-waterway", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_203": { - "description": "highway-riverbank", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_204": { - "description": "waterway-waterway", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_205": { - "description": "cycleway-cycleway", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_206": { - "description": "highway-cycleway", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_207": { - "description": "cycleway-waterway", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_208": { - "description": "cycleway-riverbank", - "tooltip": "This {var1} overlaps the {var2} #{var3}" - }, - "_210": { - "description": "loopings", - "tooltip": "These errors contain self intersecting ways" - }, - "_211": { - "description": "", - "tooltip": "This way contains more than one node at least twice. Nodes are {var1}. This may or may not be an error" - }, - "_212": { - "description": "", - "tooltip": "This way has only two different nodes and contains one of them more than once" - }, - "_220": { - "description": "misspelled tags", - "tooltip": "This {var1} is tagged {var2}={var3} where {var4} looks like {var5}" - }, - "_221": { - "description": "", - "tooltip": "The key of this {var1} tag is key {var2}" - }, - "_230": { - "description": "layer conflicts", - "tooltip": "" - }, - "_231": { - "description": "mixed layers intersection", - "tooltip": "This node is a junction of ways on different layers: {var1}" - }, - "_232": { - "description": "strange layers", - "tooltip": "This {var1} is tagged with layer {var2}. This need not be an error but it looks strange" - }, - "_270": { - "description": "motorways connected directly", - "tooltip": "This node is a junction of a motorway and a highway other than motorway, motorway_link, trunk, rest_area or construction. Service or unclassified is only valid if it has access=no/private or it leads to a motorway service area or if it is a service=parking_aisle." - }, - "_280": { - "description": "boundaries", - "tooltip": "" - }, - "_281": { - "description": "missing name", - "tooltip": "This boundary has no name" - }, - "_282": { - "description": "missing admin level", - "tooltip": "The boundary of {var1} has no valid numeric admin_level. Please do not use admin levels like for example 6;7. Always tag the lowest admin_level of all boundaries" - }, - "_283": { - "description": "no closed loop", - "tooltip": "The boundary of {var1} is not closed-loop" - }, - "_284": { - "description": "splitting boundary", - "tooltip": "The boundary of {var1} splits here" - }, - "_285": { - "description": "admin_level too high", - "tooltip": "This boundary-way has admin_level {var1} but belongs to a relation with lower admin_level (higher priority); it should have the lowest admin_level of all relations" - }, - "_290": { - "description": "restrictions", - "tooltip": "Analyses all relations tagged type=restriction or following variations type=restriction:hgv type=restriction:caravan type=restriction:motorcar type=restriction:bus type=restriction:agricultural type=restriction:motorcycle type=restriction:bicycle and type=restriction:hazmat" - }, - "_291": { - "description": "missing type", - "tooltip": "This turn-restriction has no known restriction type" - }, - "_292": { - "description": "missing from way", - "tooltip": "A turn-restriction needs exactly one {var1} member. This one has {var2}" - }, - "_293": { - "description": "missing to way", - "tooltip": "A turn-restriction needs exactly one {var1} member. This one has {var2}" - }, - "_294": { - "description": "from or to not a way", - "tooltip": "From- and To-members of turn restrictions need to be ways. {var1}" - }, - "_295": { - "description": "via is not on the way ends", - "tooltip": "via (node #{var1}) is not the first or the last member of from (way #{var2})" - }, - "_296": { - "description": "wrong restriction angle", - "tooltip": "restriction type is {var1} but angle is {var2} degrees. Maybe the restriction type is not appropriate?" - }, - "_297": { - "description": "wrong direction of to member", - "tooltip": "wrong direction of to way {var1}" - }, - "_298": { - "description": "already restricted by oneway", - "tooltip": "entry already prohibited by oneway tag on {var1}" - }, - "_310": { - "description": "roundabouts", - "tooltip": "Analyses ways with tag junction=roundabout. More then one way can form a roundabout. It supports tag oneway=-1" - }, - "_311": { - "description": "not closed loop", - "tooltip": "This way is part of a roundabout but is not closed-loop. (split carriageways approaching a roundabout should not be tagged as roundabout)" - }, - "_312": { - "description": "wrong direction", - "tooltip": "If this roundabout is in a country with right-hand traffic then its orientation goes the wrong way around | If this roundabout is in a country with left-hand traffic then its orientation goes the wrong way around | If this mini_roundabout is in a country with right-hand traffic then its orientation goes the wrong way around | If this mini_roundabout is in a country with left-hand traffic then its orientation goes the wrong way around" - }, - "_313": { - "description": "faintly connected", - "tooltip": "This roundabout has only {var1} other roads connected. Roundabouts typically have three" - }, - "_320": { - "description": "*_link connections", - "tooltip": "This way is tagged as highway={var1}_link but doesn't have a connection to any other {var1} or {var1}_link" - }, - "_350": { - "description": "bridge-tags", - "tooltip": "This bridge doesn't have a tag in common with its surrounding ways that shows the purpose of this bridge. There should be one of these tags: {var1}" - }, - "_370": { - "description": "doubled places", - "tooltip": "This node has tags in common with the surrounding way #{var1} and seems to be redundand | This node has tags in common with the surrounding way #{var1} (including the name {var2}) and seems to be redundand" - }, - "_380": { - "description": "non-physical use of sport-tag", - "tooltip": "This way is tagged {var1} but has no physical tag like e.g. leisure, building, amenity or highway" - }, - "_400": { - "description": "geometry glitches", - "tooltip": "" - }, - "_401": { - "description": "missing turn restriction", - "tooltip": "ways {var1} and {var2} join in a very sharp angle here and there is no oneway tag or turn restriction that prevents turning from way {var1} to {var2}" - }, - "_402": { - "description": "impossible angles", - "tooltip": "this way bends in a very sharp angle here" - }, - "_410": { - "description": "website", - "tooltip": "Web pages are analyzed. Web page is defined by any of the following tags website=* url=* website:mobile=* contact:website=* contact:url=* image=* source:website=* or source:url=*" - }, - "_411": { - "description": "http error", - "tooltip": "The URL ({var1}) cannot be opened (HTTP status code {var2})" - }, - "_412": { - "description": "domain hijacking", - "tooltip": "Possible domain squatting: {var1}. Suspicious text is: \"{var2}\"" - }, - "_413": { - "description": "non-match", - "tooltip": "Content of the URL ({var1}) did not contain these keywords: ({var2})" - } - }, - "warnings": { - "_20": { - "description": "multiple nodes on the same spot", - "tooltip": "There is more than one node in this spot. Offending node IDs: {var1}" - }, - "_60": { - "description": "depreciated tags", - "tooltip": "This {var1} uses deprecated tag {var2}={var3}. Please use {var4} instead!" - }, - "_300": { - "description": "missing maxspeed", - "tooltip": "missing maxspeed tag" - }, - "_360": { - "description": "language unknown", - "tooltip": "It would be nice if this {var1} had an additional tag name:XX={var2} where XX shows the language of its name {var2}" - }, - "_390": { - "description": "missing tracktype", - "tooltip": "This track doesn't have a tracktype" - } - } - } - }, "QA": { "keepRight": { "tooltip": "automatically detected errors from keepright.at", diff --git a/modules/services/keepRight.js b/modules/services/keepRight.js index 153bb1778..6aed5b8fd 100644 --- a/modules/services/keepRight.js +++ b/modules/services/keepRight.js @@ -115,10 +115,9 @@ export default { // - move markers slightly so it doesn't obscure the geometry, // - then move markers away from other coincident markers var coincident = false; - var epsilon = 0.00001; do { // first time, move marker up. after that, move marker right. - var delta = coincident ? [epsilon, 0] : [0, epsilon]; + var delta = coincident ? [0.00001, 0] : [0, 0.000005]; loc = geoVecAdd(loc, delta); var bbox = geoExtent(loc).bbox(); coincident = _krCache.rtree.search(bbox).length;