Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make a partial stub visible out of cardinal direction, not just a direct line. #2427

Open
Jieiku opened this issue Mar 15, 2019 · 6 comments

Comments

@Jieiku
Copy link
Contributor

Jieiku commented Mar 15, 2019

Brief summary of issue / Description of requested feature:

Sometimes when your mapping, you need to reposition rooms.

Currently rooms get drawn with a lines straight from one room to the other....
It is often impossible for me to tell which direction that line is Actually exiting the room.

I find myself thinking I know where it need to be positioned but being wrong and having to reposition it again, so that the exit follows the cardinal direction.

This picture illustrates my idea to make it easier to tell to which direction exit lines are connected (looks at the red line I have drawn, that is my idea.):
2019-03-14_23-41

Also the above is just a prototype, I am sure you could add fancy smooth curves or something to the line drawing algorithm if you wanted, but just some sort of indication which direction the line is exiting a room is what I am asking for.

Maybe some people like the directly connected lines, but I would very much prefer something like what I have drawn in the picture above, so maybe a true/false option.

Another example of the problem:
2019-03-15_01-24

And the solution:
2019-03-15_01-26

@SlySven
Copy link
Member

SlySven commented Mar 16, 2019

💡 I have prototyped this in the past - and I call it a Z-exit line feature after the shape that the east-to-west exit line would take if the room to the right (west) of another room was moved to be below the first room.

The situation is even more messy than you think - multiple exits to the same room get combined visually and if there are doors then they get even more mixed up than if there are two different door type marks in the two directions of a two-way exit pair...

The main awkwardness is that any fix cannot work if the rooms have unit spacing - if the rooms are full (or oversized - room size 10 or 11) then there is NO space between them.

I have been looking around in the long past and I thought I had found what I had worked out but it wasn't so I think it must be on a different PC... 🙁

@Jieiku
Copy link
Contributor Author

Jieiku commented Mar 28, 2019

Let me know if I can help or try to finish what you started. This is currently the highest priority item on my list of things to fix.

Also if the liklihood of you finding what you had worked on is pretty low, then just let me know and I can start from scratch.

@vadi2
Copy link
Member

vadi2 commented Mar 29, 2019

I dont think this should be an option, unless people really like this way of looking at things.

And sure we can't solve it for all cases, but something would better than nothing.

@Jieiku
Copy link
Contributor Author

Jieiku commented Mar 29, 2019

If I am understanding you correctly, you are suggesting that there should be a way to visually tell how the rooms are linked by default for everyone, instead of making it an option. I would completely agree. I can get started on this ASAP because its difficult to path through areas using the map when I cannot tell how the rooms are linked. (not a very good map if I cannot read it well enough to know where im going) :)

The code can be written to automatically determine when it does not make sense to show it the new way such as when in grid mode and just draw it the current/old way.

@vadi2
Copy link
Member

vadi2 commented Mar 29, 2019

That sounds excellent! Feel free to ask is questions, happy to help :)

@SlySven
Copy link
Member

SlySven commented Mar 29, 2019

You may be able to repurpose the existing code that draws the stub exits to do them for all XY-plane exits and then draw the real exit lines from the end point of those stubs rather than from the centre of the room.

Be aware that there is (or there should be) an optimisation in place that if we are drawing a two way exit then only the half a line from the currently considered room to the mid-point is drawn - so that it meets up with the other one coming from the other room.

If you are going to do this though you will have to pair up (from opposite exit directions) and draw every exit line rather than just one (from the middle of the room).

You may also want to consider drawing a coloured short perpendicular line at just under half the inter-room spacing distance across the stub (for a real or a stub exit) as a better door marker that the square in the middle of the exit line (on only real exits) which gets messed up if the door settings in opposite directions are different.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants