IJK: Isosurface Jeneration Kode. IJK is a set of C++ classes, routines and programs for generating isosurface. It includes programs for generating isosurface lookup tables for arbitrary convex polyhedra in arbitrary dimensions. It contains an implementation of the Marching Cubes Algorithm, the 4D Marching Cubes Algorithm, the Marching Cubes Algorithm using negative, equals and positive lookup tables, SnapMC which produces quality isosurface triangles, SHREC for constructing isosurfaces with sharp features using dual contouring and Religrad for computing reliable gradients from scalar data. It also contains programs for reporting scalar data set information, for generating regular grid samplings of scalar and gradient fields, for measuring the angle distance between two surfaces, and for finding sharp edges in a mesh.