Data structures, algorithms and display tools for manipulating 3d solid volumes
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
contourist
doc
js
misc
.gitignore
README.md
contours.png
isosurface.png
setup.py
triangle_json.py

README.md

contourist

Data structures, algorithms and display tools for generating 2d contours and 3d isosurfaces.

Contour interpolations

Contour lines define a boundary as a sequence of line segments approximating f(x,y) = v for some function f, some value v and x and y varying in some specified region.

Contour display example

Isosurfaces

Isosurfaces define a boundary as a collection of oriented triangles approximating f(x,y,z) = v for some function f, some value v and (x,y,z) varying in some specified volume.

Isosurface display example

Here is a live demo of an isosurface displayed using jsfiddle: https://jsfiddle.net/AaronWatters/9qszgyaj/.

Morphing 3d Isosurfaces

A morphing isosurface represents the point set satisfying f(x,y,z,t) = v for some function f, some value v and (x,y,z,t) varying in some specified volume and time extent. It displays a smoothy evolving isosurface for f(x,y,z,t0) = v as t0 smoothly transitions from a minimum to a maximum time value.

Here is a live demo of a morphing isosurface displayed using jsfiddle: https://jsfiddle.net/AaronWatters/x35crpb0/.

Here is an example page that includes a morphing isosurface: https://rawgit.com/AaronWatters/contourist/master/misc/distance.html.

Here is another example derived from CT-scan data https://rawgit.com/AaronWatters/contourist/master/misc/static_mri.html.