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