Commit Graph

23 Commits

Author SHA1 Message Date
Bryan Housel
cc79e2170b Only draw targets for lines and areas that have a valid path
Before, it was drawing svg path elements for all the segments,
even those that were clipped out of view (getPath returns null).
This was putting a lot of junk into the DOM.
2018-03-01 22:49:56 -05:00
Bryan Housel
6881205d43 All touch targets are GeoJSON now
This makes the code a bit more consistent and lets us avoid some
hacky and probably non-performant things:
- abusing CSS classes in the draw/drag datum functions (classed `.target`)
  (is this thing target? just check d.properties)
- regexing the id for `-nope$`
  (is this thing a nope target? just check d.properties)
- using context.hasEntity to get a the real entity
  (is this thing a real osmEntity? just check d.properties)
- fixes code like the restriction editor which uses fake ids for split ways
2018-01-01 22:37:10 -05:00
Bryan Housel
7851c49e80 Fix nopefilters by testing the original id for the filter 2017-12-22 00:26:39 -05:00
Bryan Housel
6d7659b3bb Refactor common helper code to svg/helpers.js, add area nopes 2017-12-21 10:36:02 -05:00
Bryan Housel
7994baae23 WIP: trying singular activeID and smarter target drawing code
The goal here is that the code that draws the targets should know better
what parts of the lines/vertices are targetable, rather than just
relying on CSS to ignore the pointer events on the whole line.

e.g. when drawing a line, it's ok for it to loop back and connect
to itself, just not on a segment or vertex adjacent to the active
node.
2017-12-19 11:23:35 -05:00
Bryan Housel
7a8f50c74e More fixes for drawing/snapping, don't draw touch targets for activeIDs 2017-12-18 22:54:49 -05:00
Bryan Housel
aa68b21d7a Add touch targets for line/area 2017-12-17 22:53:58 -05:00
Bryan Housel
9edae82673 Convert lodah-es and d3 to named imports for svg 2017-09-25 23:16:24 -04:00
Bryan Housel
0c9fb7c407 Improve military presets
(closes #3663)

* Add Nuclear Explosion Site and Military Office presets
* Add Bunker Type field
* Improve styling rules for preset icons
* Improve search terms for all military presets
* Nest military presets under `landuse=military`
* Add ref, iata, icao fields to Military Airfield
* Don't set area pattern fills on buildings
2016-12-27 01:19:13 -05:00
Bryan Housel
0e2cd589d4 Add styling for natural=bare_rock, natural=sand 2016-12-26 16:00:02 -05:00
Bryan Housel
fbe9cf3afd Clip polygons and clippaths to padded viewport
(closes #3529)
2016-10-29 21:50:30 -04:00
Bryan Housel
f50e80d0b5 Refactor Intersection, Multipolygon from geo to osm 2016-10-11 23:09:27 -04:00
Bryan Housel
07fa5fcc34 Refactor Entity, Node, Relation, Tags, Way from core to osm 2016-10-11 22:41:24 -04:00
Bryan Housel
3102a4ae6a Rename all the things to include pseudonamespaces 2016-10-04 19:06:20 -04:00
Bryan Housel
afb88f2ae6 Fix rendering selections for all the OSM layers
This includes some renames for clarity.. "surface" -> "selection"
to make it clearer that rendering functions take a selection, and
don't necessarily render to the literal `#surface` node anymore.
2016-09-08 22:37:06 -04:00
Tom MacWright
0931da1591 Fix areas 2016-09-06 17:28:20 -04:00
Tom MacWright
20962074ba Fix vertices areas midlines 2016-09-06 10:58:07 -04:00
Tom MacWright
4fcbcddc5b Fix eslint 2016-09-06 10:18:05 -04:00
Tom MacWright
aebf0c14e1 Fix area redrawing 2016-09-03 18:42:17 -04:00
Tom MacWright
cdb533fa84 Begin d3 v4 update 2016-08-21 15:19:27 -04:00
Tom MacWright
604d1e2719 import lodash (#3257) 2016-07-19 12:04:16 -04:00
Kushan Joshi
b3492b17a0 external modules for SVG 2016-07-06 14:39:14 -04:00
Beau Gunderson
fb838645ae refactor svg into ES6 modules for #3118 2016-06-16 11:58:23 -07:00