How to find 2D data points within a specific distance (in X and Y) to the inside direction along boundary line ?
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
In 2D data that has a boundary. How to find data points(x,y) which are laying within specific range from the boundary. For example :
x = gallery('uniformdata',30,1,1);
y = gallery('uniformdata',30,1,10);
plot(x,y,'.')
k = boundary(x,y);
hold on;
plot(x(k),y(k));
So, how can we get the data points(x,y) laying within distance of 0.5 in both directions x and y from the inside wall along the boundary. In other words, How can I get data points(x,y) that is (0.5 or less) away from the inside of the boundary wall in any direction (x,y).
Thanks
0 Commenti
Risposta accettata
KSSV
il 3 Ago 2017
Read about rangesearch
x = gallery('uniformdata',30,1,1);
y = gallery('uniformdata',30,1,10);
plot(x,y,'.')
k = boundary(x,y);
hold on;
plot(x(k),y(k));
%%get points at distance 0.5 from boundary
idx = rangesearch([x y],[x(k) y(k)],0.5);
% plot the points
N = length(k) ;
for i = 1:N
plot(x(idx{i}),y(idx{i}),'O','color',rand(1,3)) ;
end
2 Commenti
John D'Errico
il 3 Ago 2017
The nice thing about Answers is all of us can learn from it. I never saw rangesearch until now. Learn something new everyday.
Più risposte (1)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!