Effacer les filtres
Effacer les filtres

How can I convert this circle drawing code as a Function code? thank you

1 vue (au cours des 30 derniers jours)
Maitham
Maitham le 14 Fév 2014
Réponse apportée : Maitham le 16 Fév 2014
% Create a logical image of a circle with specified
% diameter, center, and image size.
% First create the image.
imageSizeX = 640;
imageSizeY = 480;
[columnsInImage rowsInImage] = meshgrid(1:imageSizeX, 1:imageSizeY);
% Next create the circle in the image.
centerX = 320;
centerY = 240;
radius = 100;
circlePixels = (rowsInImage - centerY).^2 ...
+ (columnsInImage - centerX).^2 <= radius.^2;
% circlePixels is a 2D "logical" array.
% Now, display it.
image(circlePixels) ;
colormap([0 0 0; 1 1 1]);
title('Binary image of a circle');
[EDITED, Jan, code formatted]

Réponse acceptée

Mischa Kim
Mischa Kim le 14 Fév 2014
Modifié(e) : Mischa Kim le 14 Fév 2014
Maitham, check out the following:
function my_circ(imageSize, center, radius) % function definition
% Create a logical image of a circle with specified
% diameter, center, and image size.
% First create the image.
imageSizeX = imageSize(1);
imageSizeY = imageSize(2);
[columnsInImage rowsInImage] = meshgrid(1:imageSizeX, 1:imageSizeY);
% Next create the circle in the image.
centerX = center(1);
centerY = center(2);
circlePixels = (rowsInImage - centerY).^2 ...
+ (columnsInImage - centerX).^2 <= radius.^2;
% circlePixels is a 2D "logical" array.
% Now, display it.
image(circlePixels) ;
colormap([0 0 0; 1 1 1]);
title('Binary image of a circle');
end % end of function
which is called (e.g., from the MATLAB command window) with
my_circ([400 600], [20 30], 50)

Plus de réponses (1)

Maitham
Maitham le 16 Fév 2014
Dear Micha Kim, Thank you for your answer and it works. Very kind regards Maitham

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by