Commit Graph

41 Commits

Author SHA1 Message Date
John Firebaugh a8410be6eb iD.actions.Join 2013-02-01 17:31:32 -05:00
John Firebaugh 9120f33aa7 ReverseWay -> Reverse 2013-02-01 17:31:32 -05:00
John Firebaugh c86792a77b SplitWay -> Split 2013-02-01 17:31:32 -05:00
John Firebaugh e1d5a0cb03 Unjoin -> Disconnect 2013-02-01 17:31:32 -05:00
John Firebaugh 58fcf746a2 Delete multiple 2013-02-01 15:08:41 -05:00
John Firebaugh 7ba31f05d2 Support deleting relations 2013-02-01 14:48:11 -05:00
John Firebaugh 3605895dfa ChangeEntityTags -> ChangeTags 2013-01-31 12:41:29 -05:00
John Firebaugh df72ef254f ChangeEntityTags -> ChangeTags 2013-01-31 12:07:54 -05:00
John Firebaugh 6f7079d11c AddWay/AddNode -> AddEntity 2013-01-31 12:06:21 -05:00
John Firebaugh 6ae360a533 These tests now pass 2013-01-31 08:28:10 -05:00
John Firebaugh e381b6ab26 Extract AddMidpoint action 2013-01-30 15:47:33 -05:00
John Firebaugh 98073b0d26 Add pending tests for #508
Update DeleteWay tests to use Graph#update. Eventually we
should do this for all action tests.
2013-01-25 16:35:50 -05:00
John Firebaugh b6d8ddc2f8 Remove unused branch and obsolete test 2013-01-24 11:21:12 -05:00
John Firebaugh 3138ba2805 Handle incomplete relations in SplitWay (fixes #466) 2013-01-23 15:52:35 -05:00
John Firebaugh 72618574f3 Rename permitted -> enabled and add to more actions 2013-01-23 15:33:30 -05:00
John Firebaugh 278bb4a51c Fix some cases where a degenerate way was created 2013-01-23 12:40:27 -05:00
John Firebaugh 292c916cb1 Converting some actions to entity methods
The guidelines here are:

Entity methods:
  return a modified entity
  don't necessarily maintain whole-graph consistency

Actions:
  return a modified graph
  always maintain whole-graph consistency
  call entity methods liberally
  generally don't call other actions
2013-01-23 12:40:27 -05:00
John Firebaugh 29d608970b UnjoinNode action (fixes #442) 2013-01-23 10:07:10 -05:00
John Firebaugh c8bee263e9 Split ways at T junctions (fixes #453) 2013-01-21 20:32:17 -05:00
John Firebaugh e19f86a285 Add newly split way to member relations 2013-01-18 14:44:29 -08:00
John Firebaugh f16c54e12f Match argument order with AddRelationMember 2013-01-18 14:44:29 -08:00
John Firebaugh 2ee07a3b74 Add iD.actions.AddRelationMember 2013-01-18 14:44:29 -08:00
John Firebaugh 2a0ef21548 Fix restriction handling 2013-01-18 14:44:29 -08:00
John Firebaugh fe8239b81e Rewrite tests 2013-01-18 14:44:28 -08:00
John Firebaugh ce6e11a8a0 Test copying tags to the split way 2013-01-18 14:44:28 -08:00
John Firebaugh 4c6757714c parentWays/Relations now take an entity 2013-01-11 17:26:25 -08:00
John Firebaugh bcb4de4305 Reverse directional tags and roles when reversing a way
Reverse known direction dependent tags other than `oneway`.
We assume that correcting a backwards oneway is the primary
reason for reversing a way.

The following transforms are performed:

Keys:
      *:right=* ⟺ *:left=*
    *:forward=* ⟺ *:backward=*
   direction=up ⟺ direction=down
     incline=up ⟺ incline=down
        *=right ⟺ *=left

Relation members:
   role=forward ⟺ role=backward

In addition, numeric-valued `incline` tags are negated.

The JOSM implementation was used as a guide, but transformations that 
were of unclear benefit or adjusted tags that don't seem to be used
in practice were omitted.

References:
   http://wiki.openstreetmap.org/wiki/Forward_%26_backward,_left_%26_right
   http://wiki.openstreetmap.org/wiki/Key:direction#Steps
   http://wiki.openstreetmap.org/wiki/Key:incline
   http://wiki.openstreetmap.org/wiki/Route#Members
   http://josm.openstreetmap.de/browser/josm/trunk/src/org/openstreetmap/josm/corrector/ReverseWayTagCorrector.java

Fixes #299.
2013-01-07 16:26:56 -08:00
John Firebaugh f0acbc2653 loc -> point, dxdy -> delta 2012-12-21 12:10:44 -08:00
John Firebaugh e627616603 Fix float comparison 2012-12-15 09:37:06 -08:00
John Firebaugh 209b87f7e8 Extract MoveWay action 2012-12-13 17:39:07 -08:00
John Firebaugh ee3f5cc768 Move -> MoveNode, in preparation for MoveWay 2012-12-13 17:39:07 -08:00
Tom MacWright adb8ab53ce Update relation tests 2012-12-07 16:01:14 -05:00
John Firebaugh d4832e2e95 Add closing segment of drawn areas (fixes #217) 2012-12-07 14:21:30 -05:00
John Firebaugh 8854dac623 More action specs; fix ReverseWay 2012-12-06 19:16:54 -05:00
John Firebaugh 9743ee282b More mode and action overhaul
Pass entities to actions via id; this allows safe composition
of actions that modify the same entity.

Fix remaining ghost node cases (#213).

Create more logical undo states when drawing.
2012-12-06 18:39:51 -05:00
John Firebaugh 077e5cc9ce Rename various actions 2012-12-05 16:42:48 -05:00
John Firebaugh 5666cb774e Finish iD.actions.DeleteWay (fixes #72) 2012-12-05 16:35:13 -05:00
John Firebaugh 812b427ac4 Split remove action into DeleteWay and DeleteNode 2012-12-05 16:14:39 -05:00
John Firebaugh 4a3169bb1d Test/refine iD.actions.remove 2012-12-05 16:14:39 -05:00
John Firebaugh 76849596f8 Move node removal into removeNodeWay action 2012-12-04 18:07:26 -05:00
John Firebaugh f8fde1f10d Move node update into addWayNode action 2012-12-04 17:54:08 -05:00