How can I rotate a curved rectangle?

I have created a curved rectangle and now I want to rotate it. I know I can not rotate using rectangle commande. I also tried to plot the rotated rectangle using "fill" but then I can not add curvature.
So, the question is, How can I plot a rotated curved rectangle?

2 Kommentare

Adam Danz
Adam Danz am 10 Jan. 2021
Bearbeitet: Adam Danz am 22 Mär. 2021
rectangle2() from the file exchange can rotate a curved rectangle.
rectangle2([x,y,w,h],'Curvature',[a,b],'Rotation',deg);
Examples:
Antje Nuthmann
Antje Nuthmann am 20 Mär. 2021
rectangle2 works well, thanks!

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Friedrich
Friedrich am 10 Apr. 2013

0 Stimmen

HI,
so you have a set of points (x,y) describing a curved rectangle. I guess the keyword here is rotation matrix:
Create the Matrix accoringly and multiple it with your (x,y) values to get the rotated rectangle.

6 Kommentare

Laleh
Laleh am 10 Apr. 2013
But the problem is the command "rectangle" does not support rotation. There is no way, I guess, to rotate a rectangle using the commande "rectangle".
Friedrich
Friedrich am 10 Apr. 2013
Yes in that case no chance. You would need do draw that rectangle by yourself to get x,y points and then rotate it by your own or using the rotate function.
Laleh
Laleh am 10 Apr. 2013
What do you mean by rotate function? Let's say I have my rotated (x,y) values. If I give these values to function "fill" I will have a nice rotated rectangle. Having these values what is the code to plot the curved rectangle?
Friedrich
Friedrich am 10 Apr. 2013
The rotate function can rotate graphic objects:
But not a rectangle object :(
Laleh
Laleh am 10 Apr. 2013
Yes that is my point, so what should I do now? :(
Friedrich
Friedrich am 11 Apr. 2013
You need to create your own version of the rectangle function which calculates the curved rectangle from scratch. Afterwards you can plot it an rotate it.

Melden Sie sich an, um zu kommentieren.

Rafal Samborski
Rafal Samborski am 10 Apr. 2013
Bearbeitet: Rafal Samborski am 10 Apr. 2013

0 Stimmen

If it's ony about plotting try to call this after your plot function:
alpha = 30; set(gca, 'View', [alpha 90]);

1 Kommentar

Laleh
Laleh am 10 Apr. 2013
After the "rectangle" command when I add your code, it rotates the axis of the plot, and does not show anything inside, just white plot!!!

Melden Sie sich an, um zu kommentieren.

Gefragt:

am 10 Apr. 2013

Bearbeitet:

am 22 Mär. 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by