Concentric Squares with random points

1 view (last 30 days)
Hi to everybody
Someone could I help me how to create a script for two concentric squares so that I have a set of points in the difference of areas?
I have this initial code:
With the last script I reach to create two areas but I need only the points in the difference of areas
Thank you to everybody!
Thank you guys!!!
  2 Comments
KSSV
KSSV on 23 May 2020
Edited: KSSV on 23 May 2020
You have changed the original question.....even you have unaccepted the accepted answer, even you have deleted your comment where you said thanks for the solution....why? It is not ethical of you.
Rena Berman
Rena Berman on 1 Jun 2020
(Answers Dev) Restored edit

Sign in to comment.

Accepted Answer

KSSV
KSSV on 23 May 2020
clc; clear all ;
% Inner Square
S1 = [-5 -5 ; 5 -5 ; 5 5 ; -5 5] ;
% Outer Square
S2 = [-10 -10 ; 10 -10 ; 10 10 ; -10 10] ;
% Generqate random points
a = -10 ; b = 10 ;
N = 100000 ;
x = (b-a)*rand(N,1)+a ;
y = (b-a)*rand(N,1)+a ;
% poins which lie inside S1
idx = inpolygon(x,y,S1(:,1),S1(:,2)) ;
% plot
x = x(~idx) ; y = y(~idx) ;
plot(x,y,'.b')
  2 Comments
Lewis HC
Lewis HC on 23 May 2020
Thank you friend!!!
Another question...is it posible get a same squares using for, while, else, etc??...thank you friend!!!
KSSV
KSSV on 23 May 2020
Very much possible...

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!