while in india the other week i came across several local foss gems. one of them is vtk designer.
it is a graphical pipeline creator/editor for the visualization toolkit which is written by the folks over at kitware. yep, the same people who make cmake which we now use for our build system. it's a small world after all, isn't it? =)
apparently vtk is used for medical and scientific imaging by a good number of people. they are putting out a new edition of the official vtk book and it will be covering vtk designer. why do i care? two reasons (besides "it's cool!"): first, it's all free software; second, vtk designer (and it's helper tools) are written with Qt/KDE.
one of the primary developers, Prashanth Udupa, showed it to me at foss.in and i attended his presentation on it the next day. i subsequently downloaded it and have played around with it a bit. it's a very promising bit of software. so, what does it do?
well, it lets you explore the various vtk classes:
and then add them to a pipeline canvas where you can connect them up:
this in turn generates, in real time, the vtk output in another tab:
and c++ source code in yet another:
it also sports extensive built-in help, including both a documentation explorer as well as context sensitive popups on just about every property in the property editor pane.
but what if you have your own vtk classes that you would like to add to a pipeline in vtk designer? well, they've done something very smart and something i hope trolltech will do at some point for designer: a graphical app for creating vtk designer plugins. it too has extensive on-line help to guide you through the process of wrapping classes, defining pipeline connectors and datatypes as well as documenting settable properties.
there's certainly more work to be done on this very cool set of apps, but it's already quite usable and useful for those creating applications with vtk. Prashanth imported vtk designer into kde's svn today making it even easier to access. you can find it in trunk/playground/graphics/vtkdesigner. why kde's svn? it's a very cool app that, imho, deserves more attention and could benefit from being in the same repo that thousands of others use every day. personally i have a quiet vision, one passed to me by waldo bastian a couple years ago, of a kde extra gear universe that is ever more inclusive resulting in both intended and unintended benefits by bringing all this development energy together. or maybe i'm just crazy. (perhaps i'm also crazy? ;)
what's also interesting is that vtk designer is part of vcreatelogic's, Prashanth's company's, strategy. they are creating, supporting and giving away this free software toolkit as a way of advertising and showcasing their capabilities in this field. this is sort of the "loss-leader" business strategy and according to Prashanth it's already working out nicely for them. it helps demonstrate just how many different ways there are that one can incorporate free software into a business model.