Commit Graph

952 Commits

Author SHA1 Message Date
Bryan Housel 7fa27217b6 Return an indirect u-turn restriction for an only restriction 2018-02-23 11:59:44 -05:00
Bryan Housel 46cc6cc262 Update tests to use '_' id separators instead of ','
(using ',' with css selectors was problematic)
2018-02-23 11:30:54 -05:00
Bryan Housel 0cbff57dc9 Cycle through only_ turn restriction states
(re: #2622)
2018-02-07 19:04:28 -05:00
Bryan Housel c1378a141f Add support for complex intersection and via way restrictions 2018-02-02 19:58:09 -05:00
Bryan Housel 80a998e9c5 Support multiple semicolon delimited direction values
(closes #4755)
2018-01-29 17:49:08 -05:00
Bryan Housel d5bf2d9762 Add geoHasLineIntersections, better for testing multipolygon rings
(closes #4741)
2018-01-24 23:16:51 -05:00
Bryan Housel b35f6f3f15 highway=motorway_link no longer implies oneway=yes
(closes #4727)

iD still explicitly set the tag, and default it to `oneway=yes`
2018-01-22 21:45:14 -05:00
Bryan Housel de488e252f Draw covered/underground lines beneath areas
(closes #4718)
2018-01-22 15:06:58 -05:00
Bryan Housel 7c918ba161 Allow Relation.replaceMember to optionally preserve duplicates
(closes #4696)
2018-01-18 16:52:23 -05:00
Bryan Housel be9bbd9271 Add tests for member ordering: node, way, relation 2018-01-18 15:21:38 -05:00
Bryan Housel d6afd399fc Revised and expanded actionSplit tests to cover route splitting 2018-01-18 14:34:34 -05:00
Bryan Housel 3be577d8db However we fix actionAddMember, it needs to work for incomplete relations 2018-01-16 21:37:43 -05:00
Bryan Housel be46e85ec0 Move insert way pairing code from osmJoinWays to actionAddMember
(tests for actionAddMember now passing!)
2018-01-16 17:41:14 -05:00
Bryan Housel 221158e918 WIP: Add insertHint to actionAddMember, actionSplit 2018-01-15 23:13:59 -05:00
Bryan Housel 03fa6e7be9 Add tryInsert option to osmJoinWays 2018-01-15 22:02:43 -05:00
Bryan Housel 075b85c81d Apply reversal actions in actionJoin
(closes #4688)
2018-01-14 14:49:57 -05:00
Bryan Housel 8dbb6eb20c Return reversal actions performed by osmJoinWays
(see #4688)
2018-01-13 01:45:46 -05:00
Bryan Housel 0fd801d750 Prefer to join member ways in a way that preserves their order
(re #4589)

Strongly prefer to generate a forward path that preserves the order
of the members array. For multipolygons and most relations, member
order does not matter - but for routes, it does. If we started this
sequence backwards (i.e. next member way attaches to the start node
and not the end node), reverse the initial way before continuing.
2018-01-12 17:23:56 -05:00
Bryan Housel 8f6cb207fc Much expanded tests for osmJoinWays 2018-01-11 21:42:29 -05:00
Bryan Housel 07262fa711 Add tests for #4589 2018-01-09 23:57:44 -05:00
Bryan Housel 748abdb950 Code formatting 2018-01-09 17:46:15 -05:00
Bryan Housel 49eb46fefb Add epsilon parameter to geoVecEqual 2018-01-08 17:04:56 -05:00
Bryan Housel c908807f64 Render oneway=alternating, oneway=reversible with dual arrows
(closes #4291)
2018-01-04 13:40:49 -05:00
Bryan Housel baeff8f59c Don't autocomplete a longer value if search matches a value exactly
(closes #4549)
2018-01-02 17:55:25 -05:00
Bryan Housel 9f1b71bb7e Add support for junction=circular (same as junction=roundabout)
(closes #4637)
2018-01-02 13:27:11 -05:00
Bryan Housel 9c27893748 Check for valid multipolygon geometry when dragging nodes
(this can get a bit expensive for large/complex multipolygons)
2017-12-31 02:26:19 -05:00
Bryan Housel 08cd2c7325 Tests for geoHasSelfIntersections 2017-12-28 23:46:08 -05:00
Bryan Housel 7af73c10ef Refactor geometric math functions from geo.js to geom.js 2017-12-28 01:28:38 -05:00
Bryan Housel 96afbbd785 Refactor vector math functions from geo.js to vector.js 2017-12-28 01:08:11 -05:00
Bryan Housel 9fbb4d350f Add geoVecEquals for strict comparisons 2017-12-23 22:33:35 -05:00
Bryan Housel 117ad7d6b6 Transitionable actionMoveNode 2017-12-22 16:57:27 -05:00
Bryan Housel d82d5dc3d0 Add skipID to geoChooseEdge, to ignore dragging node 2017-12-21 17:30:50 -05:00
Bryan Housel fcacdb4400 Fix hover test (requires context.hasEntity stub) 2017-12-21 11:18:06 -05:00
Bryan Housel 2e2b037e36 Move a bunch of commonly used vector and projection math functions into geo
- geoVecAdd
- geoVecSubtract
- geoVecScale
- geoZoomToScale
- geoScaleToZoom
2017-12-18 15:05:42 -05:00
Bryan Housel 18c97d52c8 Extract viewport nudging code from several places to geoViewportEdge 2017-12-18 09:50:17 -05:00
Bryan Housel 6644c9db6b Fix context.js and vertices.js tests 2017-12-15 18:17:12 -05:00
Bryan Housel 89d8d37576 Drawing all the correct vertices now where I want them, simplify classes
Some highlights
- `getSiblingAndChildVertices` are expensive, so they're saved and called less frequently
- draw touch targets for all the visible vertices
- remove redundant css classes and `setClass` function
2017-12-15 17:28:20 -05:00
Bryan Housel b9e48d1682 WIP: Move layer-hit to layer-points with explict sublayers, update tests
This is more work to further isolate the layers that entities draw to.
It makes it easier to debug what is going on, and can eventually lead to
deferred drawing, if each draw function is in its own place and not dependant
on anything else.

I've started to replace the vertex-hover with an explicit layer for touch
targets.

Also had to change a lot of the svg tests, which are really brittle.
Things would happen like - the surface would be created, it would kick of a
deferred redraw, which would notice that the zoom was 0 and call
editOff, which would remove the osm layers that were just created and
that the tests were trying to draw to. These tests need proper zoom and
projection otherwise nothing works.
2017-12-14 17:38:43 -05:00
Bryan Housel bfaf17538e Move text to single group with subgroups for halo,label,debug 2017-12-14 12:32:28 -05:00
Bryan Housel a5bbc21728 Remove unnecessary zoom parameter 2017-12-11 17:34:01 -05:00
Bryan Housel 6b9ccdb45a Add tests for osmNode#direction 2017-12-11 14:33:22 -05:00
Bryan Housel 6cfe7a2e71 When reversing a way, reverse traffic_signals:direction on child nodes
(closes #4595)
2017-12-06 20:48:21 -05:00
Bryan Housel f247bd1e66 Move icon code into uiFlash, default flash icon to icon-no
Previously it was up to the caller to draw whatever they want into the
footer flash.  With this change, uiFlash creates an icon and a text, so
the caller doesn't need to do as much work.
2017-12-05 23:41:34 -05:00
Bryan Housel 9b705a6375 Don't call async callbacks after connection resets/switches
(closes #4288)
2017-11-14 21:30:01 -05:00
Bryan Housel 1dd437a1f2 Hide mapillary-js attribution and just handle it in iD
(closes #4526)

What we were doing before was d3.selecting the attribution line and
inserting the capture date into it. This was confusing the viewer
(which updates asynchronously) so that the sitelink would never update.
To make things easier, we'll just hide the viewer's built in attribution
and construct the attribution line the way we want it.
2017-11-14 11:32:42 -05:00
Bryan Housel 4571fd0563 Highlight selected/hovered streetview tracks, fade unselected
Also some code cleanups and nitpicky variable renames
More consistency in Mapillary/OpenStreetCam services
2017-11-08 00:35:44 -05:00
Bryan Housel 2947dcc2fb Add tests for Openstreetcam service and Mapillary sequences 2017-11-06 23:11:00 -05:00
Bryan Housel 00b30e29f0 WIP: Add OpenStreetCam support
todo: Need to figure out API issue with bbox, then imageviewer
2017-11-02 22:04:47 -04:00
Bryan Housel a5d04cc2f1 Fix the highway=pedestrian + area=yes test 2017-10-31 16:56:55 -04:00
Bryan Housel c40f242b82 Depend on bhousel/node-diff3 which includes fix for hunk sorting bug
(closes #3544, closes #3058)
2017-10-24 15:38:52 -04:00