SciFigs
All Geopsy.org softwares use the same graphical engine for plotting results (SciFigs library).
History
One could ask: why another graphical library for plotting XY data? The explanation goes back to the very first developments of a new dispersion curve inversion algorithm in 2002 (SESAME European Project). Based on a direct search algorithm, this code was generating a lot of distinct realizations (i.e. Vs profiles). Debugging and improvements of the forward computation of dispersion curves and the inversion algorithm required plotting thousands of curves on the same plot for first manual quality control. At that time, no high-level interface was able to achieve this task in a reasonable time. Hence, a low level graphical engine was built over Qt libraries with fast and light plotting in mind.
Little by little, the graphical engine evolved with the introduction of the layering concept. Several layers of distinct nature (points, lines, grids,...) can be overlaid on the same plot for comparison purposes. Less optimized but more flexible layers were progressively added (e.g. lines with customizable pen, style and symbols, grids, circles,...). Graphic sheets were also added for displaying several plots on the same screen. Originally with fixed geometry, it was used for plotting 2D projections of models in a N-dimension parameter space. Moving and resizing of plots was progressively introduced.
The last major improvement concerned the parallelization of the painting engine. Plots that need several seconds to be drawn do not freeze the graphical interface. As a consequence, direct rendering of object modification became efficient. A new centralized property editor was introduced at the same time.
Future?
SciFigs engine is still lacking some basic Figures can be saved from figue can edit any figure produced by other softwares and s
- figue: edition of figures extracted from processing applications. Figures produced by [figue] are ready for publications (export to ps, pdf, svg, jpeg, png, or printer).