HiVis
Synopsis
AVS/Express modules for the visualization of octrees and sparse grids and the
simplified and efficient integration of hierarchical adaptive data structures.
This project is classified as a special project by the IAC. Therefore we cannot offer the same level of support for this project as we do for other projects.
Objective
Encapsulate scientific data that is hold by hierarchical adaptive
datastructures (e.g. Octree, Sparse Grids, ...) for the visualization. This is
provided by a specification of rectilinear tiled grids (in short: adaptive
grid) as a generalized version of uniform grids.
Description
In AVS/Express the Adaptive Grid is integrated as a new grid type. It provides
following modules:
- HiVis_Read_Octree: Read an octree and represent it as an adaptive grid.
- HiVis_Read_SparseGrid: Read a sparse grid and represent it as an adaptive
grid.
- Field_To_HiVis: Convert an AVS/Express uniform grid to an adaptive grid
representation. Data is unchanged.
- HiVis_To_Field: Convert an adaptive grid to an AVS/Express uniform
grid. Node data is interpolated.
- AG_Octree: Convert an adaptive grid to an octree representation. Grid must
have data in cells. Note: The octree aproximates an adaptive grid and is itself
represented as an adaptive grid. This matter should be understood
correctly. E.g. the conversion from an AVS/Express uniform grid to an octree can
be obtained with the modules Field_To_HiVis and AG_Octree.
- AG_SparseGrid: Convert an adaptive grid to an sparsegrid
representation.
- AG_Orthoslice: Orthoslice an n-dimensional adaptive grid (i.e. reduce by one
dimension).
- AG_Cell2Node: Convert celldata to nodedata.
- HiVis_Bounds: Draw grid bounds (no data map as yet).
- HiVis_Iso: Generate isosurface. Grid must have data in nodes.
- HiVis_Streamlines: Generate Streamlines. Grid must have data in nodes.
- HiVis_Render_Sparsegrid: Visualize the nodes of the sparsegrid
datastructure.
- HiVis_Render_Cells: Visualize the adaptive grid cell structure
The implementation is far from being complete. The integration of hierarchical
adaptive datastructures into the visualization is an ongoing research
topic. This package illustrates the choice of an abstract interface to unify
different types of hierarchical adaptive datastructures for their
visualization. But it does not take advantage of all aspects of the hierarchical
adaptive data structures in the visualization. However here are some ideas for
productive usage:
- Visualize the structure of an octree or a sparsegrid using
HiVis_Render_Cells
- Integrate new hierarchic adaptive datastructures by inheriting from the
adaptive grid base class (C++-class visAdaptiveGrid).
- Interpolate a uniform grid with an octree or a sparsegrid, for example to
illustrate image compression.
Known Bugs
- After loading examples, that use the modules Generate_Octree or
Generate_SparseGrid you have to manually update the modules by selecting
different parameters like 'Max tree level' or epsilon values.
Documentation
Author
Peter Breitling ~ breitling@comagic.com
Modifications
Tobias Schiebeck,
International AVS Centre
Contact
International AVS Centre
Manchester Visualization Centre
Manchester Computing
University of Manchester
Oxford Road
Manchester
United Kingdom
M13 9PL