Problem 198. Are you in or are you out?
Given vertices specified by the vectors xv and yv, and a single point specified by the numbers X and Y, return "true" if the point lies inside (or on the boundary) of the polygon defined by the vertices.
Example:
% The specified point is the center of the unit square: xv = [0 1 1 0]; yv = [0 0 1 1]; X = 0.5; Y = 0.5;
inside(xv,yv,X,Y) -----> true
Solution Stats
Problem Comments
-
3 Comments
The test suit only tests points that are inside or outside but not on the boundary of the polygon
Cyclist, this was a pretty tough problem to solve without resorting to Googling a solution or something similar. I ended up with a function that will work for any n-sided polygon. Thanks for the weekend challenge.
Maybe, thinking this problem in topology aspect is useful.
Solution Comments
Show commentsProblem Recent Solvers233
Suggested Problems
-
How to find the position of an element in a vector without using the find function
2712 Solvers
-
Project Euler: Problem 8, Find largest product in a large string of numbers
1088 Solvers
-
498 Solvers
-
Find out missing number from a vector of 9 elements
295 Solvers
-
708 Solvers
More from this Author23
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!