How do you determine if a point is to the left or right of a curve?
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
RAFFAELE MAGLIONE
le 22 Juin 2022
Commenté : RAFFAELE MAGLIONE
le 22 Juin 2022
With reference to the images below, what I need is to establish whether the generic red point is to the right or left of the blue curve, according to the direction of travel specified by the arrow.
I have the geographic coordinates of those points available, so the first thing I tried was to calculate the distance between the generic red point and the two black lines with the Haversine formula and establish the sign based on which of these two distances is the largest, but since the circuit is not perfectly symmetrical this method does not work.
I then tried with if loops, imposing a change of sign there where there was a minimum of the distance of the red point from the blue line, but even this is not accurate.
I tried the cross product, but I think it works well only with the metric coordinates.
Do you have any suggestions?
0 commentaires
Réponse acceptée
MJFcoNaN
le 22 Juin 2022
Hello,
Is "to the right" meaning that a red point is in the polygon of blue track? The function of inpolygon may help:
[in, on] = inpolygon(x_red, y_red, x_blue, y_blue);
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!