From: John Stone (
Date: Wed Jan 17 2018 - 12:07:23 CST

  All of the conventional isosurface extraction schemes for scalar fields
end up doing interpolation (trilinear, tricubic, ...) to find the points
along the edges of cubes, tetrahedra, or other space filling shapes where
the isosurface(s) pass through the space filling shape.

The VMD "points" isosurface mode is different, it uses a very fast and simple
scheme that skips the interpolation step (thereby saving massive numbers
of slow memory accesses) and just compares values of voxels that are
neighbors in the X-dimension, and draws a point when their values straddle
the isovalue of interest. That makes the points isosurface scheme useful
for interactive display of volumes that would otherwise present a massive
rendering workload with the full-accuracy code path.

The use of binary on/off voxel values in your volumes will work, but will
give you somewhat poorly/oddly shaded surfaces due to the way surface normals
are typically computed.

Read here for details about what isosurfaces are and out they are computed
on regularly spaced volumetric grids:

VMD uses Marching Cubes, which is described briefly here:

  John Stone

On Wed, Jan 17, 2018 at 11:02:22AM -0500, Vincent Ustach wrote:
> Dear VMD List,
> I have a field of 1s and 0s with isosurface representation in VMD (VMD for
> LINUXAMD64, version 1.9.1 (February 1, 2012). I noticed that with Draw
> Points, the Isovalue does not affect the isosurface. With Draw Wireframe
> and Draw Solid Surface, an Isovalue of 1.0 gives the same surface as Draw
> Points, but decreasing Isovalue towards 0.0 causes the isosurfaces to
> expand.
> Since the grid has values of 0 and 1, I guess there is some interpolation
> scheme that "finds" where the volume is equal to the Isovalue. Is that
> true? Can someone please explain how it works?
> Best Regards,
> Vinnie Ustach

NIH Center for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801           Phone: 217-244-3349