Skip to content

Data structures, algorithms and display tools for manipulating 3d solid volumes

Notifications You must be signed in to change notification settings

AaronWatters/contourist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

Data structures, algorithms and display tools for manipulating 3d solid volumes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages