• Aucun résultat trouvé

Towards an easy-to-learn and extensible platform for scientific visualization

N/A
N/A
Protected

Academic year: 2022

Partager "Towards an easy-to-learn and extensible platform for scientific visualization"

Copied!
124
0
0

Texte intégral

(1)

Easy-to-learn and Extensible Platform for

Scientic Visualization

Herve Sanglard

Computer Science Department

University of Neuch^atel

CH-2007Neuch^atel

[email protected]

(2)
(3)

A mes deuxrayonsde soleil

VeroniqueetJustin

(4)
(5)

Cettethesen'auraitpaspuvoirlejoursansl'entourage,lesencouragements

et les idees de ma famille et de mes amis. C'est pourquoi j'aimerais avant

toute chose remercier:

monepouse, Veronique, pourson amouretsacomprehension,

monls,Justin,poursonbeau sourireetsajoiede vivre,

mes parents, qui ont su mepassionner pourles etudes, m'encourager

etm'entourerde leuraection,

monfrere,Arnaud, mafamilleetmabelle-famille,

mesamis, ettoutspecialement LucGirardin,MarcelMaillardet Lau-

rent I,

mondirecteurdethese,Hans-HeinrichNageli,poursonsoutienetson

enthousiame,

mes professeurs,ettoutspecialement Pierre-JeanErard,

lesmembresdujury,JohnMaddocks,FrancoisNyeleretDanielThal-

mann,

leGroupeLimnoceaneetleCentred'Hydrogeologie del'Universite de

Neuch^atel et en particulier Redoine Tahiri, Michael Hauns, Eduard

Zuur,VincentThunus,

legroupe Parallelisme, lesetudiants,doctorantsetchercheursquiont

collabore a l'accomplissement de ce travail, notamment Steve Casera

etAlainConod,

mes collegues de travail de l'Institut d'Informatique et compagnons

d'etude,ettoutspecialementClaudeFuhrer,GianniGasparotto,Robin

Farine, Laurent Vuilleumier,Cedric Perret, YvesSalvade, Emmanuel

WermeilleetJean-DanielScherrer.

(6)
(7)

1 Introduction 1

1.1 Context . . . 2

1.1.1 The challengeof a generalsolution . . . 2

1.1.2 Genesis ofthe thesis . . . 3

1.1.3 Applicationdomain . . . 3

1.1.4 Technicalpossibilities . . . 4

1.2 Goals and non-goals . . . 5

1.3 Overview . . . 6

2 Limitations of existing systems 9 2.1 Classicationof existing visualizationsystems . . . 9

2.1.1 Specialpurposeapplications. . . 10

2.1.2 Modularvisualizationenvironments . . . 10

2.1.3 Librarieswithtoolkits . . . 11

2.1.4 Other systems . . . 12

2.2 Basic interactivityand diÆculty-of-use . . . 13

2.2.1 Interactivity hassevereimplications . . . 13

2.2.2 Advancesinvirtual environments. . . 14

2.2.3 Collaborative work . . . 14

2.2.4 DiÆcultyof use. . . 15

2.3 Limitedextensibilityandversatility . . . 16

2.3.1 Specialpurposeapplicationsarenotextensible . . . . 16

2.3.2 Extension ofvisualizationsystems requires expertise . 17 2.3.3 Conclusion . . . 18

2.4 IneÆcientdivisionof labor. . . 18

2.5 InsuÆcient reuse . . . 19

2.6 Lowperformance . . . 20

2.6.1 Data management . . . 20

2.6.2 Rendering . . . 22

3 Visualization objects 23 3.1 The visualizationprocess . . . 24

3.1.1 A classicalvisualizationprocess formalization . . . 24

(8)

3.1.2 The interactive visualizationprocess . . . 25

3.2 Higherabstraction levels . . . 26

3.2.1 Visualizationmetaphors . . . 26

3.2.2 AVO . . . 27

3.2.3 Sprayrenderingand sparts . . . 27

3.2.4 Glyphsand Glyphmaker . . . 28

3.2.5 ParametrizedGeometricObjects . . . 28

3.2.6 VTKactors . . . 28

3.3 Detailingthe visualizationmapping. . . 29

3.3.1 Deningthetransfer function . . . 29

3.3.2 Mapping thefunctionon parameters . . . 30

3.3.3 The resultsproducedbythemapping . . . 30

3.4 Thevisualization objects formalization . . . 30

3.5 Comparisonwithother abstractions . . . 32

3.5.1 AVO, modulesand visualprogramming . . . 32

3.5.2 Sparts . . . 33

3.5.3 PGOand Glyphmaker'sglyphs . . . 34

3.5.4 Actors . . . 34

3.6 Easy to learnthanksto programmingbyexample. . . 35

3.7 Extensibility,rapidprototypingand reuse . . . 36

3.8 Benetsforadvanced architectures . . . 36

3.8.1 Remoteservice forscientic visualization . . . 37

3.8.2 N-tier architecture . . . 38

3.8.3 Towardscollaborative workand computationalsteering 39 4 A new kind of visualization system 43 4.1 Bridgingthegap . . . 44

4.2 A better divisionoflabor . . . 45

4.3 Requirements . . . 45

4.3.1 User's needs. . . 46

4.3.2 Visioneer's needs . . . 47

4.4 An easy-to-learn interface . . . 48

4.5 Customizationand extension . . . 48

4.6 Ondatamanagement . . . 49

5 ZoomIn 53 5.1 Graphicaluser interface . . . 53

5.2 Generalarchitecture . . . 55

5.2.1 Subsystems . . . 55

5.2.2 Coreapplication . . . 55

5.2.3 Scene controller. . . 56

5.2.4 Selectionassistant . . . 56

5.2.5 VOadministrator . . . 57

(9)

5.3 Implementing ... . . 59

5.3.1 Implementinga newvisualizationobject . . . 59

5.3.2 Regions ofinterest . . . 60

5.3.3 An example . . . 61

5.4 Current state ofimplementation . . . 62

5.5 Furtherdevelopments . . . 64

6 Two case studies 65 6.1 Introduction. . . 65

6.2 Oceanography . . . 67

6.2.1 Context . . . 67

6.2.2 Simulation . . . 67

6.2.3 Visualization . . . 68

6.2.4 Water circulation . . . 69

6.2.5 Particles . . . 69

6.3 Hydrogeology . . . 70

6.3.1 Hydrogeologic problemto solve . . . 70

6.3.2 Simulation . . . 71

6.3.3 Visualization . . . 71

6.3.4 Major ow characteristics . . . 72

6.3.5 Tracer transport . . . 73

6.4 Experienceand usersfeedback . . . 73

7 Conclusion 75 7.1 Summary . . . 75

7.2 Contribution . . . 75

7.3 Perspectives . . . 76

A Glossary of visualization techniques 89 A.1 Visualizationtechniques . . . 89

A.1.1 Scalar techniques . . . 89

A.1.2 Vector techniques. . . 90

A.1.3 Other techniques . . . 92

B Sources 95

(10)
(11)

Introduction

Visualizationcanbedenedasthemappingofdatatoagraphicalrepresen-

tation by means of a computer inorder to analyze them with the purpose

of a better understanding. We all have seen thepretty pictures orthe an-

imations presented daily by the weather forecast team on TV.This is the

archetypeof avisualizationprocess which,inthiscase, representsmeteoro-

logicalinformationwithannotatedpictogramsexpressinghoursofsunshine,

cloud covering orisobariccontourlines.

Usingvisualization,it ispossibleto inferat a glance a relationof cause

andeect,forinstanceofisobariccontourlinesandthewindat agiven mo-

mentandatacertainplace. Thistechniqueispowerfulandhelpsresearchers

to studyphysicalphenomena,forinstance,to understand theeects of hu-

manactivityon theatmosphereand theseas.

More precisely and formally, the purpose of visualization is to make a

quantitativeorqualitativeanalysisofmultivariatedataeasierbyconcentrat-

ingahugevolumeofinformationintoacondensedvisualrepresentation. Vi-

sualizationbreaksthelimitsofbidimensionalclassicaltablesorgraphsand

provides an interactive means of presenting higher dimensional quantities

and eldswithinasingle view.

Visualizationisagenerictermusedinseveraldisciplines;itsmeaningcan

slightlyvaryaccording toitsqualierorthecontextinwhichitisused. Let

us give an example: scientic visualization is sometimes distinguished

from information visualization in that the latter refers mainly to the

visualization of synthetic information, e.g. statistics, produced by human

activities, whereasthe major concern of scientic visualization is to repre-

sent data produced by numerical simulations or measures. But, generally

speaking, even if this rough distinction is commonly accepted, it is not so

easy to draw a strict frontier: does, for instance, the visualization of the

solution of partialderivative equations belong to informationvisualization

orscientic visualization?

Scientic visualization can be related to computer graphics because

(12)

techniques developed in this area are the foundations of scientic visual-

ization. But these two disciplineshave quite dierent goals: whereascom-

puter graphics tries to produce realistic pictures and animations, the goal

ofscientic visualizationis to help usersto interpret the dataand to draw

conclusions. This makes a fundamental dierence even if both disciplines

areobviouslyclose.

In thisthesis, we will focus on scientic visualizationand restrict this

notion to the visualization of physical, biological or chemical pro-

cesses,andofproblemsrelatedtoappliedsciencesandengineering. Inthese

domains,theanalysisofresultsproducedbynumericalsimulationorofmea-

sured data becomes more and more important. In order to be successful,

thistaskrequiresthecollaborationbetweendomainspecialistsandcomputer

scientists withskillsin theeld of scientic visualization. Throughoutthis

thesis, we will refer to the latter using the term of \visioneer" in order to

distinguishhimfrom other computer specialists,like numericalanalysts or

systemmanagers.

1.1 Context

1.1.1 The challenge of a general solution

One of the challenges of scientic visualization is to address the numerous

and specic needs of userscoming froma wide rangeof research activities.

Researchers as well as practitioners in disciplines ranging from physics to

biology or from earth sciences to archaeology make demands on this pow-

erfultechnology [9,72 , 122,121]. Obviously,theneedsinall thesedomains

areextremely variedsothat itis notpossibleto provide a generalsolution

adaptedtoall visualizationproblems. Theseusershave verydierentback-

grounds and the tools they use are completely dierent from one activity

to the other. However, it is possibleto formulate themost important and

generalneedsthese communitieshave incommon: theyneedpracticaltools

toanalyzedata. Inthecourseoftheirinvestigations,usersfacethreetypical

situations:

they guess the kind of eects which will happen, but do not know

exactly whereorwhen these eects willtake place;

they would like to know which kind of eects are happening at a

certain locationand at a certain instant;

they do not know which kind of eects they will discover, neither

where and when they will happen: it is the very purpose of the

visualization to reveal it.

Thesesituations imposevery dierent requirementson thevisualizationen-

(13)

nite,setof toolsrequiredfortheinvestigationcan solve theproblem. The

detectionofthefeaturescanbedoneinteractivelybyauserorautomatically

bythesoftware.

On the contrary, the last two situations are more complex, because in

these cases, a nite set of tools may not be suÆcient to visualize the phe-

nomena. Often, specic tools have to bedeveloped to succeedin thistask.

Thisiscertainlythemajorproblemofvisualizationanditis,inouropinion,

an open research problemtoday.

1.1.2 Genesis of the thesis

Atthebeginningofthisthesis,weinitiatedacollaborationwithtwogroups

of researchers who can be considered as representative users of our eld of

interest. It was interesting to note that their major and common require-

ment was expressed by the two sentences: \Could you help us to analyze

theresultswithvisualization? But,please,we donotwant toprogramany-

thing." ObviouslytheywereawareofthediÆcultyoftheproblemandcould

notspendtoo muchtimeon buildingthetoolthey needed.

Together with these users, we started to use existing visualization en-

vironments, but, as visioneers, we noticed that users had to be supported

permanently. Indeed, visualization tools were either too complicated for

themto master,ornotwell-suitedfortheirreal work. Thuswequicklycon-

sideredthatthesolutionoeredbytheexistingsystemswasnoteconomical,

eitherforusersnorforvisioneers. It isthereasonwhywedecidedto search

fora better solution.

1.1.3 Application domain

In this thesis, we will address the needs in scientic visualization of one,

rather large, class of users. The main characteristics of these users can be

summarizedasfollows:

they are interested in physical phenomena related to natural science

problems;

theyanalyzethree-dimensional,mostlytime-dependent,dataproduced

bynumerical simulationsorbymeasures.

Asatypical example,we willconsidertheuiddynamicsproblemsthat

ariseinoceanographyorhydrogeology. Inthiskindofproblems,thesimula-

tionof thephysicsproducesdatathatareoften largeand multivariate,like

vectoreldsoreventensorelds,andusuallyvarythroughtime. Satisfying

thecomplexvisualizationrequirementsofthiscategory ofusersconstitutes

perse a solution for these cases where, for instance, time-dependency can

be neglected or where data are simplescalar elds. Thus we shall concen-

(14)

the visualizationof data acquired by measures, because all the interesting

problemsariseintheformer case.

1.1.4 Technical possibilities

Numericalsolvershaveforalongtimeproven tobeusefulinunderstanding

or predicting complex physical phenomena like those that play a role in

weather forecasting or more simple problems, like the heating of a piece

of aluminum. Such software passed from academia to industry and made

possible the development and mastery of new technologies and helped to

increaseproductivity.

At the very beginning, results produced by numerical simulationswere

analyzed and compared \by hand", with the help of ad hoc programs for

instance,and thenecessitytohavemore convenientmethodstounderstand

ahuge volumeof informationquicklyarose.

The development of peripherals, like monitors and printers, based on

rasterimagesgavethepossibilitytopresentmoreadequatelytheinformation

elaborated by a computer. Numerous homemade solutions that tried to

represent data graphically appeared. This technology helped to make the

analysisof numerical simulationresults much more eective.

Then, the increasing power of microprocessors contributed to simplify

the user interfaces so that anybody can use a computer without being an

expert. Manytasks whichwerethenconsideredcomplexbytheuserscould

nowbeachievedsimplyandeÆcientlybymovingapointerandplayingwith

icons. It can be claimed that the very takeo of scientic visualization is

dueto these improvements: it startedin themid80's dueto an important

development ofthegraphicalworkstations.

Today,thepriceandperformanceofthesecomputersbringthemontothe

deskof many researchers. These researchers are stimulatedby the conclu-

sionsthey can drawthanksto the expressivenessof thegenerated pictures.

Moreover, multimediacomputersoer even more possibilitiesforanalyzing

the data. Researchers do not limit themselves to classical rendering tech-

niqueslikepicturesormovies,buttry,forinstance,to relate sound[56,62 ]

withdata, andto investigate anytechniquethatcouldbeuseful. Thegame

industrybooststhedevelopmentofdeviceslikegraphicsorsoundcards,and

makes prices decrease. The ever growing powerof processors and graphics

cardsmakespossibleaninteractiveexplorationofthedatausingnavigation

toolslikevirtualcameras. Researchersaredevelopingnewhardware{called

virtualreality peripherals{ to make the user believe thathe is completely

immersed [16 , 50 ] inside the data and can feel virtual objects expressing

them as if they were real. New trends like collaborative and multidisci-

plinary problems require that data have to be exported as virtual objects

andexchangedthroughthe Internet.

(15)

sualized. It no longersuÆces to producestatic bidimensionalcutsthrough

data: butitmustbe possibleto visualizedatawith fullyinteractive tools.

1.2 Goals and non-goals

The development of original visualization techniques is an exciting eld of

research. NumerouseÆcient techniques,bothonthequantitative andqual-

itative plane,stillhave tobe imagined. However, wethinkthatitis alsoas

importantandcomplicatedtosearchforgoodwaystobringthesetechniques

onto thedeskof userswho arenotvisioneersthrougheÆcient visualization

systems. For this particular reason, we will not try to develop any new

or original visualization techniques in this thesis, but rather focus on the

relationshipbetween usersof visualization systems and visioneers,who are

responsiblefortool developmentand user support.

As explained previously, the profusion of new hardware and libraries

gives new possibilities to users of scientic visualization. The user com-

munity has become wider, and the problems to which this technique is

applied have become more and more complex. Unfortunately, there is a

price to pay for users of this technology because the diÆculty of master-

ingthree-dimensionalgraphicallibrariesincreaseswiththeirfunctionalities.

However, endusers,even physicistsornumericalanalysts, cannotspendtoo

much time learninggraphical libraries and developing by themselves a set

oftoolsadaptedto theirspecicneeds. Visualizationisbecomingaspecial-

ization of its own. For this reason, users either visualize data with one or

severaldedicatedenvironmentsandacceptrestrictionstotheirfunctionality

or they require help from a visioneer in order to build a specic applica-

tion. In the latter case, users highly depend on visioneers because even

littlecustomizationscan lead to aconsiderabledevelopment eort.

Our primary goals are, rst, to achieve a clear separation between the

dierent actors involved in the process in order to make users less depen-

dentonvisioneers,and,second,toproposenewandconvenientvisualization

paradigmsinorder to make the divisionoflaborbetweenthem more eec-

tive. To meet these goals, it is of primary importance to dene a new,

simple and unique conceptual framework for three-dimensional visualiza-

tiontechniques. Thestandardizationofbidimensionalgraphicaltechniques,

e.g. bitmap, pixmap, color map, coloring systems, and standardization of

operations applied to them, e.g. scaling, smoothing, rotating, led to the

development of powerfuland generalpurpose graphicalsoftware which are

extensivelyusedtoday. It is partof ourthesis thatunicationof visualiza-

tion techniques can be achieved in the context we dened above and that

new kinds of visualization environments can benet from this approach.

Thus we willdemonstrate that a platform based on these concepts can be

(16)

provideanadequate levelofextensibilitysoasto beapplicableinseveral

disciplines.

1.3 Overview

We willstart in Chapter 2 (Limitations of existing systems) with a

shortsurvey ofthe majorvisualizationsystems encountered inthe domain

of interest. The limitations of these systems as well as the major concep-

tualproblems andtechnicaldiÆculties theusersand visioneers faceinthis

disciplinewillbe emphasized.

In Chapter 3 (The visualization objects) we, rst, propose a new

formalizationof thevisualizationprocessthat iscloser to theneeds of con-

temporary scientic visualization. Then,legacy visualization metaphorsas

wellasabstractionscommonlyusedinthisdisciplinearediscussedandanew

metaphor,calledavisualizationobject, thatuniesvisualizationtechniques

isintroduced. Afewcomparisonswitholdermetaphorsareundertakenand

benetsofthevisualizationobjectsapproach,forbothusersandvisioneers,

aswellasthenew possibilitiesoeredbythisconcept areemphasized.

In Chapter 4 (A new kind of visualization system) we address

the gap that exists between users and visioneers with regard to the com-

plexity of the tools and propose a solution to make the division of labor

more eective. We then examine more deeply the respective requirements

of both usersand visioneers and enumerate the architectural consequences

thishason thedevelopment of an\ideal" visualizationsystem. Weexplain

howa visualizationplatformcanbenetfrom thevisualizationobjects con-

ceptandhowtheuserinterfacecanbeimproved. Finally,theadvantagesof

thisconcept withregard to theextensibilityof theplatform aswellas the

implicationithas ondata management are considered.

To prove the soundness of those new ideas, a visualization platform,

calledZoomIn,wasbuilt. InChapter5(ZoomIn),itsgeneralarchitecture

issketched,andweexplainhowtheobject-orientedparadigmmadepossible

itsconstructionandprovidedtheversatilityrequiredfortheimplementation

ofmostof its components.

Chapter 6 (Application to case studies) illustrates the usage of

ZoomIn through case studies in oceanography and hydrogeology. A few

results obtained by users thanks to the platform are given and the eort

necessary for the customization of the platform to their real needs is esti-

mated.

ThelastchapterChapter 7 (Conclusion)summarizestheadvantages

and drawbacks of the approach presented in this thesis. The experience

gained and the actual contribution are mentioned as well as unexpected

problems we encountered. We will nally give our opinion about the per-

(17)

dictions on tools that will, in thefuture, assist the usersin the analysis of

data.

(18)
(19)

Limitations of existing

systems

Thischapterwillbeginwithashortsurveyofexistingvisualizationsystems.

Threedierent categoriescoveringthelargevarietyofvisualizationsystems

willbedescribed. Afewcharacteristicexamplesofvisualizationsystemsfor

each category willbe given.

Then, a discussion about the major limitations that the users of these

systems encounter { in the application domain we dened in the previous

chapter{willfollow. Wewillbeinterestedinthespeciclimitationsofeach

category in the relevant domains of interactivity, ease-of-use, extensibility,

divisionof labor,reuse,and performance.

2.1 Classication of existing visualization systems

Numerousvisualizationsystemshave beendevelopedon mostcomputer ar-

chitectures[65 ]. Toprovideacompleteassessmentofallthesesystemswould

beanimpossibletask. Indeed,becauseanassessmentdependsonthepartic-

ularneedsofthepersonwhodoesit, itisverydiÆcultto avoidsubjectivity.

To be exhaustive, it is necessary to take into account numerous criteria

such as performance, ease-of-use, extensibility, scalability, price, support,

documentation, hardware and operating systems supported as well as the

communityusingthetool,theinputand outputdataformats providedand

soon.

Astherearesomanyvisualizationtoolshavingsomanyfeatures,wewill

nottry to givea completesurvey. However itis usefulforthe discussionin

therest of thethesisto group them very roughlyinto three categories :

specialpurposeapplications,

modularvisualizationenvironments, and

(20)

librarieswith toolkits.

2.1.1 Special purpose applications

Special purpose applications are dedicated to a particular type of visual-

izationproblem. Theyaresometimes called\turnkey" applications,be-

cause they seem \simple to use" and because complex functionalities re-

quired by the specic discipline are accessible thanks to simple manipula-

tions. Thiskindof applicationhasusuallybeenbuiltinorder tosatisfythe

classical needs of a given user community. They work on special types of

datarelatedto thenodesof a grid. Forinstance,a visualizationsystemfor

oceanographywillworkon scalarelds,liketemperatureorsalinity,andon

vector elds, like velocity,that aredened ina given domain; it allows the

user to obtaindierent representations of these eldsinselected regions of

interest, like planarcuts orisosurfaces of a given scalar eld.

Well-knownand typical examplesareforinstance:

SciAn[80 ,102 ],developedattheFloridaStateUniversity,isrestricted

toscalarandvelocityeldsandprovidesalimitedsetoftools(contour,

mesh, isosurface, arrow,streamline, streamtube).

Fieldview[48 ,47 ],fromIntelligentLightInc.,isacommercialvisual-

izationsoftwarethatisdedicatedtocomputationaluiddynamicsand

providesmainly ve tools (computational surface, isosurface, stream-

line, probe,particles).

Fluent [32 ], from Fluent Inc., is a commercial numerical solver for

CFD thatprovidesvisualizationtools. Usually,solvers integratetheir

own visualizationenvironment.

To be more exhaustive, systems like EarthVision [29 ], Ensight [46 ],

FAST [66 ], Geomview [104], HIGHEND [74 , 97 ], Plot3D [67 ], Tecplot [3],

UFAT [68], Vis5D [98 ], Visual3 [28], VolVis [117 ] can be classied in this

category.

2.1.2 Modular visualization environments

These environments, also called application builders, are founded on the

dataowandvisualprogrammingparadigms[38 ]: theyprovideanumberof

predenedmodules each categorized aslter, map or render. Roughly,

lters deal with data management and conversion, maps transform data

togeometriesandrendersdisplaygeometriesontothescreen. Theoutputs

and inputs channels of these modules have to be connected by the user.

Hence the user sets up a network visually by drag and drop. The data

traveling throughthis network are subject to various transformations and

(21)

Figure 2.1: Modulesnetwork ina dataow system

If there is a lack of functionality, the visioneer has the possibility to

programa module and to add it to the environment. A particular usage

ofthiskindofvisualizationsystemsconsistsinusingthemasaprogramming

library to builda special purpose application. Well-known commercial

systemslikeAVS/Express orAVS5fromAdvancedVisualSystems[113 ,

2],DataExplorerfromIBM[49 ]andIrisExplorerfromSiliconGraphics

and NAG[96 , 105 ] belong to thiscategory.

2.1.3 Libraries with toolkits

Inthelastyears,numerouslibrarieshavebeendevelopedinordertoprovide

multipurposeandstandardtoolsforvisualizationand computergraphicsin

general. They are often provided together with toolkits that ease their

use. Typicalexamples areSiliconGraphics'OpenGL andOpenInventor

libraries[69 , 119 ,120 ].

Based on a higher level of abstraction, the Visualization Toolkit

(VTK)[93 ] wasdeveloped recently. It isa portable object-oriented library

forvisioneerswhowant toquicklybuildapplicationsorprototypesfortheir

users. The model supported bythis libraryis the visualization pipeline

(22)

jectstorepresentdata(dataobjects)andobjectstooperateondata(process

objects). This is very similar to the dataow paradigm of modular vi-

sualization environments described previously, except that, in the case of

the visualization pipeline, the execution is controlled implicitly (a process

objectexecutesonlyifitslocalinputorparameterschange). Whereasinthe

dataow paradigm, execution is controlledexplicitly byan executive com-

ponent trackingthechangestothenetworkand controllingtheexecutionof

theprocess objects.

Figure2.2: Exampleof avisualizationnetwork inVTK

2.1.4 Other systems

Ofcourse,certainsystemsliebetweentwoofthosecategories. Forinstance,

dierent attempts have been made to make special purpose applications

moreexible. TheexampleofSpray[76 , 21 ]seemstobeexemplaryinthis

respect. Inthisenvironment,thedataarerepresentedusingthemetaphorof

asprayactingonaportionofspace. It sprayssparts(smartparticles)that

react with thedata they encounter according to a behaviordescribed bya

programwritten ina simplelanguagethat thespartsinterpret. The exi-

bilityis thusprovided bythe possibilityof implementing variousfunctions

(23)

2.2 Basic interactivity and diÆculty-of-use

Interactivity as well as ease-of-use play an increasing role, because more

and more users who are not experts in visualization want to take prot

of this technology. Generally speaking, it can be stated that the major-

ity of today's visualization systems oer modest interactive functionalities

compared to other applications such as, forinstance, the entertainment or

desktopapplicationsused dailybymillionsof people.

Among the major and particular diÆculties encountered by visioneers

inorderto buildeÆcient visualizationsystems arethecomplexityof trans-

forming data into comprehensiblevisual information and the technical re-

quirementsimposedbythemanagement ofdatasets.

2.2.1 Interactivity has severe implications

Due to the volume of data and the complexity of physical phenomena to

visualize, the need of interactive systems oering an intuitive and natural

\explorationofdatasets"isofparamountimportance[31 ]. Byintuitive,we

mean that the interface seems familarand easy-to-learn to the users, and,

bynatural, that itoperates in such a waythat a human ideally needs no

instruction.

\The amountand ease inwhich insightisgained from thedatasetisan

indicationof thesuccess of thevisualization process. Equally asimportant

asthedevelopment ofpowerfulvisualizationmethodsisthedevelopment of

techniques and interface methods that make these powerful tools available

totheusers..."[75 ]Certainly,oneofthebestsolutionsistoprovidetheusers

withvisualizationsystemsthatallowdirectmanipulationsoftoolstheusers

arefamilarwith. \Thetoolsshouldbemadeaccessibleinanunencumbered,

direct,andnaturalway{rsttogainacceptancefromtheusers,andsecond

to promote unimpeded investigation of theirdata without havingto think

about the visualization methods... The interface should be so natural to

use that it is almost invisibleto the users. In thiscase, the measure of an

interface's success is its apparent absence from the user's thought process

whileinvestigating theirdataset."[75]

This easinessis usually oeredbyspecial purpose applicationsbutthis

isneitherthecasewithmodularvisualizationenvironments,wheretheuser

manipulatesthemodulesnetworktoactindirectlyonthegraphicalobjects,

norwithprogramminglibraries. Inbothsystems theuserhastodevelopan

ad hoc graphicaluser interface{ which requires skillsinprogramming{ in

order to reach a satisfactorylevelof interactivity.

Interactivityhassevereconsequencesondatamanagement. Becausethe

userswanttoexplore datasetsandto concentrate on regionsofspacewhere

phenomena are expected, it shouldbe possibleto restrict thevisualization

(24)

systemsoperate ona grid{ oramesh{and arenotableto honour neither

\local" accessnor interpolateddata betweenthe nodes of thegrid. This is

certainly one of the main problems to solve in order to successfully build

interactive visualizationsystems providing:

interactive selection: theabilityforauserto selecttheregionsofpartic-

ular interest in the datasets, and, if needed to be able to re-run the

simulationfora subsetof thespace-time domain;

computationalsteering: theabilityto change parametersof thesimula-

tion while the simulation is progressing: for instance, to change the

direction and intensityof thewindinan oceanographicsimulation.

Suchinteractiveselectionorcomputationalsteeringenvironments

are becoming a mandatory requirement for large data sets, simply due to

thevolume of datato be analyzed [30 ], butthe fewprototypeshavingthis

capabilityarestillunder development [116].

2.2.2 Advances in virtual environments

Reaching a satisfactory level of interactivity imposes an eective naviga-

tion in 3D space as wellas an intuitive manipulation of graphical objects.

Indeed, many problems encountered by users are dueto the fact that the

projectionofthree-dimensionalgraphicalobjectsontobidimensionalscreens

causesambiguities and distortions.

Modernvisualizationsystems have to accomodate theuseof virtual re-

alityperipherals{ such as aspaceball, stereoglasses, helmetsordatagloves

{ in order to help users to visualize three-dimensionaldatasets. A few vi-

sualizationsystems proposeimmersiveenvironments[50 , 95 ,100 ]thanksto

virtualrealityperipherals.

At the moment, these peripherals are rare, very specic, cumbersome,

expensiveandhavetobeusedinpowerfulnearreal-timeinteractivesystems.

The next task of engineers will be to improve their accuracy as well as to

diminishthe size of these devices. Furthermore, research is still needed in

ordertondappropriatemethaphorsofgesture[75]tointeractdirectlywith

thevirtualobjectsortoinvokecommandsinsidetheimmersiveenvironments

because there is nomore classicalgraphicaluser interface.

2.2.3 Collaborative work

The increasing performance of local area networks (LAN) and wide area

networks (WAN) oer new perspectivesfor collaborative work. Except for

a few systems [77], most visualization systems are engineered to be used

in single-user mode and do not integrate the possibility to collaborate on

visualizationsessionsfrommanycomputers,eitherlocally{inthesamesite

(25)

Collaboration between researchers or practioners dispersed all around

the world is becominga requirement. Although thiscapabilityis desirable

for many teams, integrating collaborative work into visualization systems

is not straightforward. It has signicant implications on software design

becauseofthefunctionalitiesthathavetobeaddedtotheuserinterfaceand

because of thetechnical problemsimposedbythenetworked architectures,

such as:

accesscontrolovergraphicalobjects,

privateand sharedviews,

synchronousand asynchronouscollaborationmodes,

dataaccess, and

softwareportabilityand data formatover heterogeneousnetworks.

2.2.4 DiÆculty of use

Will Schroeder, Ken Martin and Bill Lorensen [93 ] wrote: \Visualization

systemsarebytheirverynaturedesignedforhumaninteraction. Asaresult

theymustbeeasytouse." Proclaimingthatacertainvisualizationsystemis

easytouseandthatanotherisnot,isrisky. Thisqualitydependsveryoften

on the user's level of expertise and on the specic functionalities that the

systemoers. Butitissurethat,fornon-specialistsandforcasualusers,the

necessityofreadingandunderstandinghundredspagesofdocumentationor

thousandsof linesof code before obtaining anyresult is discouraging.

In thepast, visualizationsystems were reserved forresearchers of disci-

plinesclosetocomputerscience. Theyhad,andwereable,tospendthetime

necessaryto understand indetail andto master thevisualizationpackages.

But now, environments have to become easier to use in order to provide

eÆcient solutions for users from other disciplines, e.g. for natural science

researchers.

Today, certainly the best solution is oered by special purpose appli-

cations and the worst one by libraries with toolkits. Modular visualiza-

tion environments (MVE) lie between these two extremes thanks to the

visualprogramming paradigm. However, as pointedout byEarnshaw and

Jern [30 ],largemodulesuites are diÆcultto manage. Althoughtheirmain

advantage is their generality and their extensibility { which explains their

popularity{theirdrawbacksappearquicklywhenusersfacetheproblemof

usingthem. It isdueto manyreasons:

They are not tailored to an application and extensive programming,

albeit visual,isrequiredto setup anapplication. \Thisis anobvious

(26)

Because strongdatatype isusuallyrequiredbetweenmodules,apro-

fusionofmoduleswithalmost identicalfunctionalityhave tobeintro-

duced, whichdiscourages thenovice.

Because almosteachmodulehasits ownparametersto tune,eachone

has its own interface widget; this leads quickly to a fragmented and

incoherent graphical user interface. The complexity of maintaining

all these elements grows rapidly 1

with the number of interconnected

modules.

The graphical user interface is not uniform between the applications

and thefunctionalitiesarereducedbecauseitis oftennecessaryto re-

develop them for each problem dueto the lack of abstraction at the

application level.

2.3 Limited extensibility and versatility

Just as for other kinds of software, extending a visualization system with

functionalitiesfor which it was notdesigned is very diÆcult, if not impos-

sible. Unfortunately, theneed to extend a visualization system is common

duetotheinnityofimaginabletechniquesforthevisualizationofdataand

due to the unpredictability of the way the interesting phenomena will be

discovered. Thisimposesahighdegreeofversatilitytogeneralvisualization

systems.

Ideally,it shouldbe possibleto extenda visualization systemwithnew

visualizationprimitives,deviceand dataset drivers. Butthe realityis com-

pletely dierent because of the technical implications it has. In fact it is

notsimpleto extenda visualization systemor to customize it to a specic

problem: it is usually reserved to visioneers or advanced users who have

extensive experienceinprogramming.

2.3.1 Special purpose applications are not extensible

Atrstglance,specialpurpose applicationsseemidealforusersbecause

theyallegedly areeasy to useand well-suitedfortheirspecicneeds. From

thebeginning,theuserfeelscomfortablebecause,thankstoaneasytolearn

userinterface,hedoesnotneedtoprogramanything. Thisisthecasewhen

the visualization package is fully integrated with the numerical simulator,

because theuser doesnotevenneedto careaboutdatamanagement. How-

ever, these environmentsshowtheirlimitationsrathersoon asthey usually

arediÆcultto extend. Theuser has to be satisedwith thefunctionalities

1

Asdepictedinthe simpleexampleofFigure2.1, theuserhasto control 6modules,

eachhavingitsowncontrolpanel,and7linksinordertoproduceonly1graphicalobject

(27)

they oer and to adapt hisway ofthinkingand workingto thelogicof the

application. Thisis especiallythe case forvisualization systems integrated

with numerical simulators where only the manufacturer is able to release

new orcustomizedvisualizationtools.

Inpractice,however,theuserisoftenforcedtouseseveral environments

inorder to performhis analysis. Thisleads to painfuland time-consuming

technical problemslikedata conversion fromone formatto another, notto

speakofthe diÆcultyof mergingtheresultsproducedbydierentsystems.

As isthecase forSpray[76 ],a scripting languagerepresentsa powerful

means of extending such a system. However, it is not always accessible to

thecasualuser,who therefore remainsdependent on avisioneer.

2.3.2 Extension of visualization systems requires expertise

Generallyspeaking,extendingavisualizationsystemwithadhocvisualiza-

tion techniquesalwaysrequires expertise. Andbecause problemsfor which

visualization is useful are varied, the need of extending systems appears

rather quickly. It is not suÆcient to master basic programming, e.g. to

know a language like C/C++ : several software technical diÆculties have

to betackled:

accessto thedata;

understandingof the3Dgraphicalsystemand primitives,and

designand implementationofa userinterface.

Thiskindof knowledgeisfaroutsidethereachofmanyusers, especially

those we consider, because they are not programmers and do not want to

develop anything.

Certainly today's best solution for users is oered by modular visual-

ization environments when used as application builders: the very last ver-

sionsofmodularvisualizationenvironments,suchasAVSExpressprovide

front-end and rapid application development wizards in order to minimize

the work of programmers. These components provide an additional layer

thathelpstoquicklybuildaprototypeofthegraphicaluserinterface. This

consists in implementing a specic graphicaluser interface hiding the net-

work with a centralized command panel allowing direct manipulations of

graphicalobjects. Thus,onecandevelopaspecialpurposeapplicationfrom

scratch orbyadaptingexistingmodules.

Unfortunatelythese components shifttheproblem. Rapiddevelopment

tools that generate code automatically certainly save time for tedious de-

velopment such as, for instance, the design of dialog boxes and of pop-up

(28)

a great experience is required, as soon as one wants to undertake the de-

velopment of prototypesorcustomizethesamplesproducedbythewizards

that are provided by these tools. \Visual programming is too limited for

detailed control, so construction of complex low-level algorithms and user

interfacesisnotfeasible."[93 ]anditisthemainreasonwhy\modularvisu-

alizationenvironmentsrequirea considerableeort from users"[100 ] to be

customizedto theirreal needs.

2.3.3 Conclusion

To summarize briey this section, we come to the conclusion that in our

eldof interestand forthe userswe consider:

eithervisualizationenvironmentsorlibrariesareextensiblebutrequire

animportantdevelopmentorsupporteortfromthevisioneerinorder

to be usablebytheuser;

or theapplicationis easy to usebutits extensibilityis limited.

2.4 IneÆcient division of labor

Astheproblemsunderstudybecome more andmore complex, a particular

division of labor is taking place. All actors involved in the visualization

and analysis process have to be specialists of their own domain in order

to take up challenges and to achieve a good level of productivity. End

userscannotspendtoomuchtimeontoolingproblemsbecausetheyhaveto

concentrate on theirmainactivity. Thissituation imposes a new challenge

to visualizationsystems.

The division of labor was not the primary concern of the people that

developed generalvisualizationsystems because :

the users were at the same time applied mathematicians, visioneers

and endusers, and

thedevelopmentofqualitativeandadhocvisualizationtechniqueswas

the primarystep.

Becausetheproblemisemergingandbecausewedidnotndanythingin

theliteratureaboutit,wewilltrytogivearoughevaluationofthesituation

basedon ourexperienceswithusers.

The three graphs in Figure 2.3 depict the amount of eort invested

through time in the customization of each category of existing visualiza-

tionsystem foratypical problem.

Inthecaseof specialpurposeapplications,thevisioneerintervenesonly

at the beginning of the investigation inorder to convert the data orsetup

(29)

Figure2.3: Programmingand user supporteort

usually does not need any further help from a visioneer because no cus-

tomization oftheapplication ispossible.

Because of the complexity of modular visualization environments, the

visioneerhasto givethe userintensive supportduringthewhole process of

dataexploration,modifyingthenetwork orprogrammingnewvisualization

modules(case 2). Both thesetup of a specic environment and its mainte-

nancerequiresanimportantinvestment. Theuserisfullydependentonthe

visioneer from the beginning to the end of his investigations. This case is

illustratedwith thesecond graphinFigure 2.3.

As illustrated with the third graph in Figure 2.3 , our experience has

shown thatit requires more orlessthe same eortto develop astandalone

application withaMVE { used asan applicationbuilder{as ittakes with

agood visualizationlibrary(case 3).

It is interesting to notice that there are two signicant dierences be-

tween case 2) and 3). The rst dierence resides in the fact that the vi-

sioneer'seortincase 3) ismore important{ because almost every compo-

nent have to be developped from scratch {, butlimited in time { because,

once theapplication is running, userssupportis mimimumdueto thefact

that the application is customized to their particular needs. Moreover, in

case3),theapplicationisgenerallynoteasilyextensible, justasforcase1).

Thusitappearsthatnoneofthese three situationsprovideagoodsolu-

tion interms of divisionof labor. A visualization systemproviding a large

autonomyforusersandminimizingthecustomization andsupporteortof

thevisioneerhasstillto befound.

2.5 InsuÆcient reuse

The \recent" analysis and design methods [36 , 12 , 118 ] as well as object-

oriented technology had an important impact on the development of soft-

(30)

oers once and for all, as is the case for special purpose applications, but

alsoon its genericity,on thepossibilitiesof reuse,on itscustomizabilityfor

awidecommunityandadaptabilitytonewproblemsandnewkindsofdata.

In order to increase productivity,reuse has become a major issue in every

new development. Object-oriented analysis and design methods are eÆ-

cient andcan beappliedsuccessfullyto scienticvisualizationsystems [15 ].

Abstracting information and organizing it into class hierarchiesas well as

managingobjects abstractly usingpolymorphismare powerfulmechanisms

thatcan drasticallyincreasereuseinthisdiscipline.

Several visualizationsystems such asPlot3D, UFAT and FAST [67 , 53 ,

66 ]were notdesigned with reusein mind, because, rst, eÆciency was the

primary concern{ they were developed around algorithms optimized fora

specic task { and, second, they were engineered before the emergence of

object-orientedtechnology.

Theresult isthatmuch work isinvestedinimplementinga setof appli-

cationsthat usuallycannot be reusedbyother teams because they are not

designedwithasuÆcientlevelofabstraction. Therearenumerousexamples

of powerful visualization techniques that were implemented in some pack-

age, butleft unused because they could neither be convenientlyintegrated

into existing applicationsnorlinked togetherwithina general environment

accessible to the user. This is not very productive and rather frustrating

bothforthe scienticvisualization community andforusers.

2.6 Low performance

2.6.1 Data management

Certainlyone ofthemajorcriticismoftoday'svisualizationsystemsistheir

inabilityto handle large datasets. It can be stated that in the particular

disciplineof scientic visualization, the increaseof computingperformance

isanorderofmagnitudebelowtheneedsofthecommunity. Onthissubject

Steve Bryson commented[100]:

\The problems addressed in real-time scientic visualization will, how-

ever, far outstrip the advances in technology. Increased computational

capability will be used to perform simulations that produce far larger

data sets, and contain far more phenomena. There are several ways in

which this will occur: the spatial and temporal resolution will increase

for enhanced accuracy, increasing the number of points and timesteps;

and multi-disciplinary simulations will be performed, including many

phenomena in a single data set. Thus the size of data sets will increase

(31)

Becausedatatransferfrommassstoragetomemoryremainsabottleneck

for many computers, datasets produced by number crunchers have to be

organized and processed adequately. Even for middle sized datasets that

currentlyreachmanyhundredsofmegabytes,itisnotpossibletoloadthem

entirelyinto thememory ofa classic workstation and to expecta good job

from itsvirtual memorymanager.

Manyexistingvisualizationsystems[80 , 48,76 ,98 ]loadalltimestepsof

datasetsinto memoryeveniftheuserisinterested invisualizingdatainthe

neighborhoodofaspecicpointandonlyforagivenrangeoftime. Thissit-

uationiscertainlyduetothefactthattoday'ssystemsaresimpleextensions

ofrst generationvisualizationsystems thatwerethoughtto workinbatch

mode, without any interactivity. At minimum, existing systems should be

re-engineeredinorder toaccomodatethevolumeofcontemporarydatasets.

Other visualizationsystems [113,96 , 93 ] useanother datamodel called

dataow . As explained previously, the mechanism is the following : the

data aretravelingthroughmodulesthat successivelyconvert, transformor

select portions of the original data. Finally, the data are mapped into a

graphical primitive and rendered onto the screen. Because most lters do

not accept every kind of data structure as input, some specic lters are

insertedalongthepathinordertoconvertthedataadequately. Forinstance,

a lter can interpolate data from a nite element dataset to a rectilinear

grid in order to be accepted by the next lter. Basic implementations of

the dataow model pass a copy of the data. This leadsto doubleor triple

thevolume of informationto manage even if avancedmechanismsavoiding

copying of the data are added. Although such optimizations undoubtedly

accelerate the response of systems, the performance is still insuÆcient for

interactivevisualizations:

\Any change to the data set necessitates reading it in once more and

repeating the process. Thus interaction rates depend principally on the

speed with which the dataow pipeline can process the data, severely

limitingthespeedofinteractionwith largedatasets".[84].

\Because dataow systems transform the entire data set, they are

not well suited to the near-real-time visualization of time-varying data

becauseoftheverylargeamountsof datainvolved".[17]

Asmentionedbyseveralauthors[30 ,84 ,109 ],theincreasingvolumeand

varietyofdata,andtheneedofinteractivevisualizationsystems,requirethe

development of anew modelsfordata management providing among other

things:

scalability;

(32)

the distributionof dataover a LANand/ora WAN;

a goodcompromisebetweenextensibilityand performance,

a common interfaceto accessto disparatedata objects,and

the computationof derived dataon they.

2.6.2 Rendering

Another bottleneck for interactive visualization systems appears when a

largequantityof non-trivialgraphicalobjects have to be renderedat a suf-

cient frame rate. The computations needed to render these objects are

intensive. The stages of thegraphicalpipeline{ such asface culling,levels

ofdetails, shading, z-buering { areaccomplished by software or hardware

andrequire millionsofoatingpoint operations.

Althoughspectacularprogressweremadeinthelastfewyears,thelimits

are easily reached when numerous objects have to be rendered simultane-

ously at a sustained rate of 24 frames per second in order to create the

illusionof dynamics. This causesdelaysand latenciesthat disturbtheuser

duringhismanipulations. Moreover,becausemanyvisualizationsystemsdo

notallow a necontrol over the graphicalobjects and the region of user's

interest, visualclutter is quickly reached as well asthe latencies accompa-

nyingit.

Addressing this particular problem is out of the scope of this thesis.

However, it is obvious that concepts allowing the development of ad hoc

userinterfaceabletoimprovethecontrolofgraphicalobjectsareusefuland

(33)

Visualization objects

Inthischapteranewmodelforthevisualizationprocess,calledinteractive

visualization process,willbeintroduced. Ittakesaccountoftheneedsof

interactivity imposed by the ever growing community of people who want

to take prot of scientic visualization.

Then, we will point out one of the key problems end-users encounter

in scientic visualization: the low abstraction level and the lack of conve-

nient metaphors provided to users at the application level. We will try to

explain why it is essential to remedy this problem. Nevertheless, a set of

metaphorsthatweresuccessfullyusedinexistingvisualizationsystemswill

bepresented.

The next section will propose the central idea of this thesis : a new

conceptual framework unifying most visualization techniques. It

consistsinahierarchyof objects dedicatedto scientic visualization,called

thevisualization objects,forwhichwe willgivean in-depth,semi-formal

description. These objects will be compared to the metaphors described

previously: thedierencesandbenetsofthisnewapproachwillbeempha-

sized.

Then, we will explain how this approach brings solutions to the main

limitationsofexisting visualizationsystems thatweredescribedinthe pre-

vious chapter. In particular, how a visualization platform satisfying both

the requirements of ease-of-learning and of extensibility can be built

thanksto thisconceptual framework.

Finally,thebenetsintermsof rapid prototyping and reusewillbe

emphasized and thenew perspectivesoered by theconcept inthe eld of

a client-server achitecture, collaborative work and computational

steeringin scienticvisualization willbe investigated.

(34)

Figure 3.1: Thevisualizationprocess

3.1 The visualization process

3.1.1 A classical visualization process formalization

Scientic visualization isusually viewed as a multi-stage process beginning

from simulation resultsand endingat a displayable image. Since theearly

days of scientic visualization, several visioneers [39 , 93 , 8 ] proposed more

orlessdetailedformalizationsofthisprocess. Haberand McNabb[38 ]gave

theirownformalizationofthevisualizationprocessthatwaslargelyaccepted

andreused bythevisioneercommunity.

AsdepictedinFigure3.1, thisprocessiscomposedoffourstages(A{D)

andthree transformations(1{3):

1) Data enrichment and enhancement: This rst transformation op-

erates on the raw data (A) provided by the simulation and modies

it inoneormore waysto derivedata(B) forsubsequentvisualization

operations.

2) Visualization mapping: Thesecondtransformationconstructsanimag-

inaryobjectcalledan\abstract visualizationobject"(AVO)(C)from

the derived data produced by enhancement and enrichment. Typi-

cally, this involves mapping the simulation data into the attributes

eldsthat describetheAVO.

3) Rendering: The last transformation operates on the AVO to produce

a displayableimage (D).

The sequence of these stages and transformations forms what Haber

and McNabb [38 ] name a visualization idiom by analogy with a verbal

idiomofalanguage. \JustasalistenerhasdiÆcultyunderstandingaverbal

(35)

Figure 3.2: Theinteractive visualizationprocess

displayscientically without an explicit understanding of the steps in the

visualizationidiomused to generateit."

This formalization and the idea of encapsulatingeach kindof transfor-

mation into a specic module type as well as the possibility for users to

interconnect them interactively with visual programming techniques gave

birthto themodularvisualizationenvironmentsparadigm.

However, when applied to ourparticular classof problems, thisformal-

ization isincomplete: rst, itdoesnotconsidertheuser intheprocess and

does not include the problem of interactivity. The visualization process

is viewed as a batch orientedprocess in postprocessing mode and the user

doesnothavetheabilitytousetheAVOtointeractivelyexplorethedataset.

Second,itreducestheresultsofthevisualizationprocesstoanultimateim-

age that does not seem to oer any solution for interactive selection nor

computationalsteering.

Because, our work aims at providing a solutionfor the requirements of

interactivityallowingexplorationofthedatasets,weproposeanewmodelby

integratingtheuserintotheprocessandbyconsideringthatuserinteraction

{withthegraphicalobjectsproduced{canfeedagainthe\pipeline".Called

theinteractive visualization process, thisnew model willbe described

inthenext section.

3.1.2 The interactive visualization process

Figure3.2illustrateswhatwedeneastheinteractivevisualization pro-

cess. In thisdenition,the visualizationprocess is no longerdepictedas a

\pipelinedprocess", butit is representedbya ring of processesthat are

driven bytheuser.

The linking of processes starts with the simulation (1) according to

the simulation parameters (A) that are given either statically or inter-

actively bythe user. The simulation generates simulation data (B) that

(36)

Then, derived data are queried (3) in order to produce the visualiza-

tionobjects (D).Theuserinteractswiththevisualizationobjectsinorder

to visualize the data by interactive exploration or to control the sim-

ulation (4) by updating the simulation parameters { either through the

visualizationobjectsrepresentingthemgraphically,ordirectly,forinstance,

throughanothercomponent of thegraphicaluser interface.

By integrating the simulation parameters and the simulation into

the whole process, we close the loop between the production of numerical

data and the visualization system. This is the only means of tackling the

problemof the production of huge data sets and of taking prot from the

fact that only a small part of them is useful and really interesting during

a particular interactive exploration. Thus, the visualization process is no

more merelyapostprocessor butisintegrated withthesimulation.

Notice that, in this process, derived data, which can be visualized at

theirturn,can result either from thevisualizationobjects creation orfrom

theuser interaction { see the bidirectionalarrows in 3). The displayable

imagestage aswellastherenderingand visualization mapping trans-

formationsoftheclassicmodelareabsentfromthisnewmodel. Theywillbe

considered asa subprocess that produces the visualization objects (D).

This point will be described more precisely in the 'Detailing visualization

mapping'and'Thevisualizationobjectsformalization'sectionsofthischap-

ter.

3.2 Higher abstraction levels

A suÆcient abstraction level is decisive for a visualization system able to

providea largevariety ofvisualization techniquesthroughan easy-to-learn

user interface. Indeed, as pointed out by Haber and McNabb [38 ], \most

scientistsforegovisualizationaltogetherunlessprovidedwithhigh-leveltools

thatkeeptheir energiesfocused ontheir science.".

For these users, abstractions at the application level is of paramount

importance: thisisperfectlyillustratedbythepopularityreachedbymodern

software,forinstancewordprocessing ,spreadsheetsanddatabases,due

to theabstraction levelthey provideinthe applicationlayer. Without any

doubt,thanksto expressivemetaphorslikestyles,cellsorqueries,these

software oer ahigh levelof genericityand ease-of-use.

Inthefollowingsection,wewillexaminerepresentativeexamplesamong

themostinterestingmetaphors thatwereimagined intheeld of scientic

visualization.

3.2.1 Visualization metaphors

Merriam-Webster'sdictionary[61 ] denesmetaphoras\a gureofspeech

(37)

inplaceofanothertosuggestalikenessoranalogybetweenthem". Applied

to scienticvisualization,we proposeto deneavisualization metaphor

as \an idea abstracting the visualization mapping and allowing the users

to investigate their data without having to think about the visualization

methods".

Fundamentalworkhasbeenachievedbyotherteamsinordertoprovide

well-suited metaphors for the visualization of datasets. This gave birthto

several usefulmetaphorsthatwillbedescribed more preciselyhereafter.

3.2.2 AVO

In their conceptual model [38 ], Haber and McNabb introduced the term

AVO,anacronymforAbstract VisualizationObject, as\animaginaryob-

ject with some extent in space and time", whose \attribute elds might

includegeometry,time,color,transparency,luminosity,reectance,andsur-

face texture". An AVO isthe result of the visualizationmapping stage of

the visualization process seen above, i.e. the transformation mapping the

derived data to the AVO elds according to a given transfer function.

\The time and geometry eldsin the AVO neednot correspond to similar

quantities in the simulation domain. For example, we can map the simu-

lation z coordinate to time in theAVO model to producean animation of

sequential, horizontalslicesthroughavolumetricdomain[...] No fool-proof

method exists to derive eective transfer functions, so interactive systems

for real-time modications of the transfer functions are eective tools for

exploringcomputationaldata sets."

3.2.3 Spray rendering and sparts

\Spray rendering uses the metaphor of spray cans to paint and visualize

datasets. Conceptually, visualization users grab and aim spray cans into

their datasets. Depending on the type of paint in the can, dierent data

featuresarehighlightedandrendered. Thepaintparticlesarereferredtoas

sparts, which standsforsmart particles. Theycombinethe power of both

particlessystemsandbehavioralanimationtoseekoutandhighlightfeatures

ofinterestinthedataset"[76 ,78 ,77 ]. Thesespartshaveaspecicbehavior

{whichcanbedescribedinteractivelythanksto asimplescriptinglanguage

{andproduceacollectionoflocalgraphicalshape,whoseattributesdepend

onthevalueof thedatatheyencounter. Whatisparticularlyinterestingin

thisattemptisthefactthatthetechniquesofsurface,volumeandow

visualization are generalizedand thatsprayrenderingallows selective

progressive renement, i.e. the abilityfor a user to concentrate on the

(38)

3.2.4 Glyphs and Glyphmaker

\Glyphs are graphical objects whose attributes { position, size, shape,

color,orientation,etc. {areboundtodata. Theseobjectscanbeeectivein

depictingdiscrete data such as macromolecular structureand interactions,

butthey have alsoproved theirusefulnessinrepresenting variablessuch as

windspeedanddirectioninatmosphericdynamicssimulationsandobserva-

tions. Glyphsowetheireectivenesstohumaneye-brain system'sabilityto

discern nely resolved spatial relationshipsand dierences in shape. They

allowtheusertodisplayandcorrelateseveralvariablesatonce. Aresearcher

can,for example,distinguishtwovariablesbybinding themto thevisually

orthogonalrepresentations forshape distortion and pseudocoloring"[83 ].

Glyphmaker allowsnon-expertusersto customizetheirowngraphical

representations using a simple glyph editor and a point-and-click bind-

ing editor named glyph binder. In particular, users can create and then

alter bindings to visual representations, bring in new data or glyphs with

associatedbindings,changerangesforbounddata, anddo theseoperations

interactively.

3.2.5 Parametrized Geometric Objects

Inspiredbytheglyphmetaphordescribedabove,MulderandvanWijk[115,

64 ] imagined a similar object called Parametrized Geometric Object

(PGO).Theybuiltalsoan interactive toolnamed3D PGO editor,which

is part of their Computational Steering Environment (CSE). In this

environment,usersbind graphicalobjects { like sphere,cubesorcylinder{

tovariablesbyparametrizingthegeometryandattributesoftheirshapewith

databymeansofthePGOeditor. Becausethegoalofauthorsisto provide

a general environment for computational steering, they have implemented

atwo-waycommunicationbetweengraphicalobjectsanddatasothatusers

mayalso drive thesimulation byinteractingwithgraphicalobjects.

3.2.6 VTK actors

In VTK [93 ], Schroeder, Martin and Lorensen dened actors in order to

represent abstractly any entity in a renderingscene. Used at the ultimate

stage ofthe pipeline, an actor maintainsa reference to therenderingprop-

ertiesandthedeninggeometry,thatisgivenasinputbyamapperobject

convertingdatato graphicalprimitives. At theend,all actors arecollected

and put into an actors collection which is given in input to a general

(39)

3.3 Detailing the visualization mapping

By carefully examining the denition of the metaphors described above,

one notices two things. First, the authors of these metaphors systemati-

cally referred to the notion of object and, second, they introduced their

own solutionforthe bindingof dataand graphicalobjects with highlevel

mechanism,i.e. withouthavingrecourseto heavyprogrammingtechniques.

Undoubtedly,this kindof approach supercedes the classic notion of image

and hardcoded image processing techniques that were the foundations of

mostoldervisualization systems. Certainly themainreason forthat isthe

factthatrecentvisualizationsystemshavetointegrateadvancedinteractive

meansinorder to beaccessible forcasualusers. Thus, graphicalprimitives

aregroupedintoentitiessothattheuserscanmanagewell-identiedobjects.

In order to provide well-suited methaphors usable for a wide range of

applications,itisessentialto examineingreaterdetailthenotionofvisual-

izationmapping. HaberandMcNabbconsideredthevisualizationmapping

asan atomic operation that maps thederived data to graphical primitives

by means of a transfer function. However, it can be more interesting to

rene this denition and to decompose the visualization mapping in three

distinctsteps:

1. thedenitionofthe transferfunction,

2. theresult oftheapplication of thefunctionto given parameters,and

3. theresultsproducedbythemapping.

As we will see in the following sections, separating the function from its

applicationon parameters andfrom theresultsproducedallowsto imagine

usefulmetaphorsand abstractionsforeach ofthethree distinct steps.

3.3.1 Dening the transfer function

AsexplainedinSection3.1.2,thetransferfunctionisthemappingofderived

data onto a graphical representation. Forinstance, a transfer fonctioncan

be the mapping of the magnitude of the velocity at a given instant and

positiononto theheightofaconerepresentingalso thevelocitydirectionby

therotation anglearound its gravitycenter.

For manyvisualization techniques,the transfer functionis denedonce

and for all, but it is essential that the function can be adapted to fullll

the particular needs of users. Ideally, it should be possible to dene this

function interactively { as it is the case in Spray, Glyphmaker and CSE.

Butpractically,because mostmappingsarenon-trivial,onlytheexpression

(40)

3.3.2 Mapping the function on parameters

After the denition of the function and the set of parameters, the second

stageconsistsinapplyingthefunctionto theinstantiatedparameters. This

stepcorrespondstothevisualizationmappingtransformationoftheclassical

visualizationprocess (seeSection3.1.1). Itisgenerallyachieved bytheuser

orautomaticallybythesystem. Fourtypesof parameterscanbeidentied:

1. spatialparameters,

2. temporal parameters,

3. a sourceof data, forinstance,thedataset andeld of interest, and

4. renderingparameterssuchas,forinstance,acolormapforpseudocol-

oring.

Theparameterscanbeintroducedusingseveralinputdevicesasforinstance

keyboard, microphone, mouseorVR peripherals.

3.3.3 The results produced by the mapping

Then, theapplication of the functionto the parameters produces a result.

It mainly consists in a virtual object that is displayed onto the screen {

by taking into account the rendering parameters { as a graphical object.

Contrary to the classicvisualization process (see Section 3.1.1), the result

of the mapping is a virtual object existing in the mental representation of

the user. This object is no longer reduced to a displayable image but the

user is able to interact withit: this object is an indivisibleentity that the

usercan controldirectly.

The mappingcan also generate derived data: for example, thecreation

ofan isosurfaceusuallygenerates aclosed surfacewhose volume can bean

interestingquantityto visualize. Convenientmetaphorswillbe proposedin

thenextsectionsothattheuserscanhaveaccesstosuchconceptualobjects

inadirect and naturalway.

3.4 The visualization objects formalization

Theconceptofvisualization objectsthatwillbeproposedinthissection,

willdenethreesimplemetaphors{whoserolecanbeeasilyunderstood

bytheuserandwhichgeneralizemostvisualizationtechniques{correspond-

ingto thethree stepsdescribedin theprevioussection.

WeproposetorenetheconceptofHaberandMcNabb'sAVO[38 ],with

aslightlydierentmeaning,usingahierarchycomposedofthreeabstraction

(41)

Figure 3.3: Visualizationobjecthierarchy

An AVO (AbstractVisualizationObject) isa function that maps a

set of parameters onto a geometric object with certain properties.

Threeof themcan beidentiedbecause theyplayaparticular rolein

thecreation ofthe geometricobject:

{ thesource: thedataon which theAVOacts;

{ thetime: thetimeat whichtheAVO acts;

{ theregion of interest: theplace wheretheAVOacts.

The cutting plane is an example of such an AVO, thesource being a

scalar eld, the region of interest being a plane, and the color map

beingan additionalparameter.

A CVO (ConcreteVisualization Object) is a 3D object which exists

onlyinthe conceptual world of the user. The \semi-transparent cut-

ting plane of the temperature eld in the plane x = 7 and at time

t= 22" (with thecorresponding color, reectance and texture) is an

example of a CVO. A CVO thus encompasses attributes including

color,transparency,and soon. More formally:

CVO=AVO (parameters)

whereparameters =fsource, time, region of interest,...g

In the example we mentioned, the source is the temperature eld,

the timeis t=22, the region of interest is theplane x= 7, the rst

Références

Documents relatifs

(a) Heating baseplate with three coupons, (b) Setup with separate measurement techniques for deformation through dimensional measurement by fringe projection and temperature

These waveforms show that the basic common-mode feedback (CMFB) used in Fig. 8.3 is sufficient to keep the common-mode output level of the differential amplifier with

Biseau: An Answer Set Programming Environment for High-Level Specification and Graph Visualization applied to FCA.. ICFCA 2019 - International Conference on Formal Concept Analysis,

we propose a new VR system architecture (see fig.3), us- ing what we call an Adaptative 3D Interaction Framework (A-3DI Framework), by adding a new component: data pro- cessing and

The metadata thus provided is used to support a role-based access control service (see [7] for further details on role based.. image storage server, image size bound dm2 client

We have applied our method to a number of examples from FRAV3D c database. One such example is given in Fig. Each point of the 2.5D depth map is coded with 8 bits. The 3D

In this thesis work, several TEM microscopy techniques, such as CBED, NBED, HR-TEM, PACBED, STEM, have been used to study the specimen thickness, the three-dimensional

Thanks to the existing visualization process definitions and parameter descriptions, we identify three main characteristics of the representation context: the data type, the task