how to make rectangle in circle?
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to make rectangles in circle.
I know the radius, rectangle's width and length.
please let me know how to do this
thanks
Réponse acceptée
Matt J
le 19 Nov 2022
Modifié(e) : Matt J
le 19 Nov 2022
[X,Y]=ndgrid(-10:10);
r=arrayfun( @(x,y) nsidedpoly(4,'Center',[x,y],'Radius',1/sqrt(2)) , X(:),Y(:));
c=intersect(nsidedpoly(1000,'Radius',5), scale(r,[1,1.5]));
plot(c,'FaceColor','none')
4 commentaires
Matt J
le 20 Nov 2022
width=1;
length=1.3;
circleRadius=10;
[X,Y]=ndgrid(-circleRadius:width:circleRadius+width);
r=arrayfun( @(x,y) nsidedpoly(4,'Center',[x,y],'Radius',width/sqrt(2)) , X(:),Y(:));
c=intersect(nsidedpoly(1000,'Radius',circleRadius), scale(r,[1,length/width]));
c=translate(c,ARP_lon,ARP_lat);
plot(c,'FaceColor','none'); axis equal
Plus de réponses (1)
Image Analyst
le 19 Nov 2022
See the FAQ:
Then plot it with plot and then for each x and y value you want find the end points of a line segment and use line() or plot() to draw the line from one side of the circle to the other. It's easy but if you really can't figure it out then write back.
3 commentaires
Image Analyst
le 20 Nov 2022
You do not ned to know the crossing/intersection coordinates of the vertical and horizontal lines inside the circle. All you need to know for the horizontal lines is the y value and the two points on the circle closest to that y value. Similar for the lines in the other direction. But it looks like @Matt J suggested a different approach and you accepted that so I won't proceed with my approach.
Voir également
Catégories
En savoir plus sur Geographic Plots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!