[vtkusers] old subject on GUI with VTK

N Smethurst nick.smethurst at free.fr
Tue Jul 1 13:41:38 EDT 2003

Hi there

I have been working for about 7 months on a visualisation system using 
KDE/QT/VTK which I hope will get to the stage where it can be used for 
both general visualisation (i.e. low level VTK stuff) and also more 
standard plotting such as that found in numerical software packages.

I have not yet released any code to the public mainly due to the reason 
that the internal design of the software has taken a lot of thinking, and 
I wanted to be able to present a complete theoretical design before giving 
out source code. Otherwise, I would almost definitely be prone to changing 
fundamental aspects of the program structure, and this would not bode well 
if others were wishing to use or help develop it.

As it stands, I have about 12000 lines of compact c++ code + api 
documentation and am in various stages of implementing the following 

* Document-view model interface (semi MDI: multiple windows with a tab 
widget in each - like konqueror).

* Multiple render window support for documents.

* XML based document file format.

* XML based internal communication mechanism used for loading/saving files, 
connecting and manipulating objects, and passing commands & data from 
external applications.

* Socket/DCOP based communication interfaces for driving the visualiser 
from external numerical applications.

* Creation & modification of standard VTK objects.

* Creation & modification of higher level plotting objects such as surfaces 
& lines (for standard plotting type applications).

* Object browser window with custom mimetype support for drag & drop of 
objects. The goal is to be able to connect/disconnect object pipelines 
with the use of drag & drop in the browser, and to be able to modify their 

* A small quantity of additional support objects for facilitating the user 

* A set of axes classes (cartesian, spherical, cylindrical) which work 
automatically with the higher level and support objects.

* A set of clipping and warping objects that work as helpers to the axes 
classes in order to provide clipping support and logarithmic & axes aspect 
ratio support.

* Real time interaction including real time panning through datasets.

Things that are planned but are currently in an early or an initial 
thinking stage (i.e. no code yet):

* An interface to the Octave package in order to integrate the Octave 
engine into a KDE application that drives the visualisation software.

* A standard user plotting language for Octave that can be used by other 
visualisation systems that interface with Octave.

* XSL stylesheets that convert the XML files into other formats.

* A callback system for use with external applications.

* Having different processor threads for the user interface and VTK.

The main problem I have at the moment is that I am in the last two months 
of doing my DEA stage in (more c++, acoustics, and signal processing) and 
so I have not found the time to develop as rapidly as before. I also need 
to find a job for when I finish! However, I am still making progress, 
allbeit a little more slowly at the moment.

Is your interest as a user or as a developer? I am certainly hoping to 
attract other developers to the project, but at the moment I have held 
back releasing any code for the reasons mentioned above. However, if there 
is anyone that is interested in the project from a development point of 
view, I could put something together soonish in order for potentially 
interested developers to take a look at.



Le Mardi 1 Juillet 2003 17:17, Jean-Christophe Penalva a écrit :
>   Hello,
>   i look for a GUI to work with VTK. In some old mails, there're a lot
> of idea (QT, wxWindows, fltk, VTKDB, XML ... VTKBuilder ) but what exist
> today ? There're some old product, but they are "old" and with no
> modifications for a long time !
>   Is there anybody working on this subject ? Is there an opensource
> project somewhere ?
>   Thank you.
> ######################################################################
> Jean-Christophe Penalva
> Centre Informatique National de l'Enseignement Superieur (CINES)
> Montpellier, FRANCE
> Tel : 33 4 67 141414    Fax : 33 4 67 523 763
> http://www.cines.fr/

More information about the vtkusers mailing list