123k views
5 votes
Using Matlab programming I need to rotate the line defined by x,y by 45 degrees around 2,2

x= 2,4,6,8,10
y= 2,4,6,8,10

1 Answer

0 votes

Answer:

% here x and y is given which we can take as

x = 2:2:10;

y = 2:2:10;

% creating a matrix of the points

point_matrix = [x;y];

% center point of rotation which is 2,2 here

x_center_pt = x(2);

y_center_pt = y(2);

% creating a matrix of the center point

center_matrix = repmat([x_center_pt; y_center_pt], 1, length(x));

% rotation matrix with rotation degree which is 45 degree

rot_degree = pi/4;

Rotate_matrix = [cos(rot_degree) -sin(rot_degree); sin(rot_degree) cos(rot_degree)];

% shifting points for the center of rotation to be at the origin

new_matrix = point_matrix - center_matrix;

% appling rotation

new_matrix1 = Rotate_matrix*new_matrix;

Step-by-step explanation:

We start the program by taking vector of the point given to us and create a matrix by adding a scaler to each units with repmat at te center point which is (2,2). Then we find the rotation matrix by taking the roatational degree which is 45 given to us. After that we shift the points to the origin and then apply rotation ans store it in a new matrix called new_matrix1.

User JackWM
by
5.7k points