Clear Filters
Clear Filters

how to generate random point that have fix distance between each point

3 views (last 30 days)
i can generate random point within a specific area
like this
x=rand(1,100)*5
y=rand(1,100)*5
scatter(x,y)
but i want each point generated within x<1 & y<1
must not be less than 0.05 near the pervous generated points. so no interaction between each point generated.
is it any fucntion can do thing like that?

Accepted Answer

Matt J
Matt J on 27 Jun 2021
Another idea is to generate a chequerboard, and then pick a random point inside all the black (or all the white) squares.
[x,y]=ndgrid((0:2:19)/20);
x=x(:)+rand(size(x(:)))*0.05;
y=y(:)+rand(size(y(:)))*0.05;
scatter(x,y)

More Answers (1)

dpb
dpb on 27 Jun 2021
I see two possible simple alternatives--
  1. Just use rejection technique to remove those within the prescribed distance metric(*), or
  2. Generate a regular grid at prescribed distance beginning at a random point; then make a random selection of N of those points.
(*) Is this global or, just as the Q? is worded, successive realizations; could still be R<Dmin between new point and some prior point earlier than the previous?

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!