How to rotate RECTANGLE?
    11 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Kevin
      
 el 2 de Abr. de 2022
  
    
    
    
    
    Comentada: Image Analyst
      
      
 el 3 de Abr. de 2022
            Hi everyone,
I am using the matlab function RECTANGLE to plot rectangle and ellipse in a figure.
Is it possible to rotate it by any angle (say 30 degrees)?
Kevin
0 comentarios
Respuesta aceptada
  Walter Roberson
      
      
 el 2 de Abr. de 2022
        Not exactly, but there is a way.
h = rectangle('Position',[0 0 2 4],'Curvature',1);
g = hgtransform('Matrix', makehgtform('zrotate', pi/6))
h.Parent = g;
xlim([-5 5]); ylim([-5 5])
Watch out for where the origin of the rotation is; if you want to rotate around the center of the object you should use a transform that subtracts the centroid, does the rotation, and adds back the centroid again. You will find that in practice the makehgtform() call for that will have the addition first, then the rotation, then the subtraction -- that is, the order of operations works out to be right to left.
2 comentarios
  Image Analyst
      
      
 el 3 de Abr. de 2022
				@Kevin I see this requested so often.  Please send in a request to support@mathworks.com saying there should be an "Angle" option of rectangle() so we can specify the angle in degrees of the long sides.
Más respuestas (0)
Ver también
Categorías
				Más información sobre Axis Labels en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



