Commit Graph

44 Commits

Author SHA1 Message Date
Quincy Morgan d01bb78707 Reduce circular dependencies caused by importing from indexes, the location of the validation models, and the location of areaKeys (close #6237) 2019-04-24 13:45:59 -07:00
Bryan Housel 05949608aa Support straightening of points
(closes #6217)

- Split `actionStraighten` into `actionStraightenWay` and `actionStraightenNodes`
- Now `operationStraighten` chooses the correct action depending on selected entities
- Also move `getSmallestSurroundingRectangle` from `actionReflect` to `geo.js`
2019-04-24 01:55:43 -04:00
Quincy Morgan 34fcd01f98 Add validation warning for unsquare buildings 2019-04-23 15:50:52 -07:00
Bryan Housel 76e0d13729 Remove lodash every and filter
(re: #6087)
2019-03-23 01:22:56 -04:00
Bryan Housel 7a6c63fcc5 Remove lodash extend (re: #6087) 2019-03-23 00:38:39 -04:00
Bryan Housel 7e6f68a1b2 Remove lodash some
(re: #6087)
2019-03-23 00:07:52 -04:00
Bryan Housel b47ab4ac50 Change orthogonalize to support degenerate shapes, non-closed ways
Also adds a handful of useful vector math functions to geo module
2019-02-28 22:52:45 -05:00
Bryan Housel e44dfcb5e3 Add geoVecNormalizedDot 2019-02-25 23:07:03 -05:00
Bryan Housel c3ac083b32 Reuse math code, add geoVecNormalize, code cleanups 2019-02-25 21:15:20 -05:00
Quincy Morgan b25d75a6cc Use existing nodes where possible in almost junction connection fix 2019-02-06 12:47:12 -05:00
Bryan Housel b860bbb5f0 Expand sidebar when selecting notes and data 2018-11-07 09:54:54 -05:00
Bryan Housel 1dbf273878 Remove flow
https://github.com/openstreetmap/iD/issues/3744#issuecomment-374950519
2018-03-22 16:51:53 -04:00
Bryan Housel efddfd271c More flow coverage of geo submodule
(re: #3744)

also:
- Move types to index and export/import them
- add return types
2018-03-17 09:29:12 -04:00
Bryan Housel 3e47ca005c Started adding Flow annotations to functions in the geo submodule
(re: #3744)
2018-03-17 01:18:05 -04:00
Bryan Housel d5bf2d9762 Add geoHasLineIntersections, better for testing multipolygon rings
(closes #4741)
2018-01-24 23:16:51 -05:00
Bryan Housel e661281e38 Prevent self intersecting lines without a junction node
(closes #4646)
2018-01-08 19:17:50 -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 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 4f02340374 Extract self-intersection code to geoHasSelfIntersections
Test for self-intersecting areas in both drag_node and draw_way
2017-12-28 23:10:52 -05:00
Bryan Housel 462fef148d Remove unused imports (eslint warning) 2017-12-28 21:20:14 -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 d82d5dc3d0 Add skipID to geoChooseEdge, to ignore dragging node 2017-12-21 17:30:50 -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 8e591a5384 Convert lodah-es and d3 to named imports for geo 2017-09-24 23:01:21 -04:00
Bryan Housel cad4c0090c Refactor rotation code to geoRotate, add tests 2016-12-21 11:21:06 -05:00
Bryan Housel 063e7712b8 Move geo functions from index.js to geo.js 2016-12-20 23:08:22 -05:00
Bryan Housel 0d0b9b0d9b Use geoEuclideanDistance for simpler code 2016-10-18 00:56:18 -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 0d0e54fdff Fix more namespaces that were missed in the first pass 2016-10-04 21:15:30 -04:00
Bryan Housel 3102a4ae6a Rename all the things to include pseudonamespaces 2016-10-04 19:06:20 -04:00
Bryan Housel 15b3a44c9a Add projection.transform, simplify projection code, WIP on minimap 2016-09-07 08:59:31 -04:00
Bryan Housel a86f34b4ef Pacify eslint, get build and tests running again 2016-08-26 01:15:07 -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
Tom MacWright 3856b1ff2f Inter-require iD instead of relying on the global (#3256) 2016-07-19 10:30:50 -04:00
Kushan Joshi 39c82af158 Sort modules [eslint rule] 2016-07-06 12:12:08 +05:30
Bryan Housel 197b936d50 Upgrade rbush to 2.x 2016-07-01 23:12:51 -04:00
Kushan Joshi 7267d05e3d external modules for "geo" 2016-06-18 20:38:39 +05:30
Kushan Joshi b2095a502a convert iD.geo to geo modules 2016-06-15 21:11:10 +05:30