generate random point from within three points
2 views (last 30 days)
Show older comments
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 Comments
Answers (1)
Image Analyst
on 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 Comments
Image Analyst
on 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.
See Also
Categories
Find more on Random Number Generation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!