GLview Visualization API

Key functionality

GLview Visualization API offers the developer a flexible and easily extendable API. The features can be utilized from the code of the user by means of high-level commands or by function calls.

By means of high level commands, the user may take advantage of the full set of powerful GLview commands to swiftly and easily execute instructions by a single line of code. The available commands cover the functionality for visualization as well as for data access, and may be enriched by the user towards her or his particular application.

The full flexibility and power of the GLview Visualization API is offered through the methods of its object-oriented classes. The classes are in themselves a natural grouping of related functionality in terms of the methods contained. Classes are grouped into modules. This makes it easier for the user to search for and select methods performing specific functions.

The API is delivered as an object library and a set of C++ header files for Windows and most UNIX platforms.

Programming

  • Full-featured class library tailored for creating visual applications for science and engineering.
  • Object-oriented architecture, written in ANSI C++ providing high-level portability.
  • Easy to extend and customize.
  • Handles large models efficiently with high-speed visualizations and animations.
  • Computational efficiency.
  • Powerful features for extracting and conveying data to the GLview Visualization API
  • Utilizes the OpenGL standard for hardware and device independent graphics acceleration.

Data Structure

  • Highly flexible data structure that supports static and adaptive meshes and combinations.
  • Computational cells may be individual lines, triangles, quadrilaterals, tetrahedra, pentahedra or hexahedra, or regular meshes of the same cell type, e.g. allowing conventional finite element unstructured grids or higher order finite element grids and multiblock grids.
  • User data on each element, e.g. for describing material or custom element types.

View Configuration

  • Support for multiple views.
  • The views can look on the same display model or different display models.
  • The plots can be present in multiple views.

Sets

  • Arbitrary number of sets that can be created by spatial position, result value, or programmatically.
  • Set operations like Union, Intersection and Subtraction.
  • Define a working set as a set of sets.
  • Ability to view working set or complement of working set.
  • View each set in a user-defined color.

Results

  • Supports nodal, per element, and per element node results for filled contour plot.
  • Multiple vector fields visualized at the same time.
  • Arbitrary number of result points per element specified in local or global coordinates (both scalar and vector values).

Data Extraction

  • Arbitrary number of cutting planes and iso-surfaces.
  • Map any scalar and vector result on both iso-surface and cutting plane.
  • Compute with one result type and map another on an iso-surface.
  • Show the mesh on the surfaces.

Utility Classes

  • Full-featured string class.
  • Vector and matrix classes.
  • Growable array classes for ints, floats, strings, matrices, vectors.
  • Template array class.

Callbacks

  • Pre and post render 3D scene callbacks.
  • Pre and post render 2D plot callback.
  • User selection (picking) callback.
  • Error and information callback.

Miscellaneous

  • Image export to BMP, GIF, TIFF, PPM, RGB, EPS.
  • Complete on-line help with detailed documentation of each class method and attribute.
  • Any number of customizable 2D plots.
  • User selection (picking) of nodes, polygons, edges, elements, parts, intersections.
  • Advanced animation features for creating complex animations with multiple models, result cases, etc.