
How to draw equally sized squares
    6 views (last 30 days)
  
       Show older comments
    
Hi,
I draw a circle of radius 1, and I want to draw eqaully sized squares in the background of the circle. Kindly some one help,
r = 1. 0;
th = linspace(0,2*pi) ;
x = r*cos(th) ;
y = r*sin(th) ;
patch(x,y,rand(1,3)) ;  % I am using random color in patch here. 
axis equal
Now I want draw 10x10 squares as a background to the circle (the dia of each square is (2*r/10)). 
0 Comments
Answers (1)
  KALYAN ACHARJYA
      
      
 on 19 Apr 2019
        
      Edited: KALYAN ACHARJYA
      
      
 on 19 Apr 2019
  
      x=[-1, 1, 1, -1, -1];
y=[-1, -1, 1, 1, -1];
plot(x, y, 'r-');
fill(x,y,'b')
hold on;
r=1.0;
th=linspace(0,2*pi) ;
x=r*cos(th) ;
y=r*sin(th) ;
patch(x,y,rand(1,3)) ;  % I am using random color in patch here. 
axis equal

3 Comments
  KALYAN ACHARJYA
      
      
 on 19 Apr 2019
				
      Edited: KALYAN ACHARJYA
      
      
 on 19 Apr 2019
  
			Automatically, I dont know, but manually you can do that
x1=[-1, 1, 1, -1, -1];
y1=[-1, -1, 1, 1, -1];
plot(x1, y1, 'r-');
fill(x1,y1,'b')
% one block 
hold on;
x1=[-1,-0.9,-0.9,-1,-1];
y1=[-1,-1,-0.9,-0.9,-1];
plot(x1, y1, 'y-','linewidth',2);
fill(x1,y1,'r')

Keeping here blue big square for refernece purpose only

See Also
Categories
				Find more on Surface and Mesh Plots 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!
