Content-type: text/html; charset=UTF-8
Man page of IJKMCUBE
IJKMCUBE
Section: User Commands (1)
Updated: 25 JAN 2023
Index
Return to Main Contents
NAME
ijkmcube - generate isosurface using Marching Cubes
SYNOPSIS
ijkmcube [OPTIONS] {isovalues} {input filename}
DESCRIPTION
ijkmcube
generates an isosurface using Marching Cubes or one of its variants.
Input file contains scalar values in NRRD (Nearly Raw Raster Data) format.
When more than one isovalue is specified,
the program will generate a separate output file for each.
OPTIONS
- -octree
-
Create an octree and identify grid cubes intersected by the isosurface
using the octree.
Speeds up isosurface generation when more than one isovalue is specified.
- -region L
-
Divide the grid into regions of LxLxLx... edges
and identify grid regions intersected by the isosurface.
Speeds up isosurface generation when more than one isovalue is specified.
- -nep
-
Use an isosurface table with negative, equals (zero) and positive
vertex labels.
The equals vertex labels represents vertices whose scalar value
equals the isovalue.
- -snap D
-
Apply algorithm
SnapMC.
Construct the isosurface mesh by setting the scalar value
of grid vertices within distance D of the isosurface
to the isovalue.
This effectively "snaps" isosurface vertices onto that grid vertex.
Construct the mesh using the NEP (negative, equals, positive)
lookup table and then move isosurface vertices back
to original locations on the isosurface.
Distance D is between 0.0 and 0.5 and represents
a fraction of the grid edge.
- -ivol
-
Construct an interval volume.
- -subsample S
-
Subsample the input grid and then construct the isosurface.
Subsample the input grid so that S grid edges are replaced
by a single grid edge.
- -supersample S
-
Supersample the input grid and then construct the isosurface.
Supersample the input grid so that each grid edge is replaced
by S grid edges.
Assign scalar values to new grid vertices using multi-linear interpolation.
- -highres "{region_coordinates}"
-
Define a high resolution region in a multiresolution isosurface.
Coordinates must be surroundeded by double quotation marks.
Number of coordinates is twice the grid dimension.
List coordinates of lowest point in region followed by coordinates
of highest point.
- -numres_levels N
-
Determines maximum resolution of high resolution regions.
- -topology "{isotable|cube_decider|adecider}"
-
Choose isosurface topology in ambiguous cubes.
-
- isotable
-
Use topology from isosurface lookup table. (Default.)
- cube_decider
-
Determine topology of ambiguous cubes with no ambiguous facets
based on average value of cube vertices.
- adecider
-
Use the asymptotic decider to determine isosurface topology of
ambiguous facets.
Breaks cubes with ambiguous facets into pyramids.
- -interpolate "{linear|multilinear}"
-
Use linear or multilinear interpolation to determine location
of isosurface vertices in cubes which are subdivided into pyramids
and/or simplices.
Every isosurface vertex is on a cube, pyramid or simplex edge.
-
- linear
-
Determine the location of the isosurface vertex using linear interpolation
on the endpoints of the cube, pyramid or simplex edge
containing the isosurface vertex.
- multilinear
-
Determine the location of the isosurface vertex
using multilinear interpolation on the cube vertices.
- -isotable_dir {isotable_directory}
-
Set the directory containing the isosurface lookup table .xit
(XML Isosurface Table) file.
An isosurface lookup table file of the appropriate dimension
and type is required.
- -off
-
Output the mesh in Geomview .off format. (Default.)
- -ply
-
Output the mesh in Polygon File Format, .ply format.
(Allowed only with 3D scalar data.)
- -fig
-
Output the mesh in FIG (xfig) .fig format.
(Allowed only with 3D scalar data.)
- -o {output_filename}
-
Specify the output file name.
If the output file name is not specified,
the program constructs an appropriate file name.
- -prefix {prefix}
-
Use {prefix} as prefix in constructing output file names.
- -label_with_isovalue
-
Include isovalue in output file name.
- -stdout
-
Send the output to standard output.
- -time
-
Print program execution time information.
- -nowrite
-
Do not write any output file.
Useful in debugging or in timing executions without creating output.
- -s
-
Silent mode. Do not print any grid or isosurface information
on the terminal.
- -usage
-
Print usage message.
- -more_options
-
Print additional (more) options.
- -all_options
-
Print usage message with all options.
- -help
-
Print a help message.
- -help_more
-
Print help message for additional (more) options.
- -help_all
-
Print help message for all options.
EXAMPLES
- ijkmcube 10 data.nrrd
-
Extract the isosurface with isovalue 10 from Nrrd file data.nrrd.
- ijkmcube 10 20 30 data.nrrd
-
Extract isosurfaces with isovalues 10, 20 and 30
from Nrrd file data.nrrd.
- ijkmcube 10 20 30 data.nrrd
-
- ijkmcube -octree 10 20 30 data.nrrd
-
Build an octree on the grid in data.nrrd
and extract isosurfaces with isovalues 10, 20 and 30
using that octree.
Each isosurface is stored in a separate file.
- ijkmcube 10 20 30 data.nrrd
-
- ijkmcube -nep 10 data.nrrd
-
Extract the isosurface with isovalue 10 using an isosurface table
with negative, equals and positive vertex labels.
- ijkmcube -snap 0.3 10 data.nrrd
-
Extract the isosurface with isovalue 10 using algorithm SnapMC
with a snap value 0.3.
- ijkmcube -ivol 10 20 data.nrrd
-
Extract the interval volume representing scalar values from 10 to 20.
- ijkmcube -ivol 10 20 25 data.nrrd
-
Extract the interval volumes representing scalar values from 10 to 20
and the interval volume representing scalar values from 20 to 25.
Each interval volume is stored in a separate file.
- ijkmcube -highres "50 60 70 55 65 75" 10 data3D.nrrd
-
Extract a multiresolution isosurface with isovalue 10.
The rectangular region with lowest vertex (50,60,70)
and highest vertex (55,65,75) has full resolution.
Regions outside this rectangular region have lower resolution.
ijkmcube -highres "40 40 40 60 60 60" -
-
-highres "50 50 50 70 70 70" 10 data3D.nrrd
-
Extract a multiresolution isosurface with isovalue 10.
Rectangular regions between (40,40,40) and (60,60,60)
and between (50,50,50) and (70,70,70) have full resolution
Regions outside these rectangular regions have lower resolution.
Note that the full resolution rectangular regions may overlap.
NOTES
-- Isosurface generation in 3D requires the .xit (XML Isosurface Table)
isosurface lookup table file iso.cube.3D.xit.
-- Isosurface generation in 4D requires the xit isosurface lookup table file
iso.cube.4D.xit.
-- Interval volume generation in 3D requires the xit isosurface
lookup table file ivol.cube.3D.xit.
-- Isosurface generation in 3D with the options
-nep
or
-snap D
requires the xit isosurface lookup table file
iso.nep.cube.3D.xit.
SEE ALSO
ijkgentable(1),xit(5).
AUTHOR
Sundaresan Raman, Rephael Wenger
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- EXAMPLES
-
- NOTES
-
- SEE ALSO
-
- AUTHOR
-
This document was created by
man2html,
using the manual pages.
Time: 13:33:10 GMT, January 26, 2023