Having trouble modifying a figure using homogeneous coordinates
조회 수: 1 (최근 30일)
이전 댓글 표시
Hey everyone! As the title suggests, I'm having trouble modyfing a figure using homogeneous coordinates. I'm using the following code:
theta = linspace(0,2*pi,512);
x = sin(theta);
y = 2*cos(theta);
ellipse1 = [x;y;ones(size(x))];
Scale = [0.4 0 0;0 0.6 0;0 0 1];
Rotate = [cos(pi/4) sin(pi/4) 0 ;-sin(pi/4) cos(pi/4) 0;0 0 1];
Translate = [1 0 1;0 1 1;0 0 1];
transform = Translate * Rotate * Scale;
transformedellipse = transform * ellipse1;
plot(x,y)
hold on
plot(transformedellipse)
hold off
axis([-2 2 -3 3]);
What I'm hoping to do is scale the figure by 0.4 and 0.6 in the x and y dimensions, rotate it and then translate it but when I plot it instead of my desired ellipse a weird glitchy rectanlge shows up (I'm attaching the resulting figure). Any input you could give me as to what I'm doing wrong would be greatly appreciated. Thanks in advance!
댓글 수: 0
채택된 답변
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!