Class BestCandidateSampling.Sphere

    • Constructor Detail

      • Sphere

        public Sphere​()
        Create a new instance of BestCandidateSampling.Sphere to configure and generate 'best candidate' sample positions on the unit sphere.
    • Method Detail

      • generate

        public BestCandidateSampling.Sphere generate​(float[] xyzs)
        Generate 'best candidate' sample positions and store the coordinates of all generated samples into the given xyzs float array.

        This method performs heap allocations, so should be used sparingly.

        Parameters:
        xyzs - will hold the x, y and z coordinates of all samples in the order XYZXYZXYZ.... This array must have a length of at least numSamples
        Returns:
        this
      • seed

        public BestCandidateSampling.Sphere seed​(long seed)
        Set the seed to initialize the pseudo-random number generator with.
        Parameters:
        seed - the seed value
        Returns:
        this
      • numSamples

        public BestCandidateSampling.Sphere numSamples​(int numSamples)
        Set the number of samples to generate.
        Parameters:
        numSamples - the number of samples
        Returns:
        this
      • numCandidates

        public BestCandidateSampling.Sphere numCandidates​(int numCandidates)
        Set the number of candidates to try for each generated sample.
        Parameters:
        numCandidates - the number of candidates to try
        Returns:
        this
      • onHemisphere

        public BestCandidateSampling.Sphere onHemisphere​(boolean onHemisphere)
        Set whether to generate samples on a hemisphere around the +Z axis.

        The default is false, which will generate samples on the whole unit sphere.

        Parameters:
        onHemisphere - whether to generate samples on the hemisphere
        Returns:
        this
      • generate

        public BestCandidateSampling.Sphere generate​(Callback3d callback)
        Generate 'best candidate' sample call the given callback for each generated sample.

        This method performs heap allocations, so should be used sparingly.

        Parameters:
        callback - will be called with the coordinates of each generated sample position
        Returns:
        this