Check of point inside/outside polygon
Gorge Jingale via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Tue Jul 26 11:39:58 PDT 2016
On Tuesday, 26 July 2016 at 17:38:43 UTC, Suliman wrote:
> I have arbitrary polygon. I need any solution. Performance is
> does not matter at current moment.
A polygon is made up of lines. For a point to be inside a convex
polygon, it must be to the "right" of all the lines with
clockwise orientation.
One way for this to work is simply draw a line segment from each
vertex to the point and compare it to the number of intersections
with other lines. The number of intersections must be odd for it
to be inside the polygon. Think of a regular polygon, any point
inside will have no other line segments between it and the point.
All intersection values will be 0.
So, for each n vertices we have n line segments, we must the find
the number of intersection points for the other n-1 line
segments. This reduces the problem to line segment intersection
but is of the order O(n^2), but works in general.
More information about the Digitalmars-d-learn
mailing list