I want to extract a circle of values from a meshgrid

24 Ansichten (letzte 30 Tage)
Justin Dubin
Justin Dubin am 22 Mai 2018
Beantwortet: Image Analyst am 23 Mai 2018
I have a 2D meshgrid with dimensions of distance x distance. I want to know the values at a fixed radius from the center.

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 22 Mai 2018
Bearbeitet: Ameer Hamza am 22 Mai 2018
What do you need value from mesh grid, you can calculate the points on the perimeter of the circles using pol2cart(). For example
r = 1
[x,y] = pol2cart(linspace(0, 2*pi, 100), r)
will give you x, y coordinates of points in the circle of radius r.
Edit: If you want to find the points from the mesh grid, then the following code can help
x = -5:1:5;
y = -5:1:5;
[X Y] = meshgrid(x,y);
r = 3; % radius
tolerane = 2;
indicator = abs(X.^2 + Y.^2 - r^2) < tolerane;
xCircle = X(indicator);
yCircle = Y(indicator);
Since points on the grid are discrete you will need to define a tolerance to for accepting a point. You will need to tune the tolerance parameter according to the resolution of your grid to get all points on the circle.
  4 Kommentare
Justin Dubin
Justin Dubin am 23 Mai 2018
Yes, this does the job just fine. Thank you, Ameer!
Ameer Hamza
Ameer Hamza am 23 Mai 2018
You are welcome.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 23 Mai 2018

Community Treasure Hunt

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

Start Hunting!

Translated by