how to determine the position of points which belong to a circle ?

Hi how to determine the points of a circle (their x, y coordinates) if we knew the position of the center and the radius of the circle thanks!!!!

 Risposta accettata

If the center is at (x0,y0) and the radius is r, then
1) if (x-x0)^2 + (y-y0)^2 < r^2, the point (x,y) is inside the circle,
2) if (x-x0)^2 + (y-y0)^2 == r^2, the point (x,y) is on the circle, and
3) if (x-x0)^2 + (y-y0)^2 > r^2, the point (x,y) is outside the circle.

1 Commento

thanks for this fast response this is what i'm realy looking for just i need now to write the appropriate code

Accedi per commentare.

Più risposte (1)

6 Commenti

The code I think you're looking for, which gives a list of x,y coordinates given a radius and center location is this:
xCenter = 12;
yCenter = 10;
theta = 0 : 0.01 : 2*pi;
radius = 5;
x = radius * cos(theta) + xCenter;
y = radius * sin(theta) + yCenter;
plot(x, y);
axis square;
xlim([0 20]);
ylim([0 20]);
grid on;
Change xCenter, yCenter, and radius value to whatever you need. If this answers your question, please mark as Accepted.
this code works well but for my case i implemented another one but this is work well and gives what i have asked in my question thanks again
Give your actual MATLAB code - if it's different than this, I can add it to the FAQ as an alternate method.
Well the first way is a totally inefficient way of doing the first method of the FAQ. You can do it just once like the FAQ shows you instead of having a double for loop.
And your second half of your code is just the 4th block of code in the FAQ, just what I recommended to you but you said you didn't use . But you did - you just didn't realize it. Anyway, you don't need to do it both ways.
In your first code it seems like you're trying to get the perimeter pixels, while in the second code you're getting a solid circular disc. I think you should decide whether you want all the pixels in the circle, or just the perimeter pixels, and use the section of the FAQ that does whichever one you want. I would not use your code as-is.
jan
jan il 23 Dic 2014
Modificato: jan il 23 Dic 2014
the second part of my code is just to show you what i want to get as result i.e i used it to shwo you the difference between the both codes. Besides, i had this part from about one year ago and for all these reasons i accepted the first answer and not yours but thanks !!

Accedi per commentare.

Categorie

Scopri di più su Programming in Centro assistenza e File Exchange

Richiesto:

jan
il 22 Dic 2014

Modificato:

jan
il 23 Dic 2014

Community Treasure Hunt

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

Start Hunting!

Translated by