generate coordinates circle,square,rectangle
24 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Tomas
am 28 Feb. 2014
Bearbeitet: Will Reeves
am 6 Apr. 2018
Hello,
I have to generate points(matrix),so that i have view the points as a circle(square,rectagle), when i display points(matrix) through plot.
Could someone help me?
Thanks.
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 2 Mär. 2014
For circle and ellipse, see the FAQ for code examples: http://matlab.wikia.com/wiki/FAQ?title=FAQ&cb=7341#How_do_I_create_a_circle.3F
For a square or rectangle, if you have x1, x2, y1, and y2, you can make it with plot by making coordinates of the box and calling plot
xBox = [x1 x2 x2 x1 x1];
yBox = [y1 y1 y2 y2 y1];
plot(xBox, yBox, 'r-', 'LineWidth', 2);
Of course that can ge generalized to any polygon, just list all the vertices.
0 Kommentare
Weitere Antworten (1)
Giorgos Papakonstantinou
am 2 Mär. 2014
% circle
r=1; % radius
C=[1 1];
theta=0:2*pi/360:2*pi; % the angle
m=r*[cos(theta')+C(1) sin(theta')+C(2)]; % the points you asked
plot(m(:,1), m(:,2))
axis equal
hold all
% Rectangle
a=1; % side a
b=.5; % side b
s=[0.5 0.75]; % bottom left start point
A=[s(1) s(1)+a s(1)+a s(1) s(1);s(2) s(2) s(2)+b s(2)+b s(2)];
plot(A(1,:), A(2,:))
axis equal
1 Kommentar
Will Reeves
am 6 Apr. 2018
Bearbeitet: Will Reeves
am 6 Apr. 2018
nice... although the "r*" shouldn't apply to the centre coordinate offset:
m=r*[cos(theta') sin(theta')] + C; % the points you asked
instead of this:
m=r*[cos(theta')+C(1) sin(theta')+C(2)]; % the points you asked
Or am I being silly?!
Siehe auch
Kategorien
Mehr zu Lighting, Transparency, and Shading finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!