Skip to content

Blue noise sampling on triangle meshes#1597

Merged
alecjacobson merged 7 commits intomasterfrom
blue-noise
Sep 17, 2020
Merged

Blue noise sampling on triangle meshes#1597
alecjacobson merged 7 commits intomasterfrom
blue-noise

Conversation

@alecjacobson
Copy link
Copy Markdown
Contributor

Implements Robert Bridson's "Fast Poisson Disk Sampling in Arbitrary Dimensions" but samples are restricted to be on input triangle mesh. (Euclidean distance is still used).

Also adds a barycentric_interpolation functions (cf. #1596) and corresponding test

Check all that apply (change to [x])

  • All changes meet libigl style-guidelines.
  • Adds new .cpp file.
  • Adds corresponding unit test.
  • This is a minor change.

@alecjacobson
Copy link
Copy Markdown
Contributor Author

image
Left: white noise, Right: blue noise
From tutorial entry

Copy link
Copy Markdown
Collaborator

@jdumas jdumas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks! My only concerns are about reproducibility, due to the reliance on rand(). It would be great if the functions would take a C++11 random number generator so we could produce a deterministic/reproducible sampling.

// z subscript along z direction
// Returns index value
//
inline BlueNoiseKeyType key(
Copy link
Copy Markdown
Collaborator

@jdumas jdumas Aug 23, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe those functions could be prefixed by blue_noise_? E.g. blue_noise_key, blue_noise_far_enough, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants