generate random point from within three points

2 visualizaciones (últimos 30 días)
Hassan
Hassan el 22 de Oct. de 2013
Comentada: Image Analyst el 23 de Oct. de 2013
if i have three points P1=(x1,y1),P2=(x2,y2),P3=(x3,y3). how can i generate a random point within them .
Thanks,
  2 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 22 de Oct. de 2013
Do you mean inside a triangle?
Hassan
Hassan el 22 de Oct. de 2013
yes

Iniciar sesión para comentar.

Respuestas (1)

Image Analyst
Image Analyst el 22 de Oct. de 2013
One way is to generate random coordinates within the x and y range - this would give a point in a rectangle. Then call inpolygon() to see if that point is inside the triangle. If it is, you're done. Otherwise, try another random point until you get one that is in side the polygon.
  2 comentarios
Hassan
Hassan el 22 de Oct. de 2013
i think this not a practical solution
Image Analyst
Image Analyst el 23 de Oct. de 2013
And why not? What's wrong with it? It's simple and fast. Anything else, such as using affine transforms, will be far more complicated. I believe even Roger Stafford was okay with the try-and-exclude method for getting random points in a circle, though he did come up with a better analytical method, but a circle is simpler than some arbitrary triangle.

Iniciar sesión para comentar.

Categorías

Más información sobre Random Number Generation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by