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

Account graphs routes for minefields and their exclusions #56

Open
dd84ai opened this issue Nov 18, 2024 · 4 comments
Open

Account graphs routes for minefields and their exclusions #56

dd84ai opened this issue Nov 18, 2024 · 4 comments
Labels
wontfix This will not be worked on

Comments

@dd84ai
Copy link
Member

dd84ai commented Nov 18, 2024

That will affect heavily how routes are built through kepler at least.
To deliver some cardamine from Omicron Alpha to ontario Cochrane Depot for example

Supposedly minefields become quite popular

have minefield as a slow down zone
and exclusion paths are invisible trade lanes allowing go cruise speed basically

@dd84ai dd84ai added the wontfix This will not be worked on label Nov 18, 2024
@dd84ai
Copy link
Member Author

dd84ai commented Nov 18, 2024

To implement it you need to find out for specific direct line routes
When minefield begins and ends on its line. Basically math for finding when direct line route intersersects a minefield

May be other approach exists smth with abusing too many points placement, but it will be performance not efficient

@dd84ai
Copy link
Member Author

dd84ai commented Nov 18, 2024

basically question to answer
How to find for some lets say direct route between two jump holes, that a minefield will intersect it for a specific its range
We can assume having three dimensional coordinates for two jump holes
and all the information in ini configs about mine fields

since we operate with graphs, it will be fine to treat minefield first as it has no exclusions i think.
And then add as separate graph edges exclusions into it

Dijkstra graph resolver will be able to switch to prefer exclusion path on its own. We just need to break direct path flight correctly by finding out it is part of a minefield

@dd84ai
Copy link
Member Author

dd84ai commented Nov 18, 2024

May be it is actually possible to do very fast
lets assume that a direct flight path is made out of many contained ponits with some small/big enough step in between them
we need just to check for each point, if it is included into minefield and say yes or no
after that for optimization of calculations, we join back points of same value into direct path route made out of only points in amount of 2+2*amount of encountered minefields in a direct flight paths
then we lay on our speed/normal flight through exclusion paths
and my parallel dijkstra will be able to resolve it rather fast

Then the problem level is minimized only to a question, how for specific point to be checked if it is inside a minefield. which looks already rather managable to do

@dd84ai
Copy link
Member Author

dd84ai commented Nov 18, 2024

We can optimize algorithm further, with not using it in systems not having minefields.

Also u will need to connect Nodes/Points related to intersection with minefield only with exclusion paths may be.

Also u could account Solar objects into minefield too

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant