Mcubes: Marching Cubes Isosurface library
Uses the Marching Cubes algorithm to create isosurfaces in Rust or Python, from volume data. Designed to be easy to integrate in applications.

Based loosely on PyMarchingCubes.
Outputs a native Mesh, which contains native Vertexs. In practice, you will convert these to whatever
mesh struct your application uses. For example, graphics::Mesh.
Uses lin-alg for its Vec3 type; this is the library's only dependency.

Used by the Daedalus molecule viewer to view experimentally-derived electron density from protein crystals.
The grid must be regularly spaced, along 3 orthogonal axes. Values are either a Vec<f32>, or points which impl
mcubes::GridPoint. This trait contains a single method: To get the value at that point.
Example creating a solvent-accessible-surface mesh by setting the ISO level to 0, and
rendering only the vertices.

Example use:
use ;
/// An example data struct from your application. If you use something like this
/// to represent a point, you may with to use the `from_gridpoints` constructor.
Why another Marching Cubes library? I couldn't figure out how to use the existing ones.