MATLAB: Problems about “rotate” function

polyshapeproblemrotateunion

Hi!!
I'm experiencing the following problem.
k=2;
for i=2:length(t_inf_sgross)
b(k)=subtract(D(k-1),C2(k-1));
D(k)=rotate(b(k),Delta_phi(i));
k=k+1;
end
ruotato=rotate(b(end),-35)
plot(ruotato)
I'm creating a vector called "b" containing a series of polyshapes that results from the subtraction/rotation of geometries contained in "C" vector.
The problem is that when i call the final geometry resulted in "b" vector, then called "ruotato" and i rotate it of a certain angle (here -35°), Matlab seems to rotate only the perimeter but not the area of this geometry, giving the result i post below:
Why this happen?
Thank you!

Best Answer

Presumably because b(end) is the perimeter, i.e., it is a polyshape containing almost no internal area.