Rotation about a point
23 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Daniel Campbell
il 15 Nov 2018
Modificato: Jim Riggs
il 15 Nov 2018
Hi there I have been given a problem:
"A triangle is defined by the points (1, 1), (2, 4) and (7, 2). Using the three constituent simple transformations, transform the triangle with a rotation about the point (1, 3) by 60◦ anti-clockwise".
If I am being honest I have no idea how to start this
Any help would be great
Daniel
2 Commenti
madhan ravi
il 15 Nov 2018
If you keep closing the question , you wont get any further help hereafter
Risposta accettata
Jim Riggs
il 15 Nov 2018
Modificato: Jim Riggs
il 15 Nov 2018
If you want the equations they are as follows;
X = [1 2 7 1];
Y = [1 4 2 1];
ang = -60 % degrees
Xc = 1; % X cener of rotation
Yc = 3; % Y center of rotation
% Shift X/Y to the rotation center
Xshift = X - Xc;
Yshift = Y - Yc;
% Rotate the coordinates
Xsrot = Xshift*cosd(ang) + Yshift*sind(ang);
Ysrot = -Xshift*sind(ang) + Yshift*cosd(ang);
% Shift the rotated coordinates back to the original reference center
Xrot = Xsrot + Xc;
Yrot = Ysrot + Yc;
Now X,Y is the original triangle and Xrot,Yrot is the rotated triangle
This can be shortened to:
X = [1 2 7 1];
Y = [1 4 2 1];
ang = -60; % degrees
Xc = 1;
Yc = 3;
Xrot = (X-Xc)*cosd(ang) + (Y-Yc)*sind(ang) + Xc;
Yrot = -(X-Xc)*sind(ang) + (Y-Yc)*cosd(ang) + Yc;
0 Commenti
Più risposte (1)
madhan ravi
il 15 Nov 2018
Modificato: madhan ravi
il 15 Nov 2018
x=[1 2 7 1];
y=[1 4 2 1];
fig=figure
h=plot(x,y)
center = [1 3];
rotate(h,center,-60)
title('ROTATED TRIANGLE @CENTER (1,3) anticlockwise')
print(fig,'Rotated_triangle','-dpng')
fig1=figure
plot(x,y)
title('ORIGINAL TRIANGLE')
print(fig1,'Orignal_triangle','-dpng')
4 Commenti
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!