points lying inside a polygon and a circle

19 views (last 30 days)
How can I find the number of point lies inside both a circle and a polygon (the point should lie in the mutual/overlapping area in between the circle and the polygon) ?

Accepted Answer

Matt J
Matt J on 30 Jan 2017
Edited: Matt J on 25 Apr 2019
If the circle is centered at (x0,y0), with radius R and the polygon has vertices xv,yv, you could do,
count = sum( inpolygon(x,y,xv,yv) & ((x-x0).^2+(y-y0).^2<=R^2) )
  3 Comments

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 30 Jan 2017
Did you try
count = 0;
if inpolygon(x,y,xCircle,yCircle) && inpolygon(x,y,xPoly,yPoly)
count = count + 1
end
where you call inpolygon twice, once passing in the circle coordinates and once passing in the polygon coordinates and then ANDing the two results together?
  6 Comments
KalMandy
KalMandy on 30 Jan 2017
I have the radius and the coordinates of the center of the circle. what is given by xCircle,yCircle? Thanks for your response.
hanif hamden
hanif hamden on 25 Apr 2019
If i put (x,y) in geographical coordinate and I want my radius is 10km. How should I do that?

Sign in to comment.

Categories

Find more on Computational Geometry in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!