Skip to content

Rust library for generating random points on the surface of a mesh

Notifications You must be signed in to change notification settings

samuelselleck/mesh-rand

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mesh-rand

Rust library for generating random points on the surface of a mesh

Example

use mesh_rand::{MeshSurface, SurfSample};
use rand::distributions::Distribution;
// Verticies and faces for a non-regular tetrahedron:
 let verticies = [
    [0.0, 0.0, 0.0],
    [1.0, 0.0, 0.0],
    [0.0, 1.0, 0.0],
    [0.0, 0.0, 1.0],
];
let faces = [[1, 0, 2], [2, 0, 3], [0, 1, 3], [1, 2, 3]];
let mesh_dist = MeshSurface::new(&verticies, &faces)?;
let mut rng = rand::thread_rng();
let SurfSample { position, .. } = mesh_dist.sample(&mut rng);
println!("generated point on mesh at {position:?}");

Future Additions

  • edge/curve distribution
  • Poisson distributed surface points
  • Randomly sample mesh volume

About

Rust library for generating random points on the surface of a mesh

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages