Modify

Opened 4 months ago

Last modified 3 months ago

#24421 new enhancement

Add a key modifier to restrict movement when dragging a node

Reported by: dieterdreist Owned by: team
Priority: normal Milestone:
Component: Core Version: latest
Keywords: Cc:

Description

It would be nice to be able to restrict movement of a node that is part of a way to the direction of the adjacing segments (e.g. a building with an entrance, you could move the entrance along the building outline without changing the outline shape). It could be activated e.g. by holding shift while dragging.

Attachments (0)

Change History (8)

comment:1 by GerdP, 4 months ago

You can achive that by pressing key "l" after moving the node, right?

comment:2 by dieterdreist, 4 months ago

I would have to select all the nodes I want to put in a line and then press "L", I do it a lot, and it works well when a whole way should be straight, rather than just a part of it, i.e. you can select just the way and do not need to bother with selecting all the nodes.
It does not work so well when you just want to move an entrance along a building outline, it can make them straight, but it requires some selection work, the more entrances there are, the worse. E.g. https://www.openstreetmap.org/relation/19211474

I am looking for something like holding "ctrl" while dragging in the "eXtrude mode", but for nodes in ways. "move along" if you so wish.

comment:3 by GerdP, 4 months ago

Do you want to select multiple entrance nodes and move them along the existing building outline so that the geometry of the building is not changed? This should only work if all selected nodes are on a straight line, right? Or do you want to move a node "around the corner"?
In your example: What if you select e.g. nodes for housenumbers 167 and 169?

comment:4 by dieterdreist, 4 months ago

I want to select a single node and move it along a way (to which it is connected). So when you pass over a node in the way (if this should be allowed, currently it is not possible, but it could work), it would continue to follow the way, i.e. change direction to the current segment each time you pass a node.
Generally, for most of the times when I wanted this, it would have been sufficient to be able to move between 2 nodes, not passing beyond any other node.
Adjusting entrance positions on buildings (or gate positions on fences, etc.) is definitely a usecase where it would be useful, but there are also other situations (e.g. crossings)

comment:5 by GerdP, 4 months ago

When you move a single node on a straight line you just have to press L after that to align it again.

in reply to:  2 comment:6 by StephaneP, 3 months ago

Replying to dieterdreist:

I am looking for something like holding "ctrl" while dragging in the "eXtrude mode", but for nodes in ways. "move along" if you so wish.

It already works like that with nodes, you can move the node along the way in extrude mode with the crtl key.

comment:7 by dieterdreist, 3 months ago

Cool, this is good to know and I already used it a few times. It is a bit cumbersome and unintuitive though, because despite working on nodes as well, the "x"trude mode does not let me select nodes. Maybe this could be enabled?

comment:8 by dieterdreist, 3 months ago

If I may suggest: the existing functionality could be used also when draging a node (in "select" mode) while holding "ctrl". This seems more intuitive, and you already are in a mode where you can select and drag nodes, so it does not require continuously changing modes.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set. Next status will be 'closed'.
to The owner will be changed from team to the specified user.
Next status will be 'needinfo'. The owner will be changed from team to dieterdreist.
as duplicate The resolution will be set to duplicate. Next status will be 'closed'. The specified ticket will be cross-referenced with this ticket.
The owner will be changed from team to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.