How to rotate this 2d matrix with some angle ?
Ältere Kommentare anzeigen
I tried to make a mesh using this
z=peaks(100);
// Now z is a 100x100 matrix
Now I want to roatate this in some angle like 5 degress
I tried this for
z = peaks(2);
theta = 5;
R = [cosd(theta) -sind(theta); sind(theta) cosd(theta)];
z1=R*z;
but for z greater than 2x2 not working
this i want

Akzeptierte Antwort
Weitere Antworten (1)
To define a rotation matrix, you need
- one angle in 2D (rotation around the Z axis)
- one angle and an axis of rotation in 3D
- one angle and 2 vectors, which build the plane to rotate in in 4D and higher dimensions. Rotating "around an axis" is not uniquely defined in >= 4D.
2 Kommentare
shubham kumar gupta
am 19 Nov. 2022
Bearbeitet: shubham kumar gupta
am 19 Nov. 2022
Jan
am 20 Nov. 2022
Please read the documentation of the provided command: help RotMatrix. The input (5,1,z) are not meaningful. The angle is provided in radians, not degrees. With 3 inputs, you ask for a rotation matrix in a higher dimensional case. Then the 2nd and 3rd argument are two vectors which span the plane to rotate in.
I cannot suggest values vor u and v as long as you do not define the plane to rotate in. But I think, you do not want to rotate in a 25-dimensional space, but still in 2D.
Kategorien
Mehr zu Geometric Transformation and Image Registration finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
