You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Alex Herbert (Jira)" <ji...@apache.org> on 2021/04/25 19:49:00 UTC

[jira] [Created] (RNG-132) Package rng.sampling.shape for sampling coordinates from shapes

Alex Herbert created RNG-132:
--------------------------------

             Summary: Package rng.sampling.shape for sampling coordinates from shapes
                 Key: RNG-132
                 URL: https://issues.apache.org/jira/browse/RNG-132
             Project: Commons RNG
          Issue Type: Task
          Components: sampling
    Affects Versions: 1.4
            Reporter: Alex Herbert
            Assignee: Alex Herbert


Create a {{rng.sampling.shape}} package in the sampling module to contain work-in-progress samplers for shapes.
 * UnitSphereSampler1 (N-surface)
 * UnitBallSampler (N-volume)
 * UnitSimplexSampler (N-surface)
 * LineSampler (N-dimension points on a line segment or polyline)
 * TriangleSampler (N-dimension points within a triangle in a 2D plane)
 * TetrahedronSampler (3D points inside a tetrahedron)
 * SurfaceSampler2 (ND points on a triangulated surface)
 * VolumeSampler (3D points inside a volume composed of tetrahedrons)
 * UnitCubeSampler (N-volume)

1The UnitSphereSampler can be deprecated and a new version created to use a factory method to create the sampler (allowing optimisation for low dimensions).

^2^The SurfaceSampler would be a composite sampler. For sampling a surface the TriangleSampler can be combined with the AliasMethodSamplerDiscreteSampler. The surface should be triangulated. The area of each triangle is used to create a distribution of which triangle to pick using the alias method. A sample is then taken from the chosen triangle.

Shape geometry will not be validated beyond basic testing for non-finite values of input coordinates. Validation of shapes could potentially be done by creating a {{commons-geometry-sampling}} module in the commons geometry project.
 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)