Commit Graph

134 Commits

Author SHA1 Message Date
Bryan Housel ba5b3eee9c More work on vertex drawing, add debug for touch targets 2017-12-15 00:26:37 -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 24baa5390e Adjust some variable names to better match what they do
- `nodes` are for osm nodes
- `points` are the projected locations of those node `loc` in screen space
2017-12-13 18:31:37 -05:00
Bryan Housel d9e3367836 More improvements to label vertex avoidance
(re: #4271, #3636)

- better classification of "interesting" vertices
  (include tagged, selected, or child of selected)
- now we can draw labels on selected lines again (revert #3636)
  because the labels will avoid the vertices
- if debugging is on, draw a collision box for the mouse
2017-12-13 18:05:06 -05:00
Bryan Housel 006ee691bf Avoid placing labels in interesting points/vertices
(closes #4271)
2017-12-13 14:31:17 -05:00
Bryan Housel 450392d2e5 Fix label placement for directional points rendered as vertices 2017-12-13 10:23:25 -05:00
Bryan Housel 5d5546d54d Minor code formatting 2017-12-13 10:02:39 -05:00
Bryan Housel 789f1e5f6f Make sure points/vertices render the right things at different zooms 2017-12-13 08:57:43 -05:00
Bryan Housel 899abc7ef5 WIP to render vertices while dragging
(re: #3003 / #4602)

For now, drawHover is commented out.  Still not sure what I will do with it.
This means that things flicker a bit when dragging, also connecting nodes
(and closing lines) does not currently work.

There was lot going on preventing the vertices from rendering while dragging.

1. `modeDragNode` needed a proper `selectedIDs()` function that works like other
modes.. Many other places in iD (including the vertex renderer) call `context.selectedIDs()`..
This means that `modeDragNode` needs a new function `restoreSelectedIDs()` to do what
`selectedIDs()` was previously doing (a place to store selectedIDs so that we
can reselect those entities after the user is done dragging a node in select mode)

2. Just so many things in svg/vertices.js
  - siblingAndChildVertices was missing some things for points that we render
    as vertices (points in wireframe, points with directions)
  - the sibling vertices weren't being included in the `filter` function, so
    would disappear when doing differenced/extent redraws
  - probably some other things
2017-12-12 17:39:36 -05:00
Bryan Housel b394cb6dfa Variable cleanup, elminiate lodash _filter 2017-12-11 17:46:15 -05:00
Bryan Housel a5bbc21728 Remove unnecessary zoom parameter 2017-12-11 17:34:01 -05:00
Bryan Housel 4b5260a5ab Add wireframe viewfield marker
(styling marker fill in svg is not currently supported)
2017-12-11 15:48:08 -05:00
Bryan Housel 8e19474293 Render directional points (e.g. benches, cameras, signs) as vertices 2017-12-11 10:48:04 -05:00
Bryan Housel b42c096fe5 Make sure viewfields actually update on update selection 2017-12-10 14:34:50 -05:00
Bryan Housel 2a8bf6c7bf Don't draw viewfields on hover, rearrange code 2017-12-10 00:43:46 -05:00
Bryan Housel 34c98b94e6 Move directions code from vertices to node.js 2017-12-09 12:53:08 -05:00
Bryan Housel 42043b2ce1 Support more tags, cardinal and numeric directions 2017-12-08 16:23:35 -05:00
Bryan Housel 9c649b74cd After switching from arrows to viewfields, forward/backward is different 2017-12-08 14:54:26 -05:00
Bryan Housel 515094cb56 Only add viewfields for an all-way stop on a highway intersection.
Sometimes people tag all-way stop signs at the junction node,
othertimes people tag all-way stop signs at the stop sign location.

What we're doing here is:
- if `stop=all` tagged at the junction, show viewfield in all directions
- if `stop=all` tagged at the sign location, show viewfield according to `direction=` tag
2017-12-08 14:36:45 -05:00
Bryan Housel 6aba27c84a Display directional vertex with a viewfield, not an arrow 2017-12-08 14:29:56 -05:00
Bryan Housel b79b6ca97a Support rendering direction on vertices (stop sign, traffic_signals, etc)
(closes #3815)
2017-12-07 22:48:03 -05:00
Bryan Housel 38920b2c61 Reset temp placement variable each loop iteration
(closes #4473)

Otherwise `if (p)` will have stale data and be truthy for vertices at low zoom
2017-11-15 13:47:59 -05:00
Bryan Housel d53637618e Draw selected marker big, fix draw ordering issues, fix close button 2017-11-09 11:27:36 -05:00
Bryan Housel 9dac13a915 Show only linestrings at low zooms 2017-11-08 16:46:53 -05:00
Bryan Housel 0702c66834 Improve sign hover/selected, fix Mapillary viewer setup for signs layer 2017-11-08 15:30:45 -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 fb063aa2c5 Render panoramic Mapillary viewfields as a sphere instead of arc
(closes #3154)
2017-11-07 01:04:11 -05:00
Bryan Housel 095dc19164 Add sequence linestrings to mapillary photo layer too 2017-11-06 21:32:03 -05:00
Bryan Housel e439ea406a Cache sequence info, draw sequence linestrings 2017-11-06 15:48:44 -05:00
Bryan Housel eefbb68dda Add viewer controls.. Rotation works and will cache val per sequence 2017-11-06 10:41:17 -05:00
Bryan Housel 51fa9280a4 Add attribution line for openstreetcam 2017-11-03 21:20:14 -04:00
Bryan Housel 6dd71ebf91 Fix loading of images from OpenStreetCam API, add viewer
\o/
2017-11-03 16:48:18 -04: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 4d1c6796c2 Don't leave space for an area icon, if preset doesn't have an icon
(closes #4479)
2017-10-31 22:22:40 -04:00
Nikita Mashukov d0cca4bc5b spaces instead tabs 2017-10-14 18:42:37 +07:00
Nikita Mashukov a00debe663 push gpx src (file name or url) to imagery_used 2017-10-14 18:37:49 +07:00
Bryan Housel 9edae82673 Convert lodah-es and d3 to named imports for svg 2017-09-25 23:16:24 -04:00
Bryan Housel 5a8709bc67 Treat osm layer like other vector layers and give it a toggle
(closes #2904)
2017-09-18 22:03:34 -04:00
Bryan Housel b21c2933af Faster layer disable/enable transitions 2017-09-18 22:02:16 -04:00
Bryan Housel 494e247ad1 Render intermittent features with dashed lines 2017-09-11 14:14:30 -04:00
Kushan Joshi 909b72a39e cleaning up 2017-08-24 17:03:04 +05:30
Bryan Housel af10c60e7c Distinguish between default and special service roads
Special service roads include things like
service=parking_aisle, drive-through, alley, etc
(closes #4157)
2017-07-21 12:46:11 -04:00
Bryan Housel e71381ed45 Adjust street sign image dimensions to try to make them less blurry
(still kinda blurry but closes #4145 anyway)
2017-07-14 00:45:20 -04:00
Bryan Housel 30a12fb1be Cache images->detections, show multiple detections per image 2017-07-13 23:47:44 -04:00
Bryan Housel 5ca4246a6d If drawing a way, don't hover on a node that was just placed
(closes #3974)
2017-04-26 13:33:21 -04:00
Bryan Housel 8520e06c5a Performance: only draw midpoints in select mode 2017-04-26 10:27:38 -04:00
Bryan Housel 3d762b58f6 Add an ellipse to resolve point ambiguity when dragging
(closes #3536)
2017-04-26 02:08:54 -04:00
Bryan Housel 26ae84f8e5 Render old-style multipolygons slightly differently
(for #3908)
2017-04-20 23:34:00 -04:00
Bryan Housel 0228f934b3 Put back the selected class when redrawing selected lines 2017-03-21 14:19:57 -04:00