TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Rapid Visualization Development based onVisual Programming
Developing a Visualization Prototyping Language(DAEV)
Benedikt Stehno
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Goal
To develop a multi (cross) platform rapid visualizationprototyping language (OpenInsightExplorer )
easy to use (non programmers)extendableopen sourceautomatic parallelizationsupports hardware acceleration (GPU)custom data types
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Visualization Pipeline
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Idea
combine the powers of ...a modular approachvisual programmingdataflow programming
... to a Dataflow Visual Programming Language (DFVPL)
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Idea
Each module (or patch)represents a stage of the visualization pipelineworks as an independent black boxcommunicates with other modules (over ports)is arranged and connected in a visual editor (visualprogramming)is executed as soon as data is available (dataflowexecution)
Programming becomes the task to visually connect a custompipeline together
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
Features of OpenInsightExplorer
open source and platform independenceautomatic parallelizationcustom data typesjava classes as data typedata streamstype-safetyeasy patch / library installation
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
Unique features of OpenInsightExplorer
easy to develop modules (Patch interface)delegating Patchespatch GUIsGrowing PortsPort TreesGeneric Ports
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
Patch InterfaceOnly a small Java interface must be implement to write a patch.Similar to the Java Applet interface (run(), init(), stop(),...).
Delegating PatchesPatches can sent functionality (Methods, ...). Allows to split andcombine tasks between patches.
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
Patch GUIsMultiple GUIs for a patch possible.
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
Growing Ports and Port TreesDynamically add / remove ports to a patch.
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
Generic PortsDynamically adaption to a data type.
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Evaluation
OpenInsightExplorer was evaluated by implementing examplevisualizations.
hardware accelerated (GPU) volume renderercollection of OpenStreetMap visualizations
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Evaluation
Volume rendering
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Evaluation
Volume rendering
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Evaluation
OpenStreetMap
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Features
OpenStreetMap
TitleGoalIdea
OpenInsightExplorer FeaturesEvaluation
Conclusion
Conclusion
Conclusion
Still too complex for none programmersState-of-the-art DFVPL features are missing (debugging,structured programming, ...)Arbitrary synchronization/execution between patchesExecution overhead increases fast (only good forprototyping)Generic Ports and Growing Ports improve the reuse ofpatches a lot