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

Lines #42

Open
rossjrw opened this issue Aug 18, 2020 · 1 comment
Open

Lines #42

rossjrw opened this issue Aug 18, 2020 · 1 comment
Labels
essential This is required for the minimum viable product feature Add a new feature

Comments

@rossjrw
Copy link
Owner

rossjrw commented Aug 18, 2020

No description provided.

@rossjrw rossjrw added the essential This is required for the minimum viable product label Aug 18, 2020
@rossjrw rossjrw added the feature Add a new feature label Nov 7, 2020
@rossjrw rossjrw mentioned this issue Nov 29, 2020
@rossjrw
Copy link
Owner Author

rossjrw commented Feb 6, 2021

I'd like lines to be able to avoid things, or at least avoid coming too close to things that they're parallel to. If they need to get across something, they should intersect it as perpendicularly as possbile. They should also never cross dots.

One way to do this might be to take the formula of every line that this new line can cross, find the differential at the point where it will cross it, and pick the angle to maximise the total differential difference.

That would mean that I need to track the equation for each line in the whole shape, though - at least to the point that I can find the gradient at any given point along them.

Therefore, instead of having a bunch of SVG lines and a bunch of virtual "maths-only" lines, it might be better to just have the maths lines and then draw the SVG using them right at the very end. That should help eliminate any discrepancies between the two.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
essential This is required for the minimum viable product feature Add a new feature
Projects
None yet
Development

No branches or pull requests

1 participant