22 lines
884 B
Matlab
22 lines
884 B
Matlab
% Visualize some common matrix transformations
|
|
% in a 2D coordinate system
|
|
% this uses the simplematrixbox() function for visualization
|
|
% use the matrix2dtrafos script for the the nicer matrixbox() function.
|
|
|
|
disp( 'Click into the plot to advance to the next matrix' )
|
|
simplematrixbox( [ 1 0; 0 1], 'Identity' );
|
|
simplematrixbox( [ 2 0; 0 1], 'Scale x' );
|
|
simplematrixbox( [ 1 0; 0 2], 'Scale y' );
|
|
simplematrixbox( [ 2 0; 0 2], 'Scale x and y' );
|
|
simplematrixbox( [ 0.5 0; 0 0.5], 'Scale x and y' );
|
|
simplematrixbox( [ -1 0; 0 1], 'Flip x' );
|
|
simplematrixbox( [ 1 0; 0 -1], 'Flip y' );
|
|
simplematrixbox( [ -1 0; 0 -1], 'Flip both' );
|
|
simplematrixbox( [ 1 1; 0 1], 'Shear x' );
|
|
simplematrixbox( [ 1 0; 1 1], 'Shear y' );
|
|
% rotation matrices:
|
|
for deg = 0:10:360
|
|
phi = deg*pi/180.0;
|
|
simplematrixbox( [ cos(phi) -sin(phi); sin(phi) cos(phi)], sprintf( 'Rotate %.0f', deg ) );
|
|
end
|