Rotate the centre plate in a geometry
Show older comments
Hi,
I wanted to rotate the inner rectangle (only) to 45 degree, which (0,0) as the fixed point as rotation. I am not sure how to do it by the coordinates. This is my code:

function Nano_Sphere_Dat_Generator
clear
clc
clf
%set value of geometric parameters
a=0.0;
b=0.0;
c=1000;
plate_length=30000;
plate_width=1000;
pos_CNN=10000;
channel_length=100000;
channel_width=60000;
upstream_dist=30000;
CNN_width=0.001;
%create the outer boundary
p1(1)=a-upstream_dist;
p1(2)=-channel_width/2;
p2(1)=a-upstream_dist+channel_length;
p2(2)=-channel_width/2;
p3(1)=a-upstream_dist+channel_length;
p3(2)=channel_width/2;
p4(1)=a-upstream_dist;
p4(2)=channel_width/2;
plot([p1(1),p2(1)],[p1(2),p2(2)])
hold on
plot([p2(1),p3(1)],[p2(2),p3(2)])
plot([p3(1),p4(1)],[p3(2),p4(2)])
plot([p4(1),p1(1)],[p4(2),p1(2)])
axis equal
%create the plate geometry
p5(1)=a;
p5(2)=b;
p6(1)=a+pos_CNN;
p6(2)=b;
p7(1)=a+pos_CNN+CNN_width;
p7(2)=b;
p8(1)=a+plate_length;
p8(2)=b;
p9(1)=a+plate_length;
p9(2)=b-plate_width;
p10(1)=a
p10(2)=b-plate_width;
scatter(p5(1),p5(2))
scatter(p6(1),p6(2))
scatter(p7(1),p7(2))
scatter(p8(1),p8(2))
scatter(p9(1),p9(2))
scatter(p10(1),p10(2))
Answers (1)
darova
on 11 Aug 2021
0 votes
Or you can use rotate()
8 Comments
ka chun yick
on 11 Aug 2021
darova
on 11 Aug 2021
Rewrite your code
x = [p6(1) p7(1) p8(1) p9(1) p10(1)];
y = [p6(2) p7(2) p8(2) p9(2) p10(2)];
h = scatter(x,y);
h1 = rotate(h,15,[0 0 0 ])
ka chun yick
on 13 Aug 2021
darova
on 14 Aug 2021
Try withou output argument
rotate(h,60,[0 0 0])
ka chun yick
on 20 Aug 2021
sorry, wrong order of arguments
t = linspace(0,2*pi,5)+pi/4;
[x,y] = pol2cart(t,1);
h = plot(x,y,'r');
rotate(h,[0 0 1],15,[0 0 0]) % (handle,axis rotation,angle,origin)
line(x,y)
axis equal
legend('rotated','original')
ka chun yick
on 20 Aug 2021
darova
on 20 Aug 2021
Change it to according to my previous code
Categories
Find more on MATLAB Support Package for USB Webcams in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!