MATLAB Answers

Steve
0

How do I create some code that will check angles and select the next point to draw a line to based on smallest angle?

Asked by Steve
on 16 Oct 2019
Latest activity Commented on by Steve
on 20 Oct 2019
Hi,
I need to create the simplest code that will check the angles between a line connecting one central point and another and a line from the same initial central point to a triplet endpoint. I need the code to be able to select the correct central point to draw a line to based on smallest angle (see attached pics). Attached are the two files that contain the coordinates for the central points (f_points) and the endpoints (Triplets): The files are (1) F_points.mat (2) Triplets.mat
allpoints.png
Below is the same image with lines being created:
allpoints-with-lines.png
Below is an image which gives an idea of what is needed:
angles_from_points.png

  5 Comments

The main requirement is that the lines connecting the neighboring central points must make the smallest angle with one of their corresponding endpoints.
How to find neighboring central points?
This is how looks like searching by distance
img11.png
Distance could be used to narrow down to a specific vicinity. Then, the angle that a potential line (between central points) would make with another line (from the the source central point to the corresponding endpoint) could be used to verify a line is correct. Is that what you did?

Sign in to comment.

Products


Release

R2019a

1 Answer

Answer by darova
on 18 Oct 2019

Here is some start
What about these?
img1.png img2.png img3.png
See attached script

  5 Comments

Attached shows the correct paths (Notice all the lines create the shallowest angles--this is key):
correct_path.png
I see what you are pointing out there but, as mentioned previously, the blue line needs to also have a matching "twin" angle on the other end or it is disqualified (see attched pic).
mismatched-angles2.png
Take a look at my picture in my previous comment...all the angles obey the rules.

Sign in to comment.