generate random point from within three points

3 vues (au cours des 30 derniers jours)
Hassan
Hassan le 22 Oct 2013
Commenté : Image Analyst le 23 Oct 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 commentaires
Azzi Abdelmalek
Azzi Abdelmalek le 22 Oct 2013
Do you mean inside a triangle?
Hassan
Hassan le 22 Oct 2013
yes

Connectez-vous pour commenter.

Réponses (1)

Image Analyst
Image Analyst le 22 Oct 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 commentaires
Hassan
Hassan le 22 Oct 2013
i think this not a practical solution
Image Analyst
Image Analyst le 23 Oct 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.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Random Number Generation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by