Random point inside a polygone

Create random point inside a polygone

Al momento, stai seguendo questo contributo

If you have a 2D CONVEX polygone and you want to create uniform point indise it, you can use randPolygone. The function is based on another (provided) function randTriangle that work on triangle.

Uniform means each area of your polygone has the same chance to be taken.

Here are some examples:

triangle = [0,0;10,0;2,3];
losange = [0,0;2 ,1;0,2;-2,1];
carre = [0,0;2 ,0;2,2; 0,2];
hexagone = [0,0;1,0;10,1;30,8;20,8;0,5];
dodecagone = [cos(linspace(0,2*pi,13))',...
sin(linspace(0,2*pi,13))'];
dodecagone(end,:) = [] ;

rTriangle=randPolygone(triangle,1e4);
rLosange=randPolygone(losange,1e4);
rHexagone=randPolygone(hexagone,1e4);
rCarre=randPolygone(carre,1e4);
rDodecagone=randPolygone(dodecagone ,1e4);

figure
scatter(rTriangle(:,1),rTriangle(:,2),'.')

Cita come

Stephane Dauvillier (2026). Random point inside a polygone (https://it.mathworks.com/matlabcentral/fileexchange/71398-random-point-inside-a-polygone), MATLAB Central File Exchange. Recuperato .

Informazioni generali

Compatibilità della release di MATLAB

  • Compatibile con R2016a e release successive

Compatibilità della piattaforma

  • Windows
  • macOS
  • Linux
Versione Pubblicato Note della release Action
1.0.1

include the live function randTriangle

1.0.0