[Home]

What is VisKo used for?

VisKo is a framework supporting the answering of visualization queries, which allow users to specify what visualziations they want generated by a multitude of different visualizations toolkits (e.g., Visualization Toolkit).
  • You can start generating visualizations on our VisKo network.
  • You can install your own VisKo server and build up your own visualization knowledge base.

VisKo Project

  • The VisKo project comprises:
    • Query Language: The query language used to request for visualization generation;
    • Ontologies: The visualization toolkit centric model;
    • Knowledge Base: The collection of model instances;
    • Query Engine: Module that uses the visualization knoweldge base to answer visualization queries;

Imperative Visualization Code vs. Visualization Queries

Rather than writing visualization applications, VisKo users can submit visualization queries that specify what visualizations they want generated without specifying how the visualizations are generated. The image below shows a snippet of imperative Visualization Toolkit (VTK) Java code and a visualization query that both generate an equivalent isosurfaces rendering of seismic velocity data. Note the compactness of the visualization query in comparison to the VTK Java code, and how the query only specifies the properties of the visualization but makes no mention about any services or operations that should be used to derive the visualization.


Visualization Toolkit (VTK) Code to Generate Velocity IsosurfacesEquivalent Visualization Query in VisKo

vtkImageReader rdr = new vtkImageReader();
rdr.SetFileName(inputDatasetFilePath);
rdr.SetDataScalarTypeToUnsignedShort();
rdr.SetDataByteOrderToLittleEndian();
rdr.SetFileDimensionality(3);
rdr.SetDataOrigin(0,0,0);
rdr.SetDataSpacing(1,1,1);
rdr.SetDataExtent(0,230,0,25,0,68);
rdr.SetNumberOfScalarComponents(1);
rdr.FileLowerLeftOn();
rdr.Update();

vtkContourFilter contours = 
   new vtkContourFilter();
contours.SetInput(rdr.GetOutput());
contours.GenerateValues(35,0.0,9000.0);

vtkPolyDataMapper contMapper = 
   new vtkPolyDataMapper();
contMapper.SetInput(contours.GetOutput());
contMapper.SetScalarRange(0.0,9000.0);


vtkActor contActor = new vtkActor();
contActor.SetMapper(contMapper);
contActor.RotateX(105);

vtkRenderer ren1 = new vtkRenderer();
ren1.AddActor(contActor);
ren1.AddActor2D(outlineActor);
ren1.SetBackground(1,1,1);

vtkRenderWindow renWin = new vtkRenderWindow();
renWin.SetOffScreenRendering(1);
renWin.AddRenderer(ren1);
renWin.SetSize(300,300);
renWin.Render();

vtkJPEGWriter img = new vtkJPEGWriter();
img.SetInputConnection(renWin.GetOutputPort());
img.SetFileName(outputDatasetFilePath);
img.SetQuality(100);



PREFIX formats	http://cs.utep.edu/formats.owl# 
PREFIX types	http://cs.utep.edu/HolesCodeWDO.owl# 
PREFIX visko	http://cs.utep.edu/visko.owl#
PREFIX params	http://cs.utep.edu/vtkPolyDataMapperService.owl#  
SELECT visko:isosurfaces IN-VIEWER visko:firefox 
FROM http://rio.cs.utep.edu/HolesCodeFullPML/vel.3d 
	FORMAT formats:BINARYFLOATARRAY 
	TYPE types:d2
WHERE 	params:xRotation = 104	AND
	params:yRotation = 0	AND
	params:zRotation = 0
Resultant Velocity Model Isosurfaces Visualization

Start Playing With VisKo

If you want to start submitting VisKo Visualization Queries please start reading about queries and how to pose them.



VisKo website host: UTEP Trust Group Website
Copyright @2011 CyberShARE Center, The University of Texas at El Paso