Part I. Core

This is the program itself without the interface. Basically V_Sim allows the user to see in a pseudo 3D representation a list of elements known by their positions in space, all contained in a box. And it gives tools to rotate, zoom and retrieve informations on positions, angles and distances. The program is supposed to be modular and the programer can add new functions "easily".

There are three sections. The first section deals with all the main functions to handle with this modularity, with the 3D drawing... The second section gathers all the extensions that have been added to improve V_Sim in the rendering area. The third section deals with the different possibilities that exist for the user to render different kind of elements.

Table of Contents

VisuObject — A general object to store the signals
visu_tools — Basic tools and variables that are used all around the program.
visu_commandLine — All methods needed to parse options from the command line.
visu_basic — Main functions of V_Sim (except graphical ones).
visu_elements — defines methods to create and acccess to VisuElement.
visu_nodes — Defines the elementary structure to store informations about an element in a box.
VisuData — Give methods to store and manage data from input file(s).
opengl — This part is responsible for the pseudo3D rendering through OpenGl and gives methods to adapt the view.
visu_rendering — Methods to create and add new rendering methods.
visu_configFile — Defines methods to access (read/write) to config files and to create different entries.
visu_extension — All objects drawn by V_Sim are defined in by a OpenGLExtension object
visu_pairs — V_Sim can draw link between nodes. This part defines a pair object and interface to draw pairs.
visu_dump — Some resources to add the ability to export the rendered data to an other format (usually image format).
visu_pickMesure — Some methods to treat a VisuPick informations.
visu_plugins — Introduces the basic handling of plug-ins.
Core tools
toolColor — Simple handling and storage of RGBA colours.
toolConfigFile — Generic read methods of the configuration files are defined here.
toolElements — introduce physical values for the chemical species.
toolFileFormat — Describes file format objects (name patterns, description, properties...).
toolFortran — Introduces routines to read the binary Fortran data format.
toolMatrix — Defines basic handlings on matrix.
toolOptions — A convienent wrapper around GHashTable that can support types.
toolShade — Shades are color gradients.
Rendering methods
renderingSpin — A module able to represent atoms by their position and spin.
renderingAtomic — A rendering method to draw atoms positioned in a box.
renderingAtomic_d3 — Method to load d3 position file.
renderingAtomic_ascii — Method to load ascii position file.
atomic_xyz — Method to load ascii position file.
OpenGL tools
renderingMode — Controls the way OpenGL renders objects.
light — Controls the use of lights in the rendering window.
text — Enables capabilities to write some text on rendering screen.
view — Defines all necessary informations for the rendering of a view.
interactive — Gives tools to interact with the rendered area.
objectList — Gives storage for ids used by OpenGL lists.
Pairs extensions
cylinder — Gives methods to draw cylinders as OpenGl objects pairing two elements.
wire — Gives methods to draw lines as OpenGl objects pairing two elements.
OpenGL specific extensions
box — Draw a bounding box around nodes.
axes — Defines methods to draw axes.
extInfos — give the capability to draw some information near each node.
Scale — Draw an arrow with a label.
fogAndBGColor — Handle the background colour and the fog.
Extra functionalities
dataFile — Adds a possibility to colorize nodes depending on data read in an input file.
dataNode — Extends capabilities of node properties.
Plane — Adds capabilities to draw and handle planes.
scalarFields — Gives capabilities to load a scalar field.
isolines — handle the drawing and the computation of isolines.
surfaces — Supports loading of .surf files and drawing of surfaces through OpenGL.
surfacesPoints
pot2surf — Creates surfaces from scalar fields.
OS dependancy and rendering window backend
visu_windowInterface
visu_actionInterface — Interface for defining actions and events.
visu_OSInterface
visu_openGL
Methods to export to other formats
dumpToPsAndPdf — add an export capability into PS and PDF files (encapsulating bitmaps).
dumpToTiff — add an export capability into TIFF files.
dumpToGif — add an export capability into GIF files.
dumpThroughGdkPixbuf — add an export capability into PNG and JPG files.
dumpToAscii — add an export capability of current positions.
dumpToSVG — add an export capability into SVG files.
Plug-ins
ETSF file format
ABINIT file format