[ https://issues.apache.org/jira/browse/RNG-131?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alex Herbert resolved RNG-131. ------------------------------ Fix Version/s: 1.4 Resolution: Implemented Added to master in commit 6e346fefff881e9fcc0509a5a0af93283089c53a > TriangleSampler: Sample uniformly within a triangle > --------------------------------------------------- > > Key: RNG-131 > URL: https://issues.apache.org/jira/browse/RNG-131 > Project: Commons RNG > Issue Type: New Feature > Components: sampling > Affects Versions: 1.4 > Reporter: Alex Herbert > Priority: Minor > Fix For: 1.4 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > Create a sampler to sample uniformly within a triangle: > {code:java} > public abstract class TriangleSampler implements > SharedStateSampler<TriangleSampler> { > public static TriangleSampler of(double[] a, > double[] b, > double[] c, > UniformRandomProvider rng); > } > {code} > Sampling of a point p can be performed within a triangle with vertices a, b, > c using: > {noformat} > v = b - a > w = c - a > p = a + s * v + t * w > with s and t uniform deviates in [0, 1] and s + t <= 1 > Note: When s + t > 1 then transform s = 1 - s and t = 1 - t.{noformat} > This algorithm is described in: > Turk, G. Generating random points in triangles. Glassner, A. S. (ed) (1990). > Graphic Gems, Academic Press, pp. 24-28. > The method is applicable to any number of dimensions for the vertices. The > triangle defines the 2D Euclidean space (plane) for sampling. -- This message was sent by Atlassian Jira (v8.3.4#803005)