Data Visualization The State Of The Art 1st
Edition Dirk Bartz download
https://ebookbell.com/product/data-visualization-the-state-of-
the-art-1st-edition-dirk-bartz-4200094
Explore and download more ebooks at ebookbell.com
Here are some recommended products that we believe you will be
interested in. You can click the link to download.
Effective Data Visualization The Right Chart For The Right Data Second
Stephanie D H Evergreen
https://ebookbell.com/product/effective-data-visualization-the-right-
chart-for-the-right-data-second-stephanie-d-h-evergreen-34801230
Effective Data Visualization The Right Chart For The Right Data
Stephanie D H Evergreen
https://ebookbell.com/product/effective-data-visualization-the-right-
chart-for-the-right-data-stephanie-d-h-evergreen-61083916
Data Visualization Uncovering The Hidden Pattern In Data Us Amar Sahay
https://ebookbell.com/product/data-visualization-uncovering-the-
hidden-pattern-in-data-us-amar-sahay-56240708
Interactive Data Visualization For The Web An Introduction To
Designing With D3 1st Edition Murray
https://ebookbell.com/product/interactive-data-visualization-for-the-
web-an-introduction-to-designing-with-d3-1st-edition-murray-55920266
Interactive Data Visualization For The Web An Introduction To
Designing With D3 2nd Edition Murray
https://ebookbell.com/product/interactive-data-visualization-for-the-
web-an-introduction-to-designing-with-d3-2nd-edition-murray-34627236
Interactive Data Visualization For The Web An Introduction To
Designing With D3 Scott Murray
https://ebookbell.com/product/interactive-data-visualization-for-the-
web-an-introduction-to-designing-with-d3-scott-murray-4081728
Interactive Data Visualization For The Web 2nd Edition Murray
https://ebookbell.com/product/interactive-data-visualization-for-the-
web-2nd-edition-murray-11901598
Interactive Data Visualization For The Web 2nd Edition Scott Murray
Scott Murray
https://ebookbell.com/product/interactive-data-visualization-for-the-
web-2nd-edition-scott-murray-scott-murray-7294504
Interactive Data Visualization For The Web Scott Murray
https://ebookbell.com/product/interactive-data-visualization-for-the-
web-scott-murray-11194354
DATA VISUALIZATION
The State of the Art
THE KLUWER INTERNATIONAL SERIES
IN ENGINEERING AND COMPUTER SCIENCE
DATA VISUALIZATION
The State of the Art
edited by
Frits H. Post
Delft University of Technology, The Netherlands
Gregory M. Nielson
Arizona State University, U.S.A.
Georges-Pierre Bonneau
University Grenoble I/GRAVIR/IMAG, France
SPRINGER SCIENCE+BUSINESS MEDIA, LLC
Library of Congress Cataloging-in-Publication Data
A C.I.P. Catalogue record for this book is available
from the Library of Congress.
Post, Frits H.; Nielson, Gregory M ; Bonneau, Georges-Pierre
DATA VISUALIZATION: The State of the Art
Additional material to this book can be downloaded from http://extras.springer.com.
ISBN 978-1-4613-5430-7 ISBN 978-1-4615-1177-9 (eBook)
DOI 10.1007/978-1-4615-1177-9
Copyright © 2003 by Springer Science+Business Media New York
Originally published by Kluwer Academic Publishers in 2003
Softcover reprint of the hardcover 1st edition 2003
All rights reserved. No part of this work may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, electronic, mechanical,
photocopying, microfilming, recording, or otherwise, without the written
permission from the Publisher, with the exception of any material supplied
specifically for the purpose of being entered and executed on a computer system,
for exclusive use by the purchaser of the work.
Permission for books published in Europe; permissions@wkap.nl
Permissions for books published in the United States of America: permissions@wkap.com
Printed on acid-freepaper.
Contents
Preface ix
Part I Visualization Algorithms and Techniques
Efficient occlusion culling for large model visualization 3
D. Bartz, M. MeijJner, G. Muller
Localizing vector field topology 19
G. Scheuermann, B. Hamann, K.I. Joy, W. Kollmann
Feature tracking with skeleton graphs 37
B. Vrolijk, F. Reinders, F.H. Post
Correspondence analysis: visualizing property-profiles of time-dependent 3D
datasets 53
K. Fries, J. Meyer, H. Hagen, B. Lindemann
Specializing visualization algorithms
S. Diehl
Isosurface extraction for large-scale data sets
Y. Livnat, C. Hansen, C.R. Johnson
Part II Volume Visualization
Topologically-accentuated volume rendering
Issei Fujishiro, Yuriko Takeshima, Shigeo Takahashi, Yumi Yamaguchi
Reconstruction issues in volume visualization
T. Theuj31, T. Moller, J. Hladuvka, M.E. Groller
High quality splatting and volume synthesis
R. Crawfis, J. Huang
Cellfast: Interactive unstructured volume rendering and classification
C.M. Wittenbrink, H.J. Wolters, M. Goss
67
77
95
109
127
141
vi THE STATE OF THE ARTIN DATA VISUALIZATION
Cell projection of meshes with non-planar faces
M. Max, P. Williams, C. Silva
Segmentation and texture-based hierarchical rendering techniques for
large-scale real-color biomedical image data
J. Meyer, R. Borg, l. Takanashi, E.B. Lum, B. Hamann
Part III Information Visualization
157
169
eBusiness Click Stream Analysis 185
S.G. Eick
Hierarchical exploration of large multivariate data sets 201
J. Yang, M.O. Ward, E.A. Rundensteiner
Visualization of multidimensional data using structure preserving projection
methods 213
W. de Leeuw, R. van Liere
Visualizing process information and the health status of wastewater
treatment plants - A case study of the ESPRIT-project WaterCIME 225
P. Dannenmann, H. Hagen
Part IV Multiresolution Methods
Data structures for 3D multi-tessellations: an overview 239
E. Danovaro, L. De Floriani, P. Magillo, E. Puppo
A data model for adaptive multi-resolution scientific data 257
P.J. Rhodes, R.D. Bergeron, T.M. Sparr
Multiresolution representation of datasets with material interfaces 273
B.F. Gregorski, K.I. Joy, D.E. Sigeti, J. Ambrosiano, G. Graham,
M. Wolinski, M.A. Duchaineau
Generalizing lifted tensor-product wavelets to irregular polygonal domains 289
M. Bertram, M.A. Duchaineau, B. Hamann, K.I. Joy
Ranked representation of vector fields 301
B. Nakshatrala, D. Thompson, R. Machiraju
Part V Modelling Techniques
Procedural volume modeling, rendering, and visualization
D. Ebert, P. Rheingans
Surface approximation to point cloud data using volume modeling
A. Huang, G.M. Nielson
317
333
Contents
Enriching volume modelling with scalar fields
M. Chen, A.S. Winter, D. Rodgeman, S. Treavett
Fast methods for computing isosurface topology with Betti numbers
S.F. Konkle, P.J. Moran, B. Hamann, K.I. Joy
Surface interpolation by spatial environment graphs
R. Mencl, H. Maller
Part VI Interaction Techniques and Architectures
Preset based interaction with high dimensional parameter spaces
J.J. van Wijk, C.W.A.M. van Overveld
Visual interaction to solving complex optimization problems
A. Hinneburg, D.A. Keirn
Visualizing cosmological time
A.J. Hanson, c.-w. Fu, E.A. Wernert
Component-based intelligent visualization
H. Hagen, H. Barthel, A. Ebert, M. Bender
Author Index
vii
345
363
377
391
407
423
439
453
Preface
In this book we survey the state of the art in the field of Data Visualiza-
tion. The origins of this field are in the early days of computer graphics in
the 1950s, when the first graphs and figures were generated by computers.
A strong impulse was given to the field by the appearance, in 1987, of the
NSF report 'Visualization in Scientific Computing', in which the need for new
computer-based visualization techniques was stressed. With the rapid increase
of computing power, larger and more complex numerical models were devel-
oped, resulting in the generation of huge numerical data sets. Also, large data
sets were generated by data acquisition devices such as medical scanners and
microscopes, and data was collected in large databases containing text, numer-
ical information and multimedia information. Advanced computer graphics
techniques were needed to process and visualize these massive data sets.
The NSF report marked the start of a large number of research activities and
the emergence of Data Visualization as a new specialism within the field of
computer graphics. In 1990, the Eurographics Association started with annual
European visualization conferences, and the IEEE Computer Society started
the annual IEEE Visualization Conferences. The journal IEEE Transactions
on Visualization and Computer Graphics (TVCG) was started in 1995, and
several other computer graphics journals and conferences are publishing papers
in visualization.
The phrase 'Visualization in Scientific Computing' (or 'Scientific Visual-
ization') was used initially to refer to visualization as a part of a process of
scientific computing: the use of computer modelling and simulation in scien-
tific and engineering practice. More recently, visualization is increasingly also
concerned with data from other sources, including large and heterogeneous
data collections found in business and finance, administration, digital media,
etc. A new research area called 'Information Visualization' was launched in
the early 1990s, to support analysis of abstract and heterogeneous data sets in
many application areas. Therefore, the phrase 'Data Visualization' is gaining
acceptance to include both the scientific and information visualization fields.
Today, data visualization has become a very active and vital area of research
and teaching, and this book is a representative survey of this field to illustrate
this.
This book was originally planned at the Dagstuhl Seminar on Scientific Visu-
alization, held from 21-26 May, 2000. The IBPI SchloG Dagstuhl was founded
in 1990, and is located in the south-west of Germany near Saarbriicken. It
offers the opportunity of one-week meetings which bring together a number of
prominent researchers from around the world on significant topics in informa-
x THE STATE OF THE ARTIN DATA VISUALIZATION
tion technology. This seminar on visualization was the fourth in a series since
1991, and was attended by 56 scientists from 14 countries. Most of the papers
are based on the oral presentations given at the seminar, but they were expanded
and updated later. The papers represent a good survey of the state of the art in
the field of data visualization.
It would be impossible to cover every aspect of the field in a collection of
papers, but we have selected 30 reviewed contributions from well-known visu-
alization researchers, based on recent research of their groups, covering a wide
range of topics. It is always a challenging task to categorize these papers into
coherent groups, as this amounts to a partitioning of the field into a number of
sub-fields, which are usually quite transient in a highly dynamic area. Never-
theless, we have made an attempt, and it has resulted in the following chapters:
1. Visualization Algorithms and Techniques
2. Volume Visualization
3. Information Visualization
4. Multiresolution Methods
5. Modelling Techniques
6. Interaction and Architectures
The intent of this book is to present an overview for the inquiring scientist,
and as abasic foundation for developers. Anothergoal for this book is to provide
basic material for teaching state of the art techniques in data visualization. The
references included with the paperspoint out where toobtain further information
to complete the course material.
One natural aspect of visualization is the extensive use of colour images
and movies. Unfortunately, it was impossible to provide colour images in the
printed version of this book. But we have added a CD-ROM to this book which
contains all papers (in pdfformat), with high quality colorimages, and anumber
of movies illustrating the work in the papers.
We would like to express our sincere appreciation to the authors for their
interesting contributions, and the editorial staff in Electrical Engineering and
Computer Science of Kluwer Academic Publishers in Norwell, Mass. (USA)
for their interest and support in publishing this book. Numerous others have
helped us to produce this book, especially Paul de Bruin who did the hard work
of preparing the final copy for the book, and CharI Botha who designed the
layout for the CD-ROM. We would like to thank them all. Finally, we thank
the management and staff of SchloB Dagstuhl for smoothly organizing this
memorable week, and of course Hans Hagen for his indispensable advice and
encouragement. We hope that this book will serve the visualization community
and will add to the excellent reputation of the Dagstuhl seminars.
FRITS H. POST, GREGORY M. NIELSON, AND GEORGES-PIERRE BONNEAU
I
VISUALIZATIONALGORITHMS ANDTECHNIQUES
EFFICIENT OCCLUSION CULLING FOR LARGE
MODEL VISUALIZATION
Dirk Bartz
WSIIGRIS
University ofTubingen
bartz@gris.uni-tuebingen.de
Michael MeiBner
WSIIGRIS
University ofTubingen
meissner@gris.uni-tuebingen.de
Gordon Muller
Institute of Computer Graphics
Braunschweig University ofTechnology
gordon.mueller@tu-bs.de
Abstract Occlusion and visibility culling is one of the major techniques to reduce the geo-
metric complexity of large polygonal models. Since the introduction ofhardware
assisted-occlusion culling in OpenGL (as an extension), solely software-based
approaches are losing relevance rapidly for applications which cannot exploit
specific knowledge of the scene geometry. However, there are still several issues
open on the software side for significant performance improvements. In this
paper, we discuss several of these techniques.
Keywords: Large model visualization, occlusion culling, visibility, hierarchical scene orga-
nization, efficient bounding primitives
1. Introduction
In the past few years, the size of polygonal datasets used in scientific visual-
ization has increased rapidly. Typical model sizes range from several hundred
thousands of polygons in architectural design applications, several millions of
F. H. Post et al. (eds.), Data Visualization
© Kluwer Academic Publishers 2003
4 THE STATE OF THE ARTIN DATA VISUALIZATION
polygons in medical applications, multi-million polygons in mechanical engi-
neering, to several hundred of million polygons in scientific computing. In the
mean time, the raw polygonal rendering performance of state-of-the-art com-
puter graphics subsystems is also increasing fast. However, it is not increasing
as fast as the extra-ordinary high demands driven by scientific visualization, re-
sulting in a growing divide between rendering requirements and raw rendering
performance.
Numerous approaches address this growing divide, such as mesh reduction,
geometry compression, parallel processing, volume rendering, and visibility
and occlusion culling. Several visibility and occlusion culling approaches were
developed in the past decade to reduce the polygonal complexity of a wide
variety of applications. Object-space oriented visibility culling algorithms ad-
dress mostly problems from global illumination or computational geometry.
However, they are usually either limited to specific visibility problems, or do
not provide enough performance for rapid, or even interactive (more than 10
frames per second (fps)) explorations of large geometric objects. Here, we are
focusing on image-space occlusion culling algorithms which show good per-
formance for general polygonal models or dynamic scenes, while object-space
approaches can only deal with a limited scene complexity.
With the introduction of graphics hardware support for occlusion culling
by Hewlett-Packard Scott et aI., 1998, interactive exploration (more than 10
fps) became feasible for large polygonal models, virtually eliminating the need
for purely or mostly software-based approaches for applications with general
or dynamic scenes. Therefore, we will in particular discuss methods which
exploit this specific functionality.
2. Occlusion Culling Approaches
Most occlusion or visibility culling algorithm rely on a hierarchical organi-
zation of the scene to check for visibility at different levels of detail. Another
common feature is an initial view-frustum check - usually in object space - to
determine the scene elements which are not intersecting with the view-frustum
and hence, not visible. Garlick Garlick et aI., 1990 presented an approach which
combines these techniques for a walk-through system. Most other image space
approaches apply an additional occlusion test, to determine which parts of the
geometry are occluded by scene elements rendered previously. Most of these
approaches Greene et aI., 1993; Zhang et aI., 1997; Bartz et aI., 1999 use
different software-based techniques to trace visual contributions of the scene
elements to determine if they are potentially visible1. Greene et al. Greene
et aI., 1993 traced the rasterized silhouette through a z-pyramid to determine
changes in the z-buffer, indicating a not occluded object. Zhang et al. Zhang
et aI., 1997 used a hierarchical screen projected map of pre-selected occluders
Efficient occlusion cullingfor large model visualization 5
to check if the scene elements are occluded. In Bartz et al., 1999, the OpenGL
stencil buffer is used as virtual occlusion buffer, which is sampled to trace for
visual contribution. We will explain this in more detail later in Section 2.3.
In contrast to these software-based approaches, Hewlett-Packard released the
VISUALIZE fx series of graphics subsystems which provide hardware support
for occlusion culling queries using the HP occlusion culling flag Scott et al.,
1998. The visibility status of a scene element can be queried by rendering
this element (or its bounding volume) in an occlusion mode which does not
contribute to the framebuffer. However, potential changes to the depth buffer
are detected, indicating visibility of that element.
Other hardware-based approaches include the Z-query in the not anymore
available Denali graphics on the Kubota Pacific workstation Greene et al., 1993
and the instrument extension on SGl's Visual PC SGI, 1999. In another recent
proposal, Bartz et al. Bartz et al., 1998 suggest hardware modifications within
the rasterizer by adding an Occlusion Culling Unit to provide detailed visibility
information, or culling individual triangles or pixel groups beyond "traditional"
HP-flag style culling MeiBner et al., 2001.
In the following, we briefly discuss efficient scene tree traversal which de-
termines in which sequence the hierarchical scene organization is tested for
occlusion. Afterwards, we present results obtained using OpenGL for efficient
occlusion culling of complex polygonal scenes Bartz et al., 1999. In particular,
we present two methods how to use the OpenGL selection mode to perform
view-frustum culling and OpenGL's stencil buffer as virtual occlusion buffer.
2.1 Efficient Scene Tree Traversal
The efficiency of image-space occlusion culling approaches depends on the
sequence by which occlusion is determined, since scene objects in the back of
the scene from the current view point are very unlikely to occlude other objects.
Greene et al. Greene et al., 1993 used a front-to-back sorted scene to ensure
efficiency. Zhang et al. Zhang et al., 1997 select "good occluders" from a pre-
selected occluder database based on similar heuristics. In our previous stencil
buffer-based approach Bartz et al., 1999 (also presented later on in Section 2.3),
we perform front-to-back sorting during view-frustum culling, which involves
the transformation ofthe scene objects (or their bounding volumes) into the view
coordinate system. Furthermore, we alsoproposed an interleavedscheme where
the occlusion test is performed also on the inner nodes of the scene hierarchy
tree, once view-frustum culling has determined those as potentially visible -
and sorted these nodes front-to-back. This scheme allows the assignment of an
occlusion budget to balance rendering and culling costs.
In early HP occlusion culling flag-based approaches, a brute-force testing
on scene elements was used Scott et al., 1998, which we modified to view-
6 THE STATE OF THE ART IN DATA VISUALIZATION
frustum culling of the complete scene hierarchy tree, sorting of the remaining
leaf elements, and subsequent front-to-back occlusion testing of the potentially
visible leaf elements Bartz and Skalej, 1999.
Further measurements on the visibility of leaf elements indicated additional
potentialfor more efficient utilization ofocclusion culling for scenes with ahigh
depth complexity. The approximately 10% front-most leaf elements in these
scenes are not occluded in most ofthe cases, hence they can be rendered without
the costly determination of their visibility. Furthermore, the 40% farthest scene
elements do not significantly change the visibility information stored in the
depth buffer of the graphics system because they are already occluded. There-
fore, their occlusion status can be established without taking their own occluder
potential into account, which usually is a cheaper occlusion query. However,
the distribution ofthe objects in ascene is very application dependent and needs
to be established individually.
2.2 View-Frustum Culling
In contrast to other published approaches, we use OpenGL to perform the
view-frustum culling step. In detail, we use the OpenGL selection mode to de-
tect whether abounding volume interferes with the view-frustum. This OpenGL
mode is designed to identify geometric objects rendered into a specific screen
area Woo et al., 1997, which in our case is the whole screen. The polygonal
representation of the bounding volume (as convex hull) is transformed, clipped
against the view-frustum, and finally rendered without contributing to the actual
framebuffer Woo et aI., 1997. Once a bounding volume intersects the view-
frustum - the hit buffer of OpenGL's selection mode has a contribution from
this bounding volume object - we test whether the polygonal bounding volume
resides entirely within the view-frustum. In this case, all subtrees ofthe bound-
ing volume are marked potentially visible. Otherwise, we recursively continue
testing the child nodes of the bounding volume hierarchy.
In rare cases, the bounding volumes cancompletely contain the view-frustum
- resulting in no contributions to the hit buffer of the selection mode, due to a
not visible bounding volume representation. This can be prevented by testing
if the view point lies within the bounding volume, or if the bounding volume
lies in between the near plane of the view-frustum and the view point.
As a result of the view-frustum culling step, leaves are tagged potentially
visible, if they are not culled by the view-frustum culling, or definitely not
visible.
2.3 Virtual Occlusion Buffer-based Culling
Thetaskofanocclusionculling algorithm is todetermine occlusion ofobjects
in a model. We use a virtual occlusion buffer (VOB), being mapped onto
Efficient occlusion culling for large model visualization 7
the OpenGL framebuffer to detect possible contribution of any object to the
framebuffer. In our implementation of the algorithm on an SGI 02 and an
SGI OctanelMXE, we used the stencil buffer for this purpose2 . Intentionally,
the stencil buffer is used for advanced rendering techniques, like mUlti-pass
rendering.
To test for occlusion ofa node, we send the triangles ofits bounding box (BB)
to the OpenGL pipeline, use the z-buffer test while scan-converting the triangles,
and redirect the output into the virtual occlusion (stencil) buffer. Occluded
bounding volumes will not contribute to the z-buffer and hence, will not generate
afootprint in the virtual occlusion buffer.
Although reading the virtual occlusion buffer is fairly fast, it is the most
costly single operation of our algorithm, which accounts for approximately
90% of the total costs of the occlusion culling stage. This is mainly due to
the time consumed for the setup getting the buffer out of the OpenGL pipeline.
For models subdivided into thousands of bounding volumes, this can lead to a
less efficient operation. Furthermore, large BBs require many read operations.
Therefore, we implemented a progressive occlusion test, which reads spans of
pixels from the virtual occlusion buffer using a double interleaving scheme.
Although, the setup time on the 02 for sampling3 small spans of the virtual
occlusion buffer increases the time per sample, spans of ten pixels achieved an
almost similar speed-up as sampling entire lines of the virtual occlusion buffer.
For the OctanelMXE, we need to read larger chunks from the framebuffer in
order to achieve a sufficient speed-up. Note that sampling introduces a non-
conservative heuristic which trades-off quality versus rendering performance.
However, the experiments in the next section showed no apparent artifacts (even
in animations), although small image differences are present.
2.4 Analysis
We ran several experiments to evaluate the performance of the OpenGL-
assisted occlusion culling approach. For a complete listing ofthe results, please
refer to Bartz et aI., 1999.
All experiments were run on four different scenes; an architectural scene of
eight gothic cathedrals - arranged on a 3D array, a city scene, a forest scene
to demonstrate quantitative culling, and - similar to Zhang et aI., 1997 - the
content of a virtual garbage can of rather small objects (see also Fig. 1). An
hierarchical scene organization for each dataset was generated by manual tuning
of a scene hierarchy generated by SGl's OpenGL optimizer (see Section 3).
Frame-rate and culling rate are measured over a sequence of about 100 frames
on an SGI 02 workstation (256 MB, RlOOOO @ 175 MHz), and on an SGI
OctanelMXE (896 MB, R10000 @ 250 MHz CPU). Please note that the datasets
used for the SGI 02 were using triangle strips, while this was not possible for
8 THE STATE OF THE ARTIN DATA VISUALIZATION
(a>
(d) (e) (I)
Figure 1. Scenes: (a,d) city b,e) garbage, (c,t) cathedrals; upper row: views with occlusion
culling; lower row: views with BBs of occluded scene elements.
technical reasons on the Octane. The polygonal complexity and speed-
scene #triangles culling culling frame-rate speed-up
02 MXE MXE/{fps] O2IMXE
cathedrals 3,334,104 91.3% 92.5% 5.3 4.2/12.6
city 1,056,280 99.8% 87.7% 7.7 4.8/9.8
forest 452,981 84.7% 80.5% 4.7 2.6/6.1
garbage 5,331,146 96.0% 38.2% 0.3 7.0/5.0
Table 1. Average performance of OpenGL-assisted occlusion culling compared to view-
frustum culling only. Different culling rates are due to different sampling parameters.
up numbers are listed in Table 1. The costs for view-frustum and occlusion
culling vary with the different scene organization granularities; Le., for the
cathedrals dataset, view-frustum culling accounts for approximately 5% of the
costs, occlusion culling (mostly dominated by reading the stencil buffer) for
approximately 20%, and rendering of the as visible classified scene elements
for about 75% of the total frame time. The distribution and total amount of the
costs basically depend on architecture of the graphical subsystem. A highly
interleaved graphics system like the InfiniteReality of SGI is likely to perform
Efficient occlusion culling for large model visualization 9
worse than the 02 for this algorithm due to the high set-up costs ofreading from
the framebuffer, while single-pipeline low- and mid-end graphics are mostly
limited by the total amount read from the framebuffer. Therefore, the sampling
parameters - sampling frequency and how much is read from the framebuffer
per sampling - of the occlusion culling approach trade off visual quality and
minimized set-up time and need to be parametrized for each graphics system.
3. Hierarchical Scene Organization
In the previous section, we pointed out the need for a hierarchical scene
organization, which is difficult to derive for general polygonal models. Several
previous papers on visibility and occlusion culling touch the topic of scene
organization. While some approaches require the scene designer to provide the
scene organization Snyder andLengyel, 1998; Zhang et al., 1997, others employ
decomposition methods which are application specific, such as adecomposition
along the skeleton of a volumetric object Hong et al., 1997, or a floor plan of a
building Airey et al., 1990; Teller and Sequin, 1991. However, these schemes
cannot be applied efficiently to general models. Models built in Computer-
Aided-Design (CAD) systems already include appropriate scene organization
information in a product data management system, due to the design process
which uses hierarchical notions like grouping and replication.
Amore general approach is to organize apolygonal model into regular spatial
decomposition schemes, such as BSP-trees Fuchs et al., 1980 or Octrees Greene
et al., 1993. While these decomposition schemes produce good results on
polygonal models extractedby the Marching Cubes algorithm from uniform grid
volume datasets - which provide a "natural" decomposition on a Marching
Cubes cell base -, these schemes run into numerous problems on general
models. Ifa polygon ofthe model lies across adecomposition boundary, it must
be either split into several parts, in order to produce a disjunct representation
of the bounding entities, or handled in another special way. Splitting polygons
however, can increase the number of small and narrow polygons tremendously.
Significant work on model organization has been published in the field of
collision detection. Methods based on oriented bounding boxes (OBB) were
explored by Gottschalk et al. Gottschalk et al., 1996. A bottom-up approach
for the construction of amodel hierarchy is suggested in Barequet et al., 1996 in
which nodes representing small parts of the geometry are "merged" into higher
hierarchy nodes.
In Bartz et al., 1999, the spatialization functionality of SGI's OpenGL Opti-
mizer package SGI, 1997 was used to generates scene hierarchies automatically.
However, our experience from the previous section showed that these scene hi-
erarchies need to be tuned manually in order to get sufficient performance and
motivated the work described in this section. More detailed information on the
10 THE STATE OF THE ART IN DATA VISUALIZATION
analysis and results using different decomposition techniques can be found in
MeiBner et al., 1999.
3.1 Scene Organization and Occlusion Culling
Generally, a polygonal scene can be decomposed into smaller parts, where
this scene organization can be either hierarchical or non-hierarchical. We call
each part of this decomposition a scene entity. Ifinformation at different multi-
resolution levels are required, usually a hierarchical organization is chosen,
where different scene entities are combinedinto one parententity which contains
the whole information of the associated scene entities, or only information with
less detail (a lower level-of-detail). This decomposition can be represented as
a tree which is referred to as scene tree or scene graph. This tree contains
two different kinds of nodes; scene nodes and leafnodes. Only the leaf nodes
contains the geometry of the actual model and the BB with respect to the used
decomposition method. In contrast, a scene node does not contain any geometry
of the actual dataset; it only contains the spatial boundaries of the associated
geometry nodes, thus the scene node is the implementation ofthe abstract scene
entity. In the following, three different approaches to generate a scene hierarchy
starting from given models are presented.
To measure the decomposition quality, we need to reduce the degrees offree-
dom of the used occlusion culling approach. Therefore, we employ OpenGL-
assisted view-frustum culling Bartz et aI., 1999 and the Hewlett-Packard oc-
clusion culling flag Scott et al., 1998. First, view-frustum culling is performed
hierarchically on the scene tree top-down; the scene nodes of the tree are tested
for intersection with the view-frustum. All the nodes which have a non-empty
intersection are located within the view-frustum and may contain visible sub-
structures. Consequently, we proceed with the view-frustum test, until we reach
the leaf levels of the scene tree.
In the second step, all the remaining leaf nodes are depth-sorted according
to their associated BBs and tested for occlusion using the HP occlusion culling
flag. The actual geometry of the front-most leaf node is rendered into the
empty framebuffer without testing. All further rendering is performed in an
interlocked fashion. First, we render the BB of the next-closest leaf node
in the HP occlusion mode which does not contribute to the framebuffer. If
this BB would have a visible contribution to the framebuffer, the HP occlusion
culling flag is set TRUE by the graphics hardware, and we render the associated
geometry in the standard render mode. Ifthe BB does not have any contribution
(flag is set FALSE), this BB and all the associated geometry is not visible and
therefore it is culled.
Efficient occlusion cullingfor large model visualization
'r~"
coat =1·S, + 4·S, = 1148.73
'W iBU'~
•
cost = 3·S. + 2·S. =873.07
'~~~
cost =2·S. + 3·S. =1644.681
'w~-
•
cost =4·S. + 1·S. = 1005.12
11
Figure 2. Algorithm p-HBVO: First, polygons are sorted along every coordinate axis (a), then
polygons are partitioned into two sub-sets of neighboring polygons. Every decomposition is
evaluated by a cost function estimating the rendering costs (b). This evaluation is repeated for
every coordinate axis. The partition with minimal costs defines the decomposition of the scene
(c). Finally, this process is continued recursively.
3.2 Polygon-based Hierarchical Bounding Volume
Optimization (p-HBVO)
Our polygon-oriented Hierarchical BoundingVolume Optimization (P-HBVO)
method decomposes recursively a set of polygons into two smaller sets of poly-
gons. The selection of the optimal scene decomposition is computed by mini-
mizing a cost function approximating the expected rendering costs for all poten-
tial decompositions. At each decomposition level, the individual polygons are
assigned to exactly one scene entity of that level. Consequently, no polygons
are split, hence no new polygons are generated by this method.
First, the polygons are sorted along all coordinate axes where the barycenter
of each polygon serves as sorting key. Based on these three ordered lists, we
evaluate the potential binary decomposition sets along each axis for each entry
in the respective list by splitting the sorted list of polygons into a left and right
part. While most otherdecomposition schemes - ie., the median cut scheme Kay
and Kajiya, 1986 - use a pre-defined decomposition position, we evaluate for
each possible decomposition set a cost function which approximates the costs of
rendering the tree node which holds the decomposition sets as direct child nodes,
including the costs of visibility tests using their respective bounding volumes
(Fig. 2). The decomposition process is repeated recursively on the two new
scene entities, one containing all left polygons, the other one contains all right
polygons. The recursions terminates when either the number of polygons, or
the scene depth exceeds one of the two pre-defined parameters of the maximum
number of triangles per entity, or the maximum tree depth. These parameters
are specified by the user and supplied at the start of the decomposition process.
12 THE STATE OF THE ARTIN DATA VISUALIZATION
This cost function is identical to one which has already been successfully
applied in ray tracing environments Muller and Fellner, 1999, since the objec-
tive is the same; both algorithms traverse the scene graph in a similar way to
determine visibility. The costs of a scene entity H, with children Hleft and
Hright, is given by:
S(Hleft) . IH 1+ S(Hright) . IH· I
S(H) left S(H) nght
where
• IHI is the number of polygons within hierarchy H,
• S(H) the surface area of the BB associated to sub-scene H, and
• axis E {X, Y, Z}.
By combining two (three) binary tree levels to a quad-tree (octree), we can
reduce the tree depth which in tum decreases the number of inner nodes oc-
clusion tests. Overall, this algorithm generates well balanced scene trees with
respect to their polygon load. Furthermore, polygons of individual objects are
detected and clustered together. Optimal culling performance was achieved
with finer decompositions (implemented by merging neighboring tree levels),
which usually leads to higher culling costs, and hence lower rendering rates.
3.3 Octree-based Regular Space Decomposition (ORSD)
While the previous approach is able to handle arbitrary sets of polygons,
some data sources inherently generate regular decompositions which can be
exploited at much lower cost. Uniform gridded datasets of MarchingCubes
isosurfaces from MRI or CT scanners (i.e., ventricular system dataset), consists
of a set of sample values (voxels), arranged on an uniform grid. A cube ofeight
neighboring voxels is called a cell, where cells with a non-empty intersection
with the selected isosurface are called relevant cells.
The Octree-basedRegular Space Decomposition method (ORSD) uses a cell-
based (voxel-based) evaluation criterion, where the number of relevant cells
(relevant cell load or RCL) controls the decomposition process. This criterion
is only a rough approximation of the actual number of extracted polygons,
considering that each relevant cell represents between one and five triangles of
the isosurface. In our experiences however, RCL turned out to be sufficiently
accurate (Figure 3c visualizes one of the generated scene trees, where the drawn
BBs are bounding the actual geometry, not the respective octant volume).
After the construction of the entire octree, the RCL of each octant is already
calculated. Subsequently, the octree is traversed recursively, starting with the
superblock. Ifthe RCL is above auser-specifiedthreshold, the blockis classified
Efficient occlusion cullingfor large model visualization 13
as a scene node, thus being further decomposited into its child blocks. In the
other case, the block is considered as a leaf node. The associated relevant cells
- at the bottom level of the octree - contain the polygons of the isosurface,
which are assigned to that leaf node. This decomposition process results in
a hierarchy of blocks, where the leaf nodes contain the actual geometry (see
Section 3.1).
Overall, ORSD is a simple but efficient decomposition scheme which gener-
ates an adequate polygon load balance and BB sizes. As shown in the results,
the indirect evaluation method (RCL instead of number of polygons) does not
adversely affect the occlusion culling performance. However, ORSD is limited
to uniform grid datasets.
3.4 SGl's OpenGL Optimizer (OPT)
SGl's OpenGL Optimizer (OPT) is a C++ toolkit for CAD applications that
provides scene graph functionality for handling and visualization oflarge polyg-
onal scenes. The decomposition method realized in OPT is similar to the con-
struction of an octree; each scene entity is split into eight equally sized scene
entities. This process is repeated recursively, until a certain threshold criterion
for the iterated decomposition is reached. Octree-based spatial decomposition
is a simple and efficient scheme. However, the OPT scene organization mecha-
nism decomposes space not by simply bisecting edges of a cube, as in an octree,
but by choosing decomposition planes so that the rendering loads of the result-
ing parts are similar. As a result, the amount of geometry in each scene entity on
each side of the cutting plane is approximately the same. Polygons which are
split due to the decomposition are distributed to the respective scene entities.
The main parameters that can be used to control the decomposition are hints for
the lowest and highest amount of triangles (trimin, trimax ) in each scene entity
at the leaf-level of the scene hierarchy. However, the decomposition algorithm
only tries to meet these criterion but is not bound to it.
In general, OPT generates scene hierarchies with a well-balanced polygon
load. However, the BBs of the scene entities are less suited for occlusion
culling applications, because the cost function determining the scene entities is
obviously not optimized with respect to the volume or the screen-space area of
the BBs. We observed that the right-most branch of the scene tree frequently
contained large subsets (BB volume size) of the model, even in the lower tree
levels.
3.5 Evaluating the Scene Organization Quality
In this section, we discuss the efficiency ofthe decomposition algorithms with
respect to their occlusion culling-based rendering performance. All measure-
ments are performed on an HP B180/fx4 graphics workstation. The different
14 THE STATE OF THE ARTIN DATA VISUALIZATION
polygonal datasets (see Table 2) represent typical scenarios of different appli-
cation areas. Their scene trees only contain individual polygons (triangles) in
order to evaluate a comparable scenes. Two of the datasets are examined in
more detail.
Ventricular System Cathedral City
Grid Type Unifonn Unstructured Unstructured
Source MRI CAD Modeler
#Triangles 270,882 416,763 1,408,152
Frame-rates/[fps]
No Culling 4.6 3.8 0.9
p-HBVO 12.3 12.4 14.0
OPT 13.6 7.8 11.8
ORSD 15.3 n.a. n.a.
Render-rates/[%]
p-HBVO 16.0 30.0 0.1
OPT 19.7 30.1 3.6
ORSD 22.4 n.a. n.a.
Occlusion Time/[ms]
p-HBVO 30 4 27
OPT 16 54 33
ORSD 11 n.a. n.a.
Table 2. Scene overviews; as gold standard for the speed-up due to occlusion culling, we ,
show the frame-rate and render-rates for the datasets with and without culling (view-frustum and
occlusion). ORSD requires MarchingCubes-generated scenes, which are available only for the
ventricular system. Occlusion timelists the costs required for occlusion culling (no view-frustum
culling).
Scene trees of different decomposition granularities are evaluated for the
respective costs of view-frustum culling, occlusion culling, and rendering (in
frame-rate) of the not occluded geometry. Here, we present only culling and
rendering performance on the scene trees with the best rendering performance.
Culling performance is expressed as render-rate, which gives the percentage of
the geometry determined not occluded from the total scene geometry. More
detailed information on the evaluation can be found in MeiBner et aI., 1999.
Cathedral Dataset: This dataset represents the interior of a single gothic
cathedral (in contrast to Section 2.3), designed with a CAD system (see Table 2).
Occlusion is limited to small parts of the model, because a large share of the
polygons are visible from most view points within the model. Figure 3a shows
a very fine granular decomposition of the cathedral model using the p-HBVO
approach which adapts very nicely to the structures of the model, such as pillars
and arcs. In contrast, the decomposition generated by OPT (b) introduces very
large BBs, which do not adapt properly to the actual geometry.
Efficient occlusion culling for large model visualization 15
~ ~
II
q
II
d!:: =
>-
-
(a) (b) (c) (d)
Figure 3. Cathedral and ventricular system BB hierarchies generated by (a,d) p-HBVO, (b)
OPT, (c) ORSD/OPT; the arts and pillars of the cathedral are well detected by p-HBVO (a); OPT
only used a regular spatial decomposition (b). ORSD and OPT however, generated identical
results for the ventricular system dataset (c).
The p-HBVO approach performed best on this dataset (see gnuplots on
CDROM). This is due to the low culling costs, compared to OPT (see Table 2
and also MeiBner et al., 1999). The BBs of OPT require a significantly higher
time for occlusion culling compared to p-HBVO, which reduced the frame-rate
severely. This effect is reduced, however, due to camerapath locatedcompletely
within the cathedral, thus limiting potential occlusion anyway.
Ventricular System Dataset: The first dataset is a polygonal model of the
isosurface representing the ventricularsystem ofthe human brain extracted from
an MRI scan. We explore the dataset by moving through the lower part (Cisterna
Magna) of the polygonal model. Most of the model structures through-out the
walk-through are located within the view-frustum, while the structures with
the largest number of polygons (located in the upper part or lateral ventricles)
were not visible due to occlusion. All polygons of this model are aligned
on the uniform cell grid and are of approximately the same size. All three
adapted algorithms were able to detect this "natural" decomposition boundaries;
only OPT generated approximately 15% additional polygons due to splitting
operation between the grid points.
Table 2 (and gnuplots on CDROM) shows frame-rate and render-rate of the
evaluated algorithms. The most interesting detail is the low amount of time
consumed by occlusion culling by ORSD, due to its coarse decomposition.
The render-rate of p-HBVO was approximately 25% better than the render-
rate of the ORSD approach. However, the finer decomposition (see Fig. 3)
introduced additional culling costs twice as much as for ORSD, resulting in a
lower frame-rate (see Table 2.
16 THE STATE OF THE ARTIN DATA VISUALIZATION
Summary
Overall, the adapted scene organization approaches were able to generate
decompositions with faster rendering due to higher cull performance. This
was achieved by reducing culling costs or by reducing the render-rate of the
dataset. On uniform grid datasets, the basic ORSD approach produced a model
subdivision which performed best, mostly due to the low time spent to establish
occlusion or non-occlusion.
Generally, we observed that models with high occlusion do not require very
fine decomposition (ventricular system dataset, p-HBVO vs. ORSD). On the
other hand, a fine decomposition pays off ifinterior (thus completely occluded)
objects are clustered in a scene entity (city dataset, p-HBVO vs. OPT). In
contrast, models with low occlusion (cathedral dataset) can benefit from finer
decompositions, if the culling costs loss is only a fraction of the rendering costs
gain (see city dataset, p-HBVO).
Note that the p-HBVO approach builds a binary scene tree. This usually
results in deeper trees, hence more intermediate scene entities. This increases
the time spent for occlusion culling significantly. Once this binary tree was
re-built into a quad-tree representation, we achieved a frame-rate increase of
approximately 20%.
To summarize, we always achieved a speed-up due to occlusion culling-
based rendering. Especially with the highly occluded city dataset, we achieved
a speed-up of 15.6 after culling of 99.9% of the model geometry with the
p-HBVO algorithm. On the ventricular system dataset, the ORSD approach
accomplished the best results; 77.6% of the geometry was culled, due to view-
frustum and occlusionculling. This culling performance resulted in aframe-rate
speed-up of 3.3.
4. Conclusions and Future Work
In this chapter, we presented OpenGL-assisted occlusion culling techniques
and compared several methods for the generation of a hierarchical scene orga-
nization which can significantly increase the rendering performance (in fps).
Other techniques include efficient scene traversal strategies which can impact
the occlusion culling efficiently severely.
However, there are still many other visibility related techniques to improve
the interactive visualization of large models. Most of the occlusion culling
approaches use a simple axis-aligned bounding box to approximate the geom-
etry of a scene entity. Unfortunately, this approximation frequently has a much
larger screen-space area than the actual geometry, resulting in more stated vis-
ibility hits than necessary. Employing better convex hull techniques has the
potential to reduce these false positive visibility hits.
Efficient occlusion cullingfor large model visualization 17
Furthermore, the quantization of visibility (how many scene entity pixels are
visible) plays an important role in dealing with these kinds of "slightly visible"
entities. Lower levels of detail of this entity could be used instead.
Notes
1. The occlusion tests are performed for each scene hierarchy element separately within one frame.
Therefore, an element can be occluded by an element tested/rendered later.
2. Other buffers could be used as well, but the stencil buffer, as an integer buffer, is often the least used
buffer and has on some graphics systems an empirically measured better read performance than the other
buffers.
3. Basically, this scheme implements a sampling of the virtual occlusion buffer, where .am~lin9 th of
each BB is read in each iteration. In other words, the algorithm needs sampling iterations to fully read the
entire BB.
References
Airey, J., Rohlf, J., and Brooks, F. (1990). Towards Image Realism with Interactive Update Rates
in Complex Virtual Building Environments. In Proc. ofACM Symposium on Interactive 3D
Graphics.
Barequet, G., Chazelle, B., Guibas, L., Mitchell, l, and Tal, A. (1996). BOXTREE: A Hierar-
chical Representation for Surfaces in 3D. In Proc. ofEurographics.
Bartz, D., MeiBner, M., and HUttner, T. (1998). Extending Graphics Hardware for Occlusion
Queries in OpenGL. In Proc. ofEurographics/SIGGRAPH Workshop on Graphics Hardware,
pages 97-104,158.
Bartz, D., MeiBner, M., and HUttner, T. (1999). OpenGL-assisted Occlusion Culling of Large
Polygonal Models. Computers and Graphics - Special Issue on Visibility - Techniques and
Applications, 23(5):667--679.
Bartz, D. and Skalej, M. (1999). VIVENDI - A Virtual Ventricle Endoscopy System for Virtual
Medicine. In To appear in Proc. ofEG/IEEE Symposium on Visualization.
Fuchs, H., Kedem, Z., and Naylor, B. (1980). On Visible Surface Generation by a Priori Tree
Structures. In Proc. ofACM SIGGRAPH.
Garlick, B., Baum, D., and Winget, l (1990). Interactive Viewing of Large Geometric Databases
Using Multiprocessor Graphics Workstations. In SIGGRAPH'90 course notes: Parallel AL-
gorithms and Architectures for 3D Image Generation.
Gottschalk, S., Lin, M., and Manocha, D. (1996). OBBTree: A Hierarchical Structure for Rapid
Interference Detection. In Proc. ofACM SIGGRAPH.
Greene, N., Kass, M., and Miller, G. (1993). Hierarchical Z-Buffer Visibility. In Proc. ofACM
SIGGRAPH.
Hong, L., Muraki, S., Kaufman, A., Bartz, D., and He, T. (1997). Virtual Voyage: Interactive
Navigation in the Human Colon. In Proc. ofACM SIGGRAPH.
Kay, T. and Kajiya, l (1986). Ray Tracing Complex Scenes. In Proc. ofACM SIGGRAPH.
MeiBner, M., Bartz, D., GUnther, R., and StraBer, W. (2001). Visibility Driven Rasterization.
Computer Graphics Forum, 20(4):283-294.
MeiBner, M., Bartz, D., HUttner, T., MUller, G., and Einighammer, J. (1999). Generation of
Subdivision Hierarchies for Efficient Occlusion Culling of Large Polygonal Models. Tech-
nical Report WSI-99-13, ISSN 0946-3852, Dept. of Computer Science (WSI), University of
TUbingen.
18 THE STATE OF THE ARTIN DATA VISUALIZATION
Milller, G. and Fellner, D. (1999). Hybrid Scene Structuring with Application to Ray Tracing.
In Proc. ofICVC'99 (to appear).
Scott, N., Olsen, D., and Gannett, E. (1998). An Overview of the VISUALIZE fx Graphics
Accelerator Hardware. The Hewlett-Packard Journal, (May).
SGI (1997). Optimizer Manual. Technical report.
SGI (1999). Silicon Graphics 320, Visual Workstation. Specijiaction document, available from
http://visual.sgi.comlproducts/320lindex.html.
Snyder, J. and Lengyel, J. (1998). Visibility Sorting and Compositing without Splitting for Image
Layer Decompositions. In Proc. ofACM SIGGRAPH.
Teller, S. and Sequin, C. (1991). Visibility Pre-processing for Interactive Walkthroughs. In Proc.
ofACM SlGGRAPH.
Woo, M., Neider, J., and Davis, T. (1997). OpenGL Programming Guide. Addison Wesley,
Reading, Mass., 2nd edition.
Zhang, H., Manocha, D., Hudson, T., and Hoff, K. E. (1997). VisibilityCulling Using Hierarchical
Occlusion Maps. In Proc. ofACM SIGGRAPH.
LOCALIZING VECTOR FIELD TOPOLOGY
Gerik Scheuermann, Bernd Hamann, and Kenneth 1. Joy
Center of Image Processing and Integrated Computing, Department of Computer Sci-
ence,
University of California, Davis, CA 95616-8562, U.S.A.
scheuer!Ducdavis.edu, {hamann,joy}@cs.ucdavis.edu
Wolfgang Kollmann
Department of Mechanical and Aeronautical Engineering
University of California, Davis, CA 95616, U.S.A.
wkoiimann!Ducdavis.edu
Keywords: vector field, flow, topology, visualization
Abstract The topology of vector fields offers a well known way to show a "condensed"
view of the stream line behavior of a vector field. The global structure of a field
can be shown without time-consuming user interaction. With regard to large
data visualization, one encounters a major drawback: the necessity to analyze
a whole data set, even when interested in only a small region. We show that
one can localize the topology concept by including the boundary in the topol-
ogy analysis. The idea is demonstrated for a turbulent swirling jet simulation
example. Our concept works for all planar, piecewise analytic vector fields on
bounded domains.
Introduction
Vector fields are a major "data type" in scientific visualization. In fluid me-
chanics, velocity and vorticity are given as vector fields. This holds also for
pressure or density gradient fields. Electromagnetics is another large applica-
tion area with vector fields describing electric and magnetic forces. In solid
mechanics, displacements are typical vector fields under consideration. Sci-
ence and engineering study vector fields in different contexts. Measurements
and simulations result in large data sets with vector data that must be visual-
ized. Besides interactive and texture-based methods, topological methods have
been studied by the visualization community, see Helman and Hesselink, 1990,
Globus et aI., 1991 for example. In most cases, the scientist or engineer is in-
F. H. Post et al. (eds.), Data Visualization
© Kluwer Academic Publishers 2003
20 THE STATE OF THE ART IN DATA VISUALIZATION
terested in integral curves instead of the vector field itself. Since the behavior
of curves differs, a natural approach is to study classes of equivalent curves.
This approach reduces the information concerning all curves to the information
about the structural changes of curves. Vector field topology is one answer to
this question. First, one detects all stationary curves, i. e., the critical points (or
zeros) in the vector field. Then, one finds all integral curves where the behav-
ior is different between the neighboring curves. These "separatrices" are then
visualized together with the critical points, providing a detailed description of
the behavior of the integral curves.
A major drawback of topology-based visualization is the fact that one must
analyze the whole data set. In many situations, a scientist or engineer would
like to understand the behavior of curves in a limited area only. Due to the
global nature of topology, one analyzes, up to now, the whole data set to find
all separatrices in this area. In this paper, we show that this is not necessary. By
a strict topological analysis of the boundary (of the local region of interest), we
find all structural changes of the integral curves in any bounded region without
touching data outside the region. We start by providing a rigorous mathemat-
ical treatment of these concepts. We continue with algorithmic details and
conclude with theoretical and practical examples.
1. Vector Field Topology
Scientific visualization is concerned with bounded vector fields. in most
cases. In this paper, we deal only with two-dimensional vector fields, and we
provide the definitions only for this case.
Definition 1.1 A planar vector field is a map
v : R2 :J D -+ R2,
X f-t v{x}.
D is called domain ofthe vectorfield.
(1)
The domain D is usually given as a grid consisting of cells with the vector
data either given at the vertices, edges or cell centers. An interpolation method
is used to create a continuous vector field description for the whole domain.
For this reason, we assume that the vector field consists of a finite number
of "analytic pieces" (one for each cell) that are glued together along the grid
edges, thus defining a continuous vector field. As mentioned, a scientist or
engineer is often more interested in the integral curves.
Definition 1.2 An integral curve through a point xED of a vector field
v : R2 :J D -+ R2 is a map
(2)
Localizing vectorfield topology
where
cx(O) Xo,
Cx(t) = v (c(t)) , Vt E I.
21
(3)
(4)
The theory of ordinary differential equations states that integral curves exist
and are unique if the vector field is continuous and satisfies the Lipschitz con-
dition. This is the case for all interpolation schemes used in visualization.
Topology is especially of interest when concerned with the asymptotic behav-
ior of integral curves. "Limit sets" is the term used for start and end of integral
curves.
Definition 1.3 Let v : D -t R2 be a Lipschitz-continuous vector field and
c : R -t D an integral curve. The set
is called w-Iimit set of c. The set
{a E DI3(tn)~=o C R, tn -+ -00, lim c(tn) -+ a} (6)
n-too
is called a-limit set of c.
Remark 1.4 In the case of a curve c leaving the domain, we consider the
last boundary point as its w-limit set. In the case ofa curve c starting at the
boundary, we call its first point on the boundary its a-limit set.
We limit the types of limit sets in this paper to critical points and the inflow
and outflow parts of the boundary, since these are the most common cases.
Definition 1.5 A critical point ofv : D -t R2 is a point p E D with v (p) = O.
If all integral curves in a neighborhood of the critical point p have the point
p as a-limit set, the point p is called a source. If all integral curves in a
neighborhood ofthe critical point p have the point p as w-limit set, the point p
is called a sink. Ifa positive finite number ofintegral curves have the point p
as a- or w-limit set, we call the point p a saddle.
The boundary is split into inflow, boundary flow, and outflow regions.
Definition 1.6 Let D C R2 be a compact domain ofa Lipschitz-continuous
vectorfield v : D -t R2. Let dEaD be a point on the boundary. We define
the following three entities:
(1) The point d is called an outflow point if every integral curve through
d ends at d and there exists an integral curve through d that does not
22 THE STATE OF THE ARTIN DATA VISUALIZATION
contain another point of aD. The set of all outflow points is called
outflow set.
(2) The point d is called an inflow point ifevery integral curve through d
starts at d and there exists an integral curve through d that does not
contain another point ofaD. The set ofall inflow points is called inflow
set.
(3) The point d is called a boundary flow point ifthere exists an integral
curve ad : (-E, E) -t D, E> 0, through d lying completely inside aD.
The set ofall boundary flow points is called boundary flow set.
A point dEaD that is not an inflow, outflow, or boundary flow point is called
boundary saddle.
Each integral curve has an a limit set and an w limit set. We can also construct
the union of all integral curves that have a particular a or w set. These basins
are at the center of topology analysis, and visualization, as we will see.
Definition 1.7 Let v : D -t R2 be a Lipschitz-continuous vector field and
A c D a subset. The union ofall integral curves ofv that converge to A for
t -t -00 is called a-basin of A, denoted by Ba(A). Let neD be a subset.
The union ofall integral curves of v that converge to nfor t -t 00 is called
w-basin of n, denoted by Bw(n).
Since integral curves exist through every point, are unique, do not cross and
have a single a- or w-basin, we obtain a description of the domain D as a
disjoint union of a-basins and as a disjoint union of w-basins.
Theorem 1 Let D C R2 be a compact subset. Let v : D -t R2 be a Lipschitz-
continuous vector field. Let aI, ... ,aj be the sources, Sl, ... ,Sk be the sad-
dles, bl,' .. ,bp be the boundary saddles, and Zl, ••• ,Z/ be the sinks. Further-
more, let 11, ... ,1m be the inflow components, and 01, ... ,On be the outflow
components. If we assume that there are no other a- and w-limit sets, then D
can be decomposed into a-basins,
j m I p n k
D = UBa(ai)UU Ba(Ii)UU Ba(Si)UU Ba(bi)UU OiUU{Zi}' (7)
i=l i=l i=l i=l i=l i=l
The region D can also be divided into w-basins,
k n i p m j
D = UBw(Zi)UU Bw(Oi)UU Bw(Si)UU Bw(bi)UU IiUU{ai}. (8)
i=l i=l i=l i=l i=l i=l
The topology of a planar vector field is now defined as the union of all con-
nected intersections of a-basins with w-basins.
Localizing vectorfield topology 23
Definition 1.8 Let v : R2 :J D -t R2 be a Lipschitz-continuous vectorfield.
Its topological information consists oftwo parts:
(i) All a- and w-limit sets including the connected inflow and outflow com-
ponents ofthe boundary and the boundary saddles and
(ii) all connected components ofthe intersections ofa-basins with w-basins.
The idea of topology-based visualization is to extract this information from the
data automatically and present it to the user for interactive data exploration.
2. Topological Analysis
We want to extract the topological information of a vector field given by a
grid and vector values associated with vertices, edges or cells. After defining
an interpolation scheme, we have a Lipschitz-continuous vector field in the
sense of the previous section. The next step is to find the limit sets. Since
we limit their types to critical points and parts of the boundary, we have to
consider only these. Critical points are zeros of the vector field, so we must
determine all zeros in each cell. Furthermore, we have to analyze their types
to find sources, sinks, and saddles. This is necessary to find the basins in the
second step. Our vector field is at least CI-continuous inside the cells, so we
can compute the derivative at critical points inside cells. This allows a simple
classification in most cases.
Theorem 2 Let v : R2 :J D -t R2 be a vectorfield and p a critical point. If
the derivative Dv : D -t R2 X R2 is defined at p and has a determinant dif-
ferent from zero, the following classification ofthe critical point can be made:
(a) Ifthe real parts ofboth eigenvalues ofDv(p) are positive, p is a source.
(b) If the real parts ofboth eigenvalues ofDv(p) are negative, p is a sink.
(c) If the real parts ofthe two eigenvalues of Dv(p) are ofdifferent signs, p
is a saddle point. There are four integral curves reaching the saddle in
the directions associated with the two eigenvalues.
If the assumptions in the previous theorem are not satisfied, one has to analyze
the behavior of the integral curves in the neighborhood of the critical points.
For an arbitrary interpolation scheme, this may be a difficult and expensive
operation. For linear interpolations, a description is given in Tricoche et al.,
2000. Since the analysis of critical points has been described before, we do not
discuss details here. The second part is the analysis of the boundary. A general
boundary consists of several smooth edges (often line segments), continuously
connected at vertices defining one or more closed curves. We consider first the
case with a unique normal at the boundary point. This is valid inside the edges
and in case of aI-continuous connections of the edges.
24 THE STATE OF THE ARTIN DATA VISUALIZATION
Lemma 2.1 Let D C R2 be a compact domain with a boundary aD consisting
of a finite number of smooth curves (edges) so that no more than two edges
have a point in common. Let v : D -+ R2 be a Lipschitz-continuous, piecewise
smooth vector field. Let p E aD be a point on the boundary with v(p) 1= 0
such that there is a unique outward directed normal n(p) E R,2 ofthe boundary
at p. Then we have to considerfour cases:
(1) Ifv (p) . n(p) > 0 holds, p is an outflow point.
(2) Ifv (p) . n(p) < 0 holds, p is an inflow point.
(3) Ifv(p) . n(p) = 0 holds and we have outflow (inflow, boundary flow) on
both sides ofp, p is an outflow (inflow, boundary flow) point.
(4) If v(P) . n(p) = 0 holds and we have different behavior on the two
sides ofp, p is a boundary saddle. Ifwe have inflow on the side pointed
to by v(p), we have to calculate a'separatrix in this direction. If we
have outflow on the side pointed to by -v(P), we have to calculate a
separatrix in this direction.
Lemma 2.1 is illustrated in Figure 1. In an implementation, this is quite ab-
stract, since the last two expressions cannot be tested directly and it might seem
difficult to test all points on one edge. The strategy is to find all zeros of the
term v(d) . n(d) and check the behavior between the closest such points and
p. For all common interpolation schemes, one can use standard numerical zero
search and analysis methods for this problem. The analysis of boundary ver-
tices is somewhat more involved, since one has to look at the geometry of the
boundary at the vertex. We discuss the cases of a convex and a concave vertex
separately in the next two lemmata.
Lemma 2.2 Let D C R2 be a compact domain with a boundary aD consisting
of a finite number of smooth curves (edges) so that no more than two edges
have a point in common. Let v : D -+ R2 be a Lipschitz-continuous, piecewise
smooth vector field. Let p E aD be a point on the boundary between two
smooth edges. There are two normals m, n E R2 at p with respect to the edges.
We assume that p is a convex corner, i. e. there is a convex neighborhood ofp
in D. Then we have to considerfive cases:
(Al) If (v(P) . m) (v(p) . n) < 0 holds, the integral curve through p in D
contains only p.
(A2) If (v (P) . m) (v (P) . n) > 0 holds, p is an outflow or inflow point, de-
pending on the common sign ofthe products.
(A3) Ifv(p)·m = Oandv(o)·m > oholds for points 0 E aD arbitrary
close to p on the first neighboring edge, p is a outflow point.
Localizing vectorfield topology 25
(A4) Ifv(P) . m = 0 and v(o) . m = 0 holds for points 0 E aD arbitrary
close to p on the first neighboring edge, p is a boundary saddle. (The
integral curve through p stays on the first edge and leaves D at p, so one
does not have a separatrix entering the interior ofD at p.)
(A5) Ifv(p) . m = 0 and (v(o)· m) < 0 holds for points arbitrary close to
p on the first neighboring edge, p is a boundary saddle. (The integral
curve through p consists only ofp, so one has no separatrix entering the
interior ofD at p.)
An analysis ofthe cases with v(p) . n = 0 yields the same results.
Lemma 2.2 is illustrated in Figure 2. The last case deals with a concave vertex.
Lemma 2.3 Let D C R2 be a compact domain with a boundary aD consisting
of a finite number of smooth curves (edges) so that no more than two edges
have a point in common. Let v : D -+ R2 be a Lipschitz-continuous, piecewise
smooth vector field. Let p E aD be a point on the boundary between two
smooth edges. There are two normals m, n E R2 at p with respect to the edges.
We assume that p is a concave corner, i. e. there is a convex neighborhood of
barR2 - D. Then we have to considerfive cases:
(CI) If ( (v(p) . m) (v(p) . n)) > 0 holds, p is either an outflow or an inflow
point, depending on the common sign ofthe products.
(C2) If ((v(p) . m) (v(p) . n)) < 0 holds, p is a boundary saddle. (The inte-
gral curve through p is a separatrix that has to be integrated backward
andforward in time.)
(C3) Ifv(p), m = 0 and v(o)· m > 0 holds for points 0 E aD arbitrary
close to p on the first neighboring edge, the integral curve through p is a
separatrix that has to be integrated backward andforward in time.
(C4) If v(P) . m = 0 and v(o) . m < 0 holds for points 0 E aD arbitrary
close to p on the first neighboring edge, p is an inflow point.
(C5) Ifv(p)·m = 0 and v(o)·m = 0 holds for points 0 E aD arbitrary close
to p on the first neighboring edge, the integral curve through p stays on
one edge and enters the interior of D at p, so one has to calculate one
part ofthe curve.
An analysis of the cases where v(p) .n = 0 holds, yields the same results. The
situation of the previous lemma is illustrated in Figure 3. As before, the algo-
rithm determines all zeros of v(d) .m(d) and v(d) .n(d) on the two edges, and
analyzes the behavior of the points between the zeros closest to p. These lem-
mata allow to extract the first part of the topology information. The description
26 THE STATE OF THE ARTIN DATA VISUALIZATION
of the basins uses an important fact: The a basins belonging to sources and
inflow components are open two-dimensional subsets of D. The w basins be-
longing to sinks and outflow components are also open two-dimensional sub-
sets of D. Therefore, the boundaries of their intersections must either belong to
one-dimensional basins or be curves through boundary saddles. The only limit
sets with one-dimensional basins, under our assumptions, are saddles. There-
fore, all intersections can be shown by drawing all one-dimensional basins of
saddles, i. e., the integral curves starting or ending there and the integral curves
through boundary saddles. This provides the second part of the topological in-
formation.
We focus on the fact that one can do this analysis on any bounded region
of our data set and obtain useful information. The next two sections show
applications and compare local and global topology. Up to now, visualization
has not considered much boundary analysis since, in many applications, the
boundary has a rather simple flow structure. Parts are set to zero, defined as
outflow or inflow, so that there are no or only a few basin borders missing
in global topology. This changes when "taking out" a region from a rather
complex vector field.
3. Analytic Examples
The considerations from the last section aim at an analysis of vector field
topology including the boundary. The example provided in this section shows
the effect of this analysis on the understanding of topological vector field struc-
ture. It is based on the study of vector fields given by polynomial equations.
The construction of these fields is based on considerations based on Clifford
algebra, see Scheuermann et aI., 1998 and Scheuermann, 1999. Figures 4-6
show unit vectors to indicate the orientation of separatrices and integral curves.
Critical points are red, green, or blue. Red color indicates a saddle point, green
color a source, and blue color a sink. The separatrices are drawn in blue, inte-
gral curves are violet, and the boundaries of regions and domains are white.
We start with a vector field containing two sinks and two sources in a rect-
angular area. The conventional analysis, based on the separatrices starting at
saddle points alone, will find no separating curves at all, so a scientist is left
with the question of how the two sources and sinks interact. This can be seen
in Figure 4. Since there exist integral curves from one source to both sinks,
and also to the boundary, not all integral curves belong to the same open basin.
We know that, as a result of the piecewise linear interpolation and the analytic
structure of the original field, there are no additional critical points or more
complicated structures involved (in this example). There are ten boundary sad-
dles where the flow turns from inflow to outflow. By starting the construction
of separatrices at these positions it is possible to determine the structure of the
Localizing vectorfield topology 27
flow. The result is shown in Figure 5. The whole rectangle is now divided
into open basins with the same Q- and w-basin. Every integral curve in one of
these basins starts and ends at the same critical point or connected component
of the boundary. It is now easy to understand the interactions of the sinks and
sources.
As mentioned before, this example was constructed using an analytic field
description. The structure of the entire field is shown in Figure 6. The small
white box marks the domain of our example. There are three saddle points
where 12 separatrices start. The importance of the saddles for the standard
analysis is seen by comparing the result inside the rectangle with the result
shown in Figure 4.
4. Application Example
We have applied the local topology extraction to a vortex breakdown simula-
tion. Vortex breakdown is a phenomenon observed in a variety of flows ranging
from tornadoes to wing tip vortices (Lambourne and Bryer, 1961), pipe flows
(Sarpkaya, 1971, Faler and Leibovich, 1977, Leibovich, 1984, Lopez, 1990,
Lopez, 1994) and swirling jets (Billant et aI., 1999). The latter flows are impor-
tant to combustion applications where they create recirculation zones with suf-
ficient residence time for the reactions to approach completion. The example
vector field contains 39909 data points and 79000 triangles. The piecewise lin-
ear interpolation contains 703 simple critical points, creating a complex global
topology. First, we used a rectangle, shown in Figure 7. The data in this rectan-
gle was used to analyze the local topology. We extracted all critical points and
determined all boundary saddles by analyzing the boundary of the rectangle.
This resulted in the topological structure shown in Figure 8. One can see some
of the additional separatrices starting at the boundary saddles; they separate
regions of flow staying inside the boundary from outflow and inflow parts. No
analysis of data outside the rectangle was used. The required computing time
does only depend on the size of the region and is (nearly) independent of the
size of the overall data set.
It is possible to consider multiple regions of interest in the same data set
to be analyzed independently. One may also use arbitrary polygons as bound-
aries. This is demonstrated in our second analysis of the same jet data set for
which we chose three regions, shown in Figure 9. One region covers a part of
the backstream besides the main inflow jet. The second region shows a part
of the rectangle we used before. Neither of these two regions contains critical
points, which makes boundary analysis necessary. The third region shows the
mixing of the jet and the fluid downstream. Figure 10 shows the first two re-
gions in more detail. One can see clearly forward- and backward-facing flow.
Without an analysis of the boundary, one obtains no separatrices due to the
28 THE STATE OF THE ARTIN DATA VISUALIZATION
lack of critical points inside the two regions. The third region is shown in more
detail in Figure 11. Since the analysis is limited to a rather small area, it can
be analyzed quickly. One can depict several separatrices spiraling around crit-
ical points. The critical points inside these areas have Jacobians with complex
conjugate eigenvalues, thus they are spirals; the real parts of the eigenvalues
may have small absolute values, and a stream line in the neighborhood of the
critical points approaches them very slowly.
5. Conclusions
We have presented a method to analyze the local topology of arbitrary re-
gions in 2D vector fields. Our method is based on the idea of extracting the
critical points in the domain and examining the region's boundary. By de-
termining the inflow, outflow, and boundary flow segments one can separate
the domain into regions of topologically uniform flow. We have discussed the
differences to a global topology analysis approach in theory and applications,
demonstrating the relevance of our localized approach when applied to regions
with complicated flow patterns on the boundary. This case is typical of most
interesting regions inside a larger data set.
Another important situation that we have studied is the absence of critical
points in a region that provides interesting structure, like backward-facing flow.
Our algorithm detects these areas and separates them from other parts of the
flow leading to better visualizations of the local flow structure. Since the local
topology analysis does not use any information outside a region of interest,
it is very attractive when analyzing large data sets locally due to the signif-
icant reduction in computing time. Nevertheless, it must be mentioned that
the separatrices in the local topology may differ from global topology, since
they depend solely on the inflow/outflow switches on the boundary. For fur-
ther research, the inclusion of limit cycles in the local topology is an important
issue.
Acknowledgments
This work was supported by the National Science Foundation under contracts ACI 9624034 (CAREER
Award), through the LSSDSV program under contract ACI 9982251, and through the National Partnership
for Advanced Computational Infrastructure (NPACI); the Office of Naval Research under contract NOOOI4-
91-1-0222; the Army Research Office under contract ARO 36598-MA-RIP; the NASA Ames Research
Center through an NRA award under contract NAG2-1216; the Lawrence Livermore National Labora-
tory under ASCI ASAP Level-2 Memorandum Agreement B341818 and under Memorandum Agreement
B503159; the Lawrence Berkeley National Laboratory; the Los Alamos National Laboratory; and the North
Atlantic Treaty Organization (NATO) under contract CRG.91l628. We also acknowledge the support of
ALSTOM Schilling Robotics and SGl. We thank the Visualization and Graphics Research Group at the
Center for Image Processing and Integrated Computing (CIPIC) at the University of California, Davis.
Localizing vectorfield topology 29
Billant, P., Chomaz, J., and Huerre, P. (1999). Experimental Study of Vortex Breakdown in
Swirling Jets. Journal ofFluid Mechanics, 376:183 - 219.
Faler, J. H. and Leibovich, S. (1977). Disrupted States of Vortex Flow and Vortex Breakdown.
Physics ofFluids, 96:1385 -1400.
Globus, A., Levit, C., and Lasinski, T. (1991). A Tool for Visualizing the Topology of Three-
Dimensional Vector Fields. In Nielson, G. M., Rosenblum, L. J., editors, IEEE Visualization
'91, IEEE Computer Society Press, Los Alamitos, CA, pages 33 - 40..
Helman, J. L. and Hesselink, L. (1990). Surface Representations ofTwo- and Three-Dimensional
Fluid Flow Topology. In Nielson, G. M. and Shriver, B., editors, Visualization in scientific
computing, IEEE Computer Society Press, Los Alamitos, CA, pages 6-13.
Lamboume, N. C. and Bryer, D. W. (1961). The Bursting of Leading Edge Vortices: Some
Observations and Discussion of the Phenomenon. Aeronautical Research Council R. & M.,
3282:1- 36.
Leibovich, S. (1984). Vortex Stability and Breakdown: Survey and Extension. AlAA Journal,
22:1192-1206.
Lopez, J. M. (1990). Axisymmetric Vortex Breakdown. part 1. confined Swirling Flow. Journal
ofFluid Mechanics, 221:533 - 552.
Lopez, J. M. (1994). On the Bifurcation Structure of Axisymmetric Vortex Breakdown in a
Constricted Pipe. Physics ofFluids, 6:3683 - 3693.
Sarpkaya, T. (1971). On Stationary and Travelling Vortex Breakdown. Journal of Fluid Me-
chanics, 45:545 - 559.
Scheuermann, G. (1999). Topological Vector Field Visualization with Clifford Algebra. disserta-
tion, Computer Science Department, University of Kaiserslautem, Kaiserslautem, Germany.
Scheuermann, G., Hagen, H., and KrUger, H. (1998). An Interesting Class ofPolynomial Vector
Fields. In Drehlen, M., Lyche, T., and Schumaker, L. L., editors, Mathematical Methodsjor
Curves and Surfaces II, pages 429-436, Nashville.
Tricoche, X., Scheuermann, G., and Hagen, H. (2000). A topology simplification method for 2d
vector fields. In ErtI., T., Hamann, B. and Varshney, A., editors, IEEE Visualization 2000,
IEEE Computer Society Press, Los Alamitos, CA, pages 359 - 366.
30 THE STATE OF THE ARTIN DATA VISUALIZATION
!II
'"
-I>'
...
Figure 1. Regular vertex. Case (I): outflow point; case (2): inflow point; case (3): flow
parallel to the boundary tangent - outflow on both sides of p; case (4) : flow parallel to the
boundary tangent - outflow on the -v(p) side and inflow on the other side.
,AS'
~.(O)
o
Figure 2. Convex vertex. Case (AI): inflow and outflow around p; case (A2): outflow on
both sides of p; case (A3): flow at vertex being parallel to one tangent - outflow around p;
case (A4): boundary flow on one side - outflow on the other side; case (AS): flow at vertex
parallel to one tangent, inflow on one side, and outflow on the other side. Inflow is marked
green, outflow is marked blue, and boundary flow is marked red.
Localizing vectorfield topology 31
1<:)1
Figure 3. Concave vertex. Case eCI): outflow on both sides of p; case (C2): outflow on one
side and inflow on the other side; case (C3): flow parallel to one tangent at vertex p, outflow
on one side, and inflow on the other side; case (C4): flow parallel to one tangent at vertex p
and inflow on both sides; case (CS): boundary flow on one side and inflow on the other side.
Inflow and a-basins are colored green, outflow and w-basins are colored blue, and separatrices
and boundary flow are shown in red color.
32 THE STATE OF THE ARTIN DATA VISUALI7ATION
Figure 4. Vector field containing two sources and two sinks.
Figure 5. Local topology showing interaction of sources and sinks.
Localizing vectorfield topology 33
Figure 6. Global topology derived by considering entire field.
Figure /. Rectangular region in jet data set and result of local topology analysis.
34 THE STATE OF THE ART IN DATA VISUALIZATION
Figure 8. Magnification of result of local topology analysis shown in Figure 7.
Figure 9. Three regions in jet data set and respective results of local topology analysis.
Localizing vectorfield topology 35
Figure 10. Local topology analysis inside two regions without critical point Get data set).
Figure 11. Local topology analysis result of highly complicated region (jet data set).
FEATURE TRACKING
WITH SKELETON GRAPHS
Benjamin Vrolijk
Faculty ofInformation Technology and Systems
Technical University Delft
P.O. Box 356, 2600 Al Delft, The Netherlands
B.Vrolijk@its.tudelft.nl
Freek Reinders
MEDIS medical imaging systems
P.O. BOX 384,2300 Al Leiden, The Netherlands
FReinders@medis.nl
Frits H. Post
Faculty ofInformation Technology and Systems
Technical University Delft
P.O. Box 356, 2600 Al Delft, The Netherlands
F.H.Post@its.tudelft.nl
Abstract
A way to analyse large time-dependent data sets is by visualization of the evo-
lution of features in these data. The process consists of four steps: feature
extraction, feature tracking, event detection, and visualization.
In earlier work, we described the execution of the tracking process by means
ofbasic attributes like position and size, gathered in ellipsoid feature descriptions.
Although these basic attributes are accurate and provide good tracking results,
they provide little shape information about the features. In other work, we pre-
sented a better way to describe the shape of the features by skeleton attributes.
In this paper, we investigate the role that the skeleton graphs can play in feature
tracking and event detection. The extra shape information allows detection of
certain events much more accurately, and also allows detection of new types of
events: changes in the topology of the feature.
Keywords: Data Visualization, Feature Extraction, Feature Tracking, Skeleton, Skeleton
Graph, Graph Matching, Event Detection.
F. H. Post et al. (eds.), Data Visualization
© Kluwer Academic Publishers 2003
38 THE STATE OF THE ARTIN DATA VISUALIZATION
1. Introduction
The problem of analysing very large scientific data sets originated the field
of scientific visualization. The size of data sets has grown rapidly in the past
decade, in particular with data sets generated from simulations of highly dy-
namic phenomena, such as time-dependent flows. Yet many visualization tech-
niques, especially global field visualization techniques such as volume render-
ing or iso-surfaces, do not scale easily to very large data sets, and thus are not
very well suited to the analysis of time-dependent data sets.
One solution to this problem is the approach called feature extraction, in
which interesting phenomena (features) are automatically detected in large
fields, and quantitatively described by computing attribute sets [van Walsum
et aI., 1996]. This results in a quantitative description of the features, which
can be used for visualization and further investigation. Examples of features in
flow data are vortices, shock waves, and recirculation zones. An advantage of
this approach is that we concentrate on the relevant phenomena and the amount
of data to be handled is reduced by a factor of 1000 or more.
Time-dependent data sets are often represented by a number of data fields
(frames), one for each time step. If features are extracted from each frame
separately, a correspondence between features in consecutive frames can be
established, using the attribute sets. We call this process time tracking [Sam-
taney et aI., 1994, Silver and Wang, 1996, Reinders et aI., 1999]. It allows
us to visualize the development of these corresponding features over the total
time interval of a simulation: motion paths, growth and shape changes can be
shown. In these time histories, we can also detect interesting temporal changes
(events), such as the birth of a new feature, the exit of a feature from the do-
main, or events with multiple features, such as splitting into two or more parts,
or merging of multiple features into one [Reinders et al., 2001]. Again, these
events can be quantitatively described.
For time tracking, we have used primary attribute sets of the features: centre
position, volume, size, and orientation [Reinders et aI., 1999]. The determina-
tion of these attributes is usually based on volume integrals of feature objects,
and the accuracy and robustness ofthese attributes has been demonstrated [Rein-
ders et aI., 1998]. The shape of a feature is described by a spatial distribution
function, which gives a good estimate of the overall dimensions and orientation
of a feature, but does not describe the feature's shape in any detail.
For some purposes, the feature shape is important and must be quantified in
more detail. In a previous paper [Reinders et aI., 2000], we have proposed the
use of skeletons and distance transformations for a better quantification of the
shape ofa class offeatures. A simplified skeleton can be represented as a graph,
which can be used in combination with distance transformations to reconstruct
Feature tracking with skeleton graphs 39
the basic 3D shape of a feature, and can also be used as an iconic object for
visualization.
In this paper we will investigate the role that these skeleton graph models can
play in feature tracking and event detection. Generally, the tracking process
will be guided by the primary attributes determined by volume integrals, but
the skeleton graphs will permit detection of certain events with much higher
accuracy. Also, the temporal development of feature shape is quantified in
detail, and new types of events, such as changes in the topology of a feature,
can be detected.
The structure of the paper is as follows. In Section 2, the feature extraction
process is summarized. In Sections 3 and 4, we describe feature tracking and
event detection methods using skeleton graphs. In Section 5 some related work
is discussed. We present some results in Section 6, including a comparison of
integral properties and skeleton-based properties. We will then summarize and
give future research directions in Section 7.
2. Feature extraction
The process of feature extraction can typically be described by the following
four steps:
• data selection or segmentation: the parts of the data set are selected that
are of interest. This can be done in many different ways, depending on
the type of features to be detected. One general technique selects nodes
in a grid by applying multiple thresholds to the data defined at each grid
point, or quantities derived from the data [van Walsum et al., 1996]. In
principle however, any segmentation technique that produces a set of
spatially located or grouped data items can be used.
• clustering: from the data items, coherent groups can be formed by build-
ing clusters from spatially related items. This results in a number of
clusters, which can be treated as distinct objects.
• attribute calculation: for each cluster, a number of descriptive attributes
are calculated, such as centre position, volume or orientation.
• iconic mapping: the attributes of the clusters are mapped to the parame-
ters of parametric icons, which can be easily visualized.
We have often used volume integrals to compute the attributes of the features.
This gives us the volume and the centroid of the features. By computing the
eigenvalues and eigenvectors of the covariance matrix of the point positions,
we can get an estimation of the size and orientation. These attributes can be
used to create an ellipsoid representation of the features, for visualization. In
the rest of this paper, we will also use the terms ellipsoid volume and ellipsoid
40
E
(a)
E
THE STATE OF THE ARTIN DATA VISUALIZATION
c
•
I
I
I
I
I
Id
I
I
I
I
- - - - -' - - - - - ..
~ ~ &
(e)
Figure 1. a) The topological node types. b) Adding a curve node. c) Adding a profile node.
position, when we mean these attributes, computed by volume integrals.
Because the ellipsoid representation does not give a real description ofthe shape
of the feature, we have created another attribute set, to describe the shape in
more detail. An algorithm to create a skeleton graph representation ofa feature
has been developed and is described in detail in [Reinders et aI., 2000].
The algorithm first computes the skeleton of an object using a thinning tech-
nique. This is a topology-preserving transformation, resulting in the central
points of the object. Neighbouring points from this skeleton are connected to
form a graph. Together with the position of each point, the minimum distance
to the surface (distance transformation or DT) is recorded in the graph.
The resulting graph can then be simplified. To describe the topology of
the object, only three types of nodes are required (see Figure Ia): end (E),
junction (J) and loop (L) nodes. End nodes have one edge, junction nodes have
more than two edges and loop nodes have a topological edge to themselves. To
describe the shape of the feature more accurately, two further types of nodes are
introduced. The first is the curve node (see Figure Ib), for describing strongly
curved features more accurately. The second is the profile node (see Figure Ic),
for features where the surface is strongly curved. The numbers of curve and
profile nodes that are added to the skeleton graph description, are dependent on
user-provided tolerances.
The final skeleton graph exactly describes the topology of the feature, and
approximately describes the shape. The surface of the feature can be recon-
structed with the DTs of the graph nodes. By representing the nodes by spheres
with radius DT, and the edges by conical segments, the original surface is ap-
Feature tracking with skeleton graphs 41
proximated. This representation can be used both for visualization and attribute
calculation.
The reconstructed shape is an inscribed object of the original shape, because
the distance used is the minimal distance to the surface. Therefore, the attribute
calculation will be less accurate than the volume integral calculation. We have
performed a number of tests to determine the accuracy of these calculations;
the results of these tests will be described in Section 6.
3. Feature tracking
When features have been extracted in every frame of a time-dependent data
set, still no motion information is available. To obtain this, we have to establish
a frame-to-frame correspondence between features in successive frames. This
is called the correspondence problem [Ballard and Brown, 1982]. There are
several ways to solve this problem [Samtaney et aI., 1994, Silver and Wang,
1996, Reinders et aI., 2001]. Our algorithm is based on the assumption that
features evolve predictably. Once a part of a path of a feature has been found,
we assume we can make a prediction of the path into the next frame. We then
compare the prediction with the real features in that next frame and search for
a match. If one or more matches are found, we add the best match to the end
of the path and continue into the next frame. For the prediction we simply use
linear extrapolation. We assume for example, that if a feature moves a distance
d from frame t - 1 to frame t, it will move the same distance from frame t
to frame t + 1. A similar assumption is made for volume, orientation, etc.
For the matching of a prediction with a feature, we need a way to determine a
correspondence between two features.
We use functions that compute a correspondence factor for each type of at-
tribute. For the volume integral attributes, for instance, we have correspondence
functions for the position and the volume (see Table 1).
Correspondence criterion
Position
Volume
Correspondence Junction Correspondence Jactor
Table 1. Examples ofcorrespondence functions for feature tracking. P is position, V is volume,
T is tolerance.
When using the skeleton graph representations of features for tracking, we
can use correspondence functions based on the topology ofthe skeleton graphs.
For this, we could use, for example, a tolerant graph matching algorithm, as
described in [Messmer and Bunke, 1998b]. However, because of the high time
42 THE STATE OF THE ARTIN DATA VISUALIZATION
and/or space complexity of these algorithms, we have created our own, more
efficient special-purpose graph comparison algorithm.
This algorithm chooses one node in the first graph and compares it with
all nodes of the same type in the second graph. In the recursive function that
compares both nodes, two arrays are used to keep track of the marked nodes in
both graphs. If the number of edges from both nodes is equal, and the number
of neighbouring marked nodes is equal, then both nodes are marked. Next, an
unmarked neighbouring node in the first graph is chosen and compared with all
unmarked neighbouring nodes in the second graph. This process is repeated
until either all nodes in both graphs are marked or no more correspondences
are found. In the first case, the two graphs are topologically equivalent, in the
second case, the topologies differ.
To make the comparison algorithm more efficient, we have created two more
functions that are run before the recursive algorithm. The first function simply
counts the numberofedges and topological nodes ofeach type in both graphs. If
these numbers do not correspond, the graphs will certainly not be topologically
equivalent. However, if the numbers are equal, further testing is necessary.
The second function counts the types ofthe nodes each node is connected to,
or equivalently, counts the types of connections (end-end, end-junction, etc.)
in both graphs. Again, if the numbers do not correspond, the two graphs have
different topologies. Otherwise, the recursive comparison algorithm is run to
give the final answer.
Note that we only test the topology of the skeleton graphs, not the geometry.
Because the geometry ofthe skeleton graphs is based on tolerances provided by
the user during the feature extraction process, it is possible that, for example, the
number of curve nodes changes, while the shape of the feature hardly changes.
The topology of a skeleton graph is more stable than the geometry, therefore
we have decided to use only the topological information of the skeleton graphs
in these correspondence functions.
Note also, that it is possible that the shape of a feature changes significantly,
although the topology of the feature remains the same. This is the case, for
instance, when ajunction disappears on one side and at the same time ajunction
appears on the other side. We do not detect these events, because for that we
need a one-to-one mapping of the nodes and edges of two skeleton graphs.
Because features evolve ( grow/shrink and move) anyway, it is very hard to
compute such a correspondence.
We have made one topology correspondence function that returns a boolean:
there is no correspondence if the topology changes. A second correspondence
function allows a certain number of topological changes, such as the addition
of loops or edges.
Feature tracking with skeleton graphs 43
Because in our test application 1 sometimes the topology of the features
changes more than once within a few frames, we have decided not to use the
topology information for feature tracking.
We have found that using only the global attributes ofthe features in searching
for continuing paths works very well. Therefore, we have decided also to use
the position and volume correspondence functions from Table 1, when using
skeleton graph descriptions of features for time tracking. Thus, we have to
compute the position and the volume of a skeleton graph.
Furthermore, we can compute another global attribute ofa skeleton graph: its
total length. We compute the total length of a skeleton by adding the individual
lengths of all edges of the graph. The correspondence function for the length
of a skeleton graph is comparable to the function for the volume.
The volume of a skeleton graph is computed by adding the volumes of all
conical segments. The volume ofone segment is computed by using the formula
for the volume of a conical frustum:
I 2 2
V = 3'll'h(T! +TIT2 +T2 ), (1)
with h the length of the edge and TI and T2 the DTs of the end nodes of the
edge. To make the computation of the total volume more accurate, we add the
volume of half a sphere for each end node of the skeleton.
The position of a skeleton graph is defined to be the centre of gravity (COG)
of the object, assuming a uniform density throughout the object. We can com-
pute this by calculating the weighted average of the centres of gravity of the
individual segments, using the segment volumes as weights. The COG of a
conical frustum is located at
COG = PI + h(P2 - pI),
with PI and P2 the positions of the end nodes and
~ ~4T~ +4T~ - TI
h = -'-.!.-----
(2)
(3)
the relative position of the COG on the edge from Pl. For an edge with TI = T2,
that is a cylinder-shaped edge, the COG is located exactly halfway, so h = 0.5.
4. Event detection
When the continuing paths have been found, we can search for events in the
evolution of the features. For instance, when a path ends, we would like to
1We use a 91 frame data set with turbulent vortex shUctures, obtained from a fluid dynamics simulation.
Data courtesy D. Silver and X. Wang of Rutgers University.
Another Random Document on
Scribd Without Any Related Topics
have been far more impatient with me, and might have made my life
miserable.
“God gave me a dull mind and a slow tongue; it took me a long
time to grasp anything, and no one cared about the subjects that
interested me. Beatrice... I wish now you had told me how I bored
our friends; it would have been a kindness; but never mind that
now; you did not like to give me pain.
“What troubles me most is that all these years you should have
been tied to a very tiresome fellow,” and Marsden made some poor
attempt at a smile. “Had I thought of what was before you, I would
never have asked you to marry me.
“Don't cry, dear; I did not wish to hurt you. I wanted to ask your
pardon for... all that martyrdom, and... to thank you for... being my
wife; and there's something else.
“You see when I get well and am not lying in bed here, maybe I
could not tell you, so let me explain everything now, and then we
need not speak about such things again.
“Perhaps you thought me too economical, but I was saving for a
purpose. Your portion has not brought quite so much as it did, and I
wished to make it up to you, and now you can have your six
hundred a year as before; if this illness had gone against me, you
would have been quite comfortable—in money, I mean, dear.
“No, I insist on your going to Lady Gloucester's; the change will do
you good, and I'll lie here digesting the Reformation, you know,” and
he smiled, better this time, quite creditably, in fact “Will you give me
a kiss, just to keep till we meet again?”
When the nurse came down at four to take charge, she was
horrified to find her patient alone, and in the death agony, but
conscious and able to speak.
“Don't ring... nor send for my wife... I sent... her away knowing
the end was near... made her go, in fact... against her will.”
The nurse gave him brandy, and he became stronger for a minute.
“She has had a great deal to bear with me, and I... did not wish
her to see death. My manner has been always so wearisome... I
hoped that... nobody would be here. You are very kind, nurse; no
more, if you please.
“Would it trouble you... to hold my hand, nurse? It's a little
lonely... I am not afraid... a wayfaring man though a fool... not err
therein...”
He was not nearly so tedious with his dying as he had been with
his living; very shortly afterwards Thomas Marsden had done with
statistics for ever.
IV
Three days later Leslie came home from the city with tidings on
his face, and he told them to his wife when they were alone that
night “Marsden's lawyer made an appointment after the funeral, and
I had an hour with him. He has asked me to be a trustee with
himself in Mrs. Marsden's settlement.”
“I'm so glad; you must accept, for it will be such a comfort to poor
Beatrice; but I thought Godfrey was her sole trustee.”
“So he was,” said Leslie grimly, “more's the pity, and he embezzled
every penny of the funds—gambled them away in card-playing
and... other ways.”
“Godfrey Harrison, Beatrice's brother?”
“Yes, her much-admired, accomplished, ill-used brother, the victim
of her husband's stinginess.”
“If that be true, then Godfrey is simply a...”
“You mean an unmitigated scoundrel. Quite so, Florence, and a
number of other words we won't go over. I tell you,” and Leslie
sprang to his feet, “there is some use in swearing; if it had not been
for one or two expressions that came to my memory suddenly to-
day, I should have been ill. Curious to say, the lawyer seemed to
enjoy them as much as myself, so it must be a bad case.”
“But I don't understand—if Godfrey spent Trixy's money, how is
there anything to manage? Did he pay it back?”
“No, he did not, and could not; he has not enough brains to earn
eighteen pence except by cheating, and if by any chance he came
into a fortune, would grudge his sister a pound.”
“Then...?”
“Don't you begin to catch a glimpse of the facts? Why, Marsden
toiled and scraped, and in the end, so the doctors say, killed himself
to replace the money, and he had just succeeded before his death.”
“How good of him! but I don't see the necessity of all this secrecy
on his part, and all those stories about low interest that he told
Trixy.”
“There was no necessity; if it had been some of us, we would
have let Mrs. Marsden know what kind of brother she had, and
ordered him out of the country on threat of jail.
“It was Marsden's foolishness, let us call it, to spare his wife the
disgrace of her idol and the loss of his company. So her husband
was despised beside this precious rascal every day.”
“Trixy will get a terrible shock when she is told; it would almost
have been kinder to let her know the truth before he died.”
“Mrs. Marsden is never to know,” said Leslie; “that was his wish;
she's just to be informed that new trustees have been appointed,
and we are to take care that she does not waste her income on the
fellow.
“People will send letters of condolence to Mrs. Marsden, but they
will say at afternoon teas that it must be a great relief to her, and
that it's quite beautiful to see her sorrow. In two years she will
marry some well-dressed fool, and they will live on Marsden's
money,” and Leslie's voice had an unusual bitterness.
“Did you ever hear of another case like this, John?”
“Never; when old Parchment described Marsden giving him the
instructions, he stopped suddenly.
“'Marsden,' he said, 'was the biggest fool I ever came across in the
course of forty-two years' practice,' and he went over to the
window.”
“And you?”
“I went to the fireplace; we were both so disgusted with the man
that we couldn't speak for five minutes.”
After a short while Mrs. Leslie said, “It appears to me that this
slow, uninteresting man, whom every one counted a bore, was in his
own way... almost a hero.”
“Or altogether,” replied John Leslie.
H
RIGHTEOUS OVER MUCH
I
ow do you do, Crashaw? didn't know you condescended to
conversaziones at the Town Hall, at least when there is no
dancing. Their Worships will be satisfied this evening, for the
whole world and his wife seem to be here, and some people
that have never been in the world before, one would judge.”
“There is just one person I wish particularly to see, and I can't
find her; that is Arkwright's young wife. I passed the old man
himself a minute ago, conversing with Peterson, and lecturing on the
effect of the American tariff on wool. Has he left her at home, Jack,
to keep her out of harm and to tantalise the public?”
“Not he. Jacob is quite proud of her, to do him justice, and
worships the ground on which she treads, although I doubt whether
she knows that or cares. Mrs. Arkwright is very beautiful In my
humble judgment, but there is a wide gulf between twenty-one and
seventy. Besides, she has a temper, and no sympathy with his
religious notions. When December weds May, it's bound to be either
a comedy or a tragedy, and this is half and between.”
“When you have quite finished your interesting moral reflections,
Jack, and can attend to practical detail, could you do me the
pleasure of pointing Mrs. Arkwright out to me, and, as you seem to
have seen a good deal of her, introducing your unworthy servant? I'll
be able then to judge for myself. We are obliged to Arkwright for
creating a piquant situation.”
“Come to the next room, where the band is playing; Mrs.
Arkwright was there ten minutes ago. But I don't know whether I
can intrude on her at the present moment, even although provided
with so good-looking and well-dressed an excuse. Yes; there,
Crashaw, in the alcove, talking to a parson, that is Jacob's wife. Was
I right?”
“Your taste, Jack, is perfect; but, indeed, a man who admires Mrs.
Arkwright deserves no credit; it is inevitable. There is prettiness, and
there is sweetness, and there is taking-ness, and they are very well,
but this is on another level.”
“I thought you would be astonished, and am pleased to notice
that even so blasé a critic of womankind can grow enthusiastic on
occasion. Isn't that a proud head?”
“Why, Jack, that woman ought to have been a duchess, and a
leader of society in town, instead of Mrs. Jacob Arkwright, wife of a
self-made wool-spinner and a deacon. Her face is the most complete
piece of Grecian beauty I ever saw—nose, eyes, chin, mouth,
perfect; forehead perhaps the slightest bit high—a Greek would have
worn a ribbon—and that glorious hair, brown shot with gold.”
“She is certainly looking splendid to-night Do you notice how she
has put the other women to confusion?”
“Simply a goddess among a lot of peasants. I say, Jack, how in
the world did that girl, with such a face and such an air, ever marry
Arkwright? Where was she hidden away? Had she no opportunity?
Talk about waste, this is an absolute sin. Do you know her history?”
“Lived with her mother, and got her living by teaching. Arkwright,
who has all his life been busy with wool and religious affairs, saw
her in chapel, and remembered he was human. Fell in love with her
on first sight, having lived scatheless unto threescore years and ten,
and got a fellow-deacon to negotiate the affair; at least, so it is
reported.”
“Most likely, I should say; but, Jack, what an abandoned criminal
that mother of hers must have been, and what did she herself do
this thing for? She has a will of her own, or else I do not know a
woman's face.”
“Oh, the old story. Her mother was proud and poor, and
considered Arkwright an excellent suitor. Mrs. Arkwright is not much
troubled about religion, and I fancy has a very different idea of
things from her husband, but she had the chance of a handsome
provision for herself and her mother, and she seized it There could
be no romance; but can you blame the old lady, Crashaw, urging
such a marriage, or the daughter escaping from the dreary
governess life?”
“No, I suppose not. The girl took the veil, and obtained a
settlement at the same time, after a sound Protestant fashion; but it
does seem a crime against nature to sacrifice a beautiful young
woman to a hard, bloodless old Puritan like Arkwright, who is, I
grant you, very able in wool, and perfectly straight in character, but
who is perfectly uncultured and hopelessly bigoted. What a life of
dreariness she must lead in the Arkwright circle!”
“Well, of course she can't attend concerts, nor dance, nor hunt,
nor go into society, but she has a good home, and a carriage, and as
much money as she can spend. I don't suppose that she cares for
Jacob, but she does her duty as a wife, and does not seem
unhappy.”
“Certainly Mrs. Arkwright is not unhappy this evening with her
present companion. I will hazard the guess, Jack, without any
reflection on her wifely character, that she never looked at her
worthy, but not very attractive, husband with the same interest
which she is bestowing on that handsome parson. Who is he, Jack?”
“Egerton's his name, and he's Arkwright's minister—a
Congregationalism or Baptist; I can never remember the difference.
He is a very able fellow, they say, and a rattling good preacher, quite
broad and liberal in his views, but a perfect ascetic in his life. He
must be very much in Mrs. Arkwright's company, and he's certainly
the decentest man she knows.”
“Arkwright is about seventy, and is not so strong as he looks, Jack;
his wife will have time to console herself, and her second husband
will be a very lucky man, for he will have a fortune and her heart.”
II
“You have come quickly, Mr. Egerton, and that was well done,”
said Jacob Arkwright, looking very white and worn, propped up with
pillows. “I have much to say, and I'll take a sup o' brandy; them that
never touches drink when they're well get the good when they're ill.
“That gives me the strength I need for the time, and ma work is
nearly done. Don't go away, Laura; I want you to hear what I say to
the pastor.
“The doctor says 'at ma days are few, mayhap only to-morrow,
and it's best to speak when a man's head is clear, and I thank God
mine is that, though my body be weakened by this sickness.”
His wife stood on one side of the bed, now and then rearranging
the pillows at his back and bathing his forehead with vinegar—for
scent he would not have—and Egerton stood on the other, refusing
to sit down while she stood, and watching her strong white hands at
their service, but only once did he look her straight in the face.
“You're young, Pastor—thirty, did ye say?—and I'm owd, seventy-
two this month, and I havena' known you long, but there's no mon
I've liked better or could trust more.” And he looked steadily at
Egerton with a certain softening of expression.
“You've been very kind to me and to the chapel, Mr. Arkwright,
and I hope it may be God's will to spare you and raise you up again,”
and although the words were formal, the accent was tender and
moving.
“No, no, lad; our times are in His hand, and I have received the
summons, and so we 'ill go to business. And first about ma affairs. I
wish ye to understand everything, that ye may be able to do your
duty by ma widow.”
Egerton was conscious that Mrs. Arkwright straightened herself,
and could feel the silence in the room; but the dying man was not
one to appreciate an atmosphere.
“It may be that I was too owd for marrying, and ma ways too old-
fashioned. Ma house has no been very bright for a young wife, and
ma conscience did not allow me liberty in worldly amusements. But
according to my nature I can say before God that I loved ye, Laura,
and have tried to do ma part by ye.”
“You married me a poor girl, and have been most... kind to me,
Jacob. Why speak of such things?” and her voice was proud and
pained.
“You have been a faithful wife to me,” he went on, as one fulfilling
a plan, “and have put up with my... peculiarities—for I know you do
not think wi' me in things, and do not like some of the men 'at came
to the house. Oh, I said nowt, but I saw aal.”
Mrs. Arkwright laid her hand on her husband's, and it occurred to
Egerton from a slight flush on his face that she had never done this
before.
“Ma will has been made for a year”—it was plain that Mr.
Arkwright was to go on to the end, and Egerton could not have lifted
his eyes for a ransom—“and I have left aal to my wife without any
condition, with just one legacy. It is to you, Egerton, and I hope
you'ill not refuse it—just something to remind you of me, and... get
you books.”
“It was very... good of you, sir, and I am most... grateful, but I...
really can't accept your kindness. It is not likely that I will ever
marry, and I've got enough for myself.”
As he spoke, Mrs. Arkwright shook up the pillows hastily, and went
to a side table for a glass.
“Well, if you will not, then there's an end of it; but you will grant
me another favour which may be harder,” and for a minute Arkwright
seemed to hesitate.
“Ma wife will be left young and rich, and although I have never
said it to you, ma lass, she is... beautiful.”
“Jacob, this is not seemly.” Her voice was vibrant with passion.
“Blame me not for saying this once, and if another be present, he
is our friend, and I am coming to my point; the brandy again, and I'll
soon be done.
“You have no brother, and I have no person of my blood to guide
you, ma lass; ye might be persecuted by men 'at would bring you
nowt but trouble and vexation of heart You need an honest man to
be your guardian and give you advice.
“Ye may never want to marry again, for I doubt ye have had little
joy these years, or again ye may, to taste some joy, and I would
count it unjust to hinder you—peace, lass, till I be done; I was ever
rough and plain—and some one must see that your husband be a
right mon.
“So I turned it over in ma mind, and I sought for a friend 'at was
sound o' heart and faithful. This speaking is hard on me, but it 'ill
soon be done.” And as Mrs. Arkwright stooped to give him brandy
once more, Egerton saw that her cheeks were burning.
“An older mon might have been better, but ye're old for your
years, Pastor, and have parted wi' the foolishness o' youth. You have
some notions I don't hold with, for I'm the owd sort—believe and be
saved, believe not and be damned—but ye're no a mon to say yea
and do nay. Naa, naa, I have seen more than I said; and though
some 'at came to the house had the true doctrine, they were shoddy
stuff.
“George Egerton, as I have done good to you and not ill these
years, will ye count Laura Arkwright as your sister, and do to her a
brother's part, as ye will answer to God at the laast day?”
The wind lifted the blind and rustled in the curtains; the dying
man breathed heavily, and waited for an answer. Egerton looked
across the bed, but Mrs. Arkwright had withdrawn behind the
curtain. Arkwright's eyes met the minister's with an earnest,
searching glance.
“I will be as a brother to your wife while I live.”
As he spoke, Arkwright grasped his hand and gave a sigh of
content; but when Egerton left the room, Laura refused to touch his
hand, and her face was blazing with anger.
III
“You have been very generous to the chapel, and we thank you
very much for keeping up all Mr. Arkwright's subscriptions those
three years. The work of God would have been much crippled had it
not been for your liberality.”
“Do you know, Mr. Egerton, that when you talk in that grave,
approving fashion, as if I were one of your devout women like poor
Mrs. Tootle, who is really a good creature, although her husband is a
sanctimonious idiot, I feel a perfect hypocrite.”
“Why do you always depreciate yourself...”
“Do not interrupt me, for I am determined to settle this matter
once for all, and not walk about in a vain show, as if I were a saint
You think me good, and so do the chapel people, I suppose, because
I give to foreign missions and Bible-women, and go to the prayer-
meeting, and attend the special meetings. Do you know why I do
those things?”
“Yes, I think so,” said the minister; “but I will hear your reason.”
“Because Mr. Arkwright believed in missions and evangelists, and
he was... a better husband to me than I was wife to him, and
because it would be dishonourable not to use his money for the
objects he approved.”
“And the services? Is that the reason you are always present, and
set such a good example?” And it was plain the minister did not take
Mrs. Arkwright at her value of herself.
“Oh, this is because... because...”
“Yes?” And Mr. Egerton smiled as one who is giving checkmate.
“Because you were Jacob's friend, and the only man he... loved,
and because, although we have quarrelled several times, and I have
been very rude to you once or twice, still”—and a smile brought Mrs.
Arkwright's face to perfection—“we are friends also.”
“You have been... angry with me,” said Egerton, “when I could not
understand the reason, but I never doubted your friendship. If I
were in serious trouble, I would come to you rather than to any
man.”
“Would you really?” Then her tone changed.
“I don't believe you, for you would go to some snuffy, maundering
old minister.”
“And you are good,” he insisted, taking no notice of her petulance.
“You are honest, and brave, and high-minded, and loyal, and...”
“Pious, with a gift of prayer, you had better add. How blind you
are, for all your knowledge and... other qualities. You forgot to add
sweet-tempered; but perhaps you were coming to that.”
“No, I would not say that, and I am rather glad you are not
gentle,”—the minister was very bold,—“for you would not be...
yourself.”
“You had your suspicions, then, and are not sure that I am ready
for canonising? Do you know I feel immensely relieved; suppose we
celebrate this confession by tea? Would you ring the bell, Mr.
Egerton?”
“There is something I want to talk about, and as it's rather
important, would you mind, Mrs. Arkwright, giving me a few minutes
first? Tea is rather distracting.”
“Composing, I find it—but as you please; is it the District Visitors,
or the Nurses' Home, or the Children's Holiday, and is it money?”
Mrs. Arkwright for some reason was very gracious.
“No, it has nothing to do with the chapel. I wish to speak about...
yourself.”
“Yes?” and she looked curiously at him.
“You remember that day when Mr. Arkwright committed you to my
care, and I gave my word to..
“Do your best to look after a very troublesome woman,” Mrs.
Arkwright interposed hurriedly; “it was a... risky task, and I thought
you were far too hasty, and just a little presumptuous, in
undertaking it, but you've been a very lenient guardian for your age.
Have I done anything wrong?”
“No, and you could not at any time in my eyes,”—Mrs. Arkwright
made as though she would curtsey,—“but others might do wrong to
you, and I have been anxious for some time.
“Mr. Arkwright was afraid lest some unworthy man should admire
you or desire your wealth, and... marry you, and your life be
miserable. And he wished me to save you from this, and I promised
to do my best.”
“Well?” and her voice had begun to freeze. “I remember all that.”
“It is difficult to speak about such things, but you know that I...
would do anything to save you pain....”
“Go on,” and now her eyes were fixed on the minister.
“It came to my ears and I saw for myself that one whom I knew
slightly and did not like was paying you attentions, and it might be,
as I also heard, was favoured by you. So it seemed my duty to make
enquiries about Mr. Crashaw.”
“And?”
“There is nothing against his character, and I have heard much
good of him—that he has cultured tastes and is very well liked by
those who know him; personally we could never be friends, for
various reasons, but he... is not unworthy to be the husband of... a
good woman. That is all I have to say”; and the saying of it was
plainly very hard to the minister.
“You recommend me to marry Mr. Crashaw, if that gentleman
should do me the honour to ask my hand, or do you propose to
suggest this step to him, so as to complete your duty as guardian?”
Mrs. Arkwright was now standing and regarding Egerton with fierce
scorn.
“My information seemed to me reliable”—he was also standing,
white and pained—“and I thought it would help you in that case to
know what I have told you, when you came to decide.”
“If I knew who told you such falsehoods, I would never speak to
them again, and I would make them suffer for their words. Mr.
Crashaw! and it was to that cynical, worldly, supercilious tailor's
block you were to marry me. What ill have I done you?”
“God knows I did not desire.... I mean... do you not see that I
tried to do what was right at a cost?... Why be so angry with me?”
“Because I do not really care what any person in this town or all
Yorkshire says about me, but I do care and cannot endure that you
should turn against me, and be content to see me Crashaw's wife or
any other man's.” And she drove the minister across the room in her
wrath—he had never seen her so beautiful—till he stood with his
back to the door, and she before him as a lioness robbed of her
cubs.
“It has been my mistake, for I understand not women,” he said,
with proud humility. “I beg your pardon, and am more than ever...
your servant.”
She looked at him stormily for ten seconds; then she turned away.
“If that is all you have to say, you need not come again to this
house.”
IV
“You will excuse me sending a verbal message by the doctor, for,
as you see, I am past writing, and... the time is short I wanted to
speak with you, Mrs. Arkwright, once before... I died.” And Egerton
thought of the day she had stood by her husband's deathbed as now
she stood by his, only that the nurse had left the room and there
was no third person to be an embarrassment “Do not suppose I
forget your words to me the last time we met in private,” he
continued, as she did not speak nor look at him, beyond one swift
glance as she came into the room; “and believe me, I would not
have forced myself on you, nor would I have asked this favour, had
it not been that... I have something of which I must deliver my soul.”
“You are not dying; you were a strong man, and a few days'
illness couldn't... be fatal,” she burst out, and it seemed as if Mrs.
Arkwright for once was going to lose control and fall a-weeping.
Then she mastered herself, and said almost coldly, “Had I known
you were so ill, I would have called to inquire; but nothing was said
of pneumonia, only a bad cold.”
“You forgive me, then, that ill-judged interference, Mrs. Arkwright,
and anything else in which I have offended you or failed in... my
brother's part?”
“Do not speak like that to me unless you wish to take revenge; it
is I who ask your pardon for my evil temper and insolence that day,
and other times; but you are too... good, else you would have
understood.”
“You did not, then, hate me, as I supposed?” and his voice was
strained with eagerness.
“When you were prepared to approve my engagement to Mr.
Crashaw? Yes, I did, and I could have struck you as you bore
witness to his character—whom you detested. Conscientious and
unselfish... on your part, very. And yet at the same time I... did not
hate you; I could have... you are a dull man, Mr. Egerton, and I am
not a saint. Is it milk you drink?” And when she raised his head, her
hands lingered as they had not done before on her husband's.
“Are you really dying?” She sat down and looked at him, her head
between her hands. “You and I are, at least, able to face the
situation.”
“Yes, without doubt; but I am not a martyr to overwork, or
anything else; my death is not a sentimental tragedy; do not let any
one speak of me in that fashion: I simply caught a cold and did not
take care; it's quite commonplace.” When he smiled his face was at
its best, the dark blue eyes having a roguish look as of a boy.
Mrs. Arkwright leant back on her chair and bit her lower lip.
“This is good-bye, then, and our friendship—six years long, isn't
it?—is over. Had I known it was to be so short—well, we had not
quarrelled.”
“Not over,” and he looked wistfully at her; “this life does not end
all.”
“Ah, you have the old romantic faith, and one would like to share
it, but no one knows; this life is the only certainty.”
“In a few hours,” he went on, “I shall know, and I expect to see
my friend Jacob Arkwright, whom I loved, although we only knew
one another for three years, and he... will ask for you.” Mrs.
Arkwright regarded Egerton with amazement.
“He will ask how I kept my trust, and I... will be ashamed, unless
you hear my confession and forgive me. For I... have sinned against
you and your husband.”
“In what?” she asked, with a hard voice.
“God knows that I had no thought of you he might not have read
while he was here. And afterwards for a year I was in heart your
brother; and then—oh, how can I say it and look you in the face,
who thought me a good and faithful minister of Christ?” and his eyes
were large with pain and sorrow.
“Say it,” she whispered, “say it plain; you must,” and she stretched
out her hand in commandment.
“I loved you as... a man loves a woman whom he would make his
wife, till it came to pass that I made excuses to visit you, till I
watched you on the street, till I longed for the touch of your hand,
till I... oh, the sin and shame—thought of you in the service and... at
my prayers; yet I had been left your guardian and had promised to
be as a brother to you; besides, nor was this the least of my shame,
you were rich.”
“And now?” She had risen to her feet “I have finally overcome, but
only within these few months, and my heart is at last single. You are
to me again my friend's wife, and I shall meet him... in peace, if you
forgive me.”
For a few seconds nothing was heard but his rapid breathing, and
then she spoke with low, passionate voice.
“Your love needs no forgiveness; your silence... I can never
forgive.”
He lived for two hours, and he spoke twice. Once he thanked his
nurse for her attentions, and just before he passed away she caught
the words, “through much tribulation... enter the Kingdom... God.”
O
A PROBATIONER
ne winter I forsook the cottage at Drumtochty, in spite of the
pure white snow and the snell, bracing wind from Ben
Urtach, and took rooms in Edinburgh. It was a poor
exchange, for the talk of professors and advocates, although
good enough in its way, was not to be compared with the wisdom of
James Soutar; but there were more books in Edinburgh than in the
Glen, and it was there that I met my probationer. From time to time
we passed upon the stair, when he would shrink into a landing and
apologise for his obstruction, and if in sheer forgetfulness I said
“Fine day,” with the rain beating on the windows, he nervously
agreed. With his suspicion of clerical attire, and his deferential
manner, he suggested some helot of the ecclesiastical world, whose
chiefs live in purple and fine linen, and whose subordinates share
with tramway men and sempstresses the honour of working harder
and receiving less pay than any other body in the commonwealth. By
his step I had identified him as the tenant of a single room above
my sitting-room, and one wondered how any man could move so
little and so gently. If he shifted a chair, it was by stealth, and if in
poking his fire a coal dropped on the hearth, he abandoned the
audacious attempt.
One grew so accustomed to these mouse-like movements that it
came as a shock when my neighbour burst into activity. It was on a
Friday afternoon that he seemed to be rearranging his furniture so
as to leave a clear passage from end to end of the room, and then,
after he had adjusted the chairs and table to his satisfaction, he
began a wonderful exercise. Sometimes he would pace swiftly
backwards and forwards with a murmuring sound as one repeating
passages by rote, with occasional sudden pauses, when he refreshed
his memory from some quarter. Sometimes he stood before the table
and spoke aloud, rising to a pitch, when one could catch a word or
two, and then he would strike a book, quite fiercely for him, and
once or twice he stamped his foot almost as hard as a child could.
After this outbreak he would rest a while, and then begin again on
the lower key, and one knew when he reached the height by the
refrain, “Abana and Pharpar, rivers of Damascus.” It was an amazing
development, and stimulated thought.
“No,” explained our excellent landlady, “he's no daft, though ye
micht think sae. He's a minister without a kirk, an' he's juist learnin'
his sermon; but, Losh keep us, he's by ordinar' the day.
“He's my cousin's son, ye see”—and Mrs. Macfarlane settled to
historical detail—“an' his mother's a weedow. She focht to get him
through St. Andrew's, an' hoo she managed passes me. Noo he's
what is called a probationer, an', eh, but he earns his livin' hard.
“His business,” continued Mrs. Macfarlane, “is to tak' the pulpit
when a minister is awa' at a Sacrament or on his holiday, and any
Sabbath he micht be at Peterhead and the next at Wigtown. He gets
his orders on Friday, an' he sets aff wi' his bit bag on Saturday, an' a
weary body he is on Monday nicht An' it's little he maks for a' he
does, bare twenty shillin' a week clear; but naebody can stand this
colie-shangie, (disturbance).” For above the landlady's exposition
rose the probationer's voice: “Abana and Pharpar, rivers of
Damascus.”
What she said to her cousin once removed I know not, but it was
not in vain, for in the evening this was brought by the servant:—
“Dear Sir,—
“It affords me sincere regret to learn that you have been disturbed
in the midst of your literary avocations by sounds and movements
emanating from my room. They are unfortunately and unavoidably
connected with a new method of professional work which I have
been advised to adopt by experienced friends. It would, however, be
unrighteous that one man should hinder another in his daily labour,
and I would be greatly obliged if you could indicate any time of
absence during which I might be free to speak aloud and move with
energy in my chamber without offence. Apologising for my unwitting
annoyance,
“I am,
“Yours respectfully,
“Hiram Clunas.”
It was written on poor paper and a single sheet, but the
handwriting was that of a scholar, a man accustomed to form
Hebrew and Greek characters, and the very flavour of pedantry was
attractive, so that one wanted to know the writer, and I seized the
excuse of a personal answer.
He was quite unprepared for my coming, and upset a Hebrew
lexicon and four German books on the Prophets before he could get
a chair in his single room below the slates; nor had he any small talk
to offer, but he was ready enough to speak about his own work, and
seemed anxious to explain his recent departure. It also occurred to
me that he wanted my judgment.
“My work, let me explain,” he said, hesitatingly, “is not pastoral
or... devoted to a particular sphere, since my gifts have not yet...
commended themselves to a congregation after such a fashion that
they were inclined to... in short, wished to have me as their minister.
Mine is a vagum ministerium. I am what is called a probationer, that
is, I have been duly educated in profane and sacred learning for the
holy ministry, and have passed certain examinations... without
discredit.”
“Of that I am sure,” I interpolated with sincerity, whereat the
probationer ought to have bowed and replied, “It is very good of you
to say so,” but as it was he only blushed and looked as if he had
been caught boasting.
“And then?” I suggested.
“It remains to discover whether I am... fit for the practical work of
my calling—if it be, indeed, I am called at all.. And here the little
man came to a halt.
“You are examined again,” I inquired, tentatively, “or placed under
a chief for a little?”
“Well, no, although the latter would be an excellent way—but it is
not for me to criticise the rules of my Church; if any congregation
has lost its minister, then such as I, that is, persons in a state of
probation, are sent each Sabbath to... preach, and then the people
choose the one who... And again Mr. Clunas came to a stand for
want of fitting words.
“Who comes out first in the preaching competition,” I added, and
in an instant was sorry.
“It would ill become me to put the matter... in such a form, and if
I have done so it has been an inadvertence, and indeed I did not
mean to complain, but rather to explain the reason of... the noise.”
“Please tell me whatever you please, but it was not noise, for I
heard some words...
“The rivers of Damascus? I feared so, sir; that was the climax or
point of repetition—but I will relate the matter in order, with your
permission.
“It has been my habit, after I have duly examined a passage in
the original language and the light of competent scholars, and
verified its lessons by my own reason and conscience—collected the
raw material, if I may so say—to commit the same to writing
according to my ability, using language that can be understood of
the people, and yet conforming as far as may be to the Elizabethan
standard.”
In my opinion, I indicated, he had done well. “I judged that I
would have your approval so far, but hereafter comes in a grave
question of expediency, on which I should like your mind as a
neutral person and one given to literary pursuits. My habit is further
to read to the people what I have written in a clear voice, and with
such animation as is natural to me, in the faith that whatsoever may
have been given me by the Spirit of Truth may be witnessed to the
hearers by the same Spirit.”
This appeared to me a very reasonable method and a just hope.
“Others, however, acting according to their nature, commit their
message to memory, and deliver it to the people with many lively
and engaging gestures, which pleases the people and wins their
hearts.”
“And so the groundlings prefer the windbags,” I interrupted, “and
elect them to be their minister.”
“It is not so that I wished you to infer,” and the probationer's voice
was full of reproof, “for I trust my desire is not to obtain a church,
but the confirmation of my calling through the voice of the people;
yet who knoweth his heart?” And the probationer was much
distressed.
It was only my foolish thought, I hastened to explain, and
besought him to continue.
“A friend of... much shrewdness and, I am sure, of good intention,
has spoken to me at length on my... want of favour with the people,
and has pointed out that the Word must be placed before them after
a winsome fashion.”
“And so?”
“He urged me to choose texts which could be frequently repeated
with effect, and so lodge their idea in the mind of the people, and
that I should not use any manuscript, but should employ certain arts
of oratory, such as beginning low and raising the voice up to a
climax where it would be good to repeat the text with emphasis.
“As an example and... inducement he dwelt upon the case of one
probationer who had taken for his text, 'And there shall be no more
sea,' whereon he composed a single sermon, to which he devoted
much pains. This he delivered daily for some hours in his chamber,
and at the end of each paragraph said in a loud voice, 'And there
shall be no more sea.' He was elected to three churches within a
short space,” concluded Mr. Clunas.
“You have therefore thought it desirable to amend your habit.”
“Well, so far,” and the probationer was much embarrassed, “it was
impossible for me to handle what my adviser called 'repeaters,' such
as that I have mentioned, for my mind does not incline to them; but
as I had been labouring the tendency to prefer meretricious and
sensational religion to that which is austere and pure from the text,
'Are not Abana and Pharpar, rivers of Damascus, better than all the
waters of Israel? * it seemed to me that I might for once... make
trial... that is, use the words Abana and Pharpar as a symbol to... fix
the truth, as it were. It is very laborious and... not grateful to me.
Do you think that... I am doing right?” and my probationer fixed me
with an anxious eye.
“Quite so, sir, I understand perfectly,” as I was making a
blundering effort to suggest that Providence hardly intended that my
probationer should go round the country like a showman with
“repeaters.”
“You have confirmed my own idea and... delivered my feet from
falling, for I had come nearly to unreality in a holy thing, besides
ridding me from an irksome task,” and he regarded the sheets—the
“rivers” standing out in half text—with strong dislike.
“There is another matter,” he continued, “on which I would fain
have your mind, since you have shown so much sympathy. It is now,
I regret to say, the custom for a person in my position, that is, on
probation, to print a number of certificates from influential persons
and send them to... the authorities in a vacant church. This I have
refused to do; but there is a special reason why I strongly desire to
be settled... not quite unworthy, I hope,” and a faint flush came to
the probationer's face.
“I understand”—for it was natural to suppose that he was
engaged, as many in his circumstances are, which grows into a
pathetic tragedy as a girl waits for long years till her betrothed is
approved in his work and can offer her a home—“and you have got
your certificates.”
“A few, and it may be that I could secure more; here is one
which... I value deeply... count above gold. It's from Prof. Carphin;
you know what he has done, of course.
“Hebrew scholar”—the probationer rose from his chair and paced
the floor—“that is inadequate, quite inadequate; there are many
Hebrew scholars, thank God, but Prof. Carphin has gone deeper.
Why, sir, he has made a race of scholars, and changed the face of
theological thought in Scotland; he is the modern Erasmus of our
land,” and the probationer was very warm.
“This is what he has written of me, and it is superfluous to say
that from such a man this testimony is the highest praise; I ought
hardly to show such words, but you will not misjudge me.”
“I beg to certify that Mr. Hiram Clunas, Master of Arts and
Bachelor of Divinity, late Fellow of this College, is in my judgment
fully competent to expound the Hebrew Scriptures after an accurate
and spiritual fashion to any body of intelligent people.
“Zechariah Carphin,
“D.D., LL.D.
“Calvin College, Edinburgh.”
“Pardon me, it is my foolishness, but you notice 'fully'; this
extremity of language is, I need not say, undeserved, but that Dr.
Carphin should have written it is... a compensation for many little
disappointments,” and the probationer's voice trembled.
“No, it will not be of material service in the way of gaining me a
hearing, for it is a... moral disgrace to my Church that the word of
this eminent man carries little weight with... committees and such
like, and that many people in this University city do not know his
face when he walks along Princes Street.
“This is from another kind of man, who is very... acceptable as a
preacher, and has much influence... in vacancies; it was an
indiscretion, I fear, to have asked him for... a certificate, as he has
only seen me once; but when one is pressed he is not always wise.”
“I have had the pleasure of knowing the Rev. Hiram Clunas for a
considerable time, and have much satisfaction in recommending him
to the favourable consideration of selection committees of vacant
congregations, He is a ripe scholar, a profound divine, an eloquent
preacher, a faithful pastor, an experienced Christian, with an
attractive and popular manner, and general knowledge of a varied
and rich character. Any congregation securing Mr. Clunas is certain to
increase both in number and finance, and I anticipate for this
talented young minister a future of remarkable and rapid success.
“MacDuff MacLeear, D.D.”
“Yes, it is a curious name, and I believe was, so to say, adopted.
Originally he was James MacLeear—MacLeear is his own—and some
years ago he inserted MacDuff, I am credibly informed, and now he
has dropped his Christian name.
“The reason for the change, it is understood, is for purposes of
advertisement in the public prints, where, I am informed, ordinary
names such as James or John are less... striking, so that preachers
who desire to appeal to the people use two surnames, as it were; it
seems to me doubtful in ethics, but one must not be ready to judge
his neighbour in such straits.
“No, his degree is not from a Scots University, but from a seat of
learning in a Western State of America—Auroraville, I think it is
called, but I am not sure. Yes, he wrote a little book on the Maidens
of the Bible of a popular cast.
“You agree with me that no one could use such a testimony with...
self-respect, and I have resolved to print no certificates or make any
personal appeal; but I do not regret the effort I made, for it has
gained me the Professor's letter,” and the probationer folded up the
letter carefully and placed it in his desk.
“I fear that you must think me charged with vain ambition, but... it
is not for my own sake.”
From time to time we spent an hour together, and he told me of
his journeys, many and toilsome.
“Of course I am not sent to supply in cities, for they require men
of greater... experience; my allotment is always in the country, and I
like that better.
“When my station comes near I begin to look out of the window
and see whether the district is level or hilly—for though climbing
tries one a little, one has a fair view to refresh the soul, and I like
woods because of the mystery and the rustling of the leaves.
“Sometimes a farmer will meet me with a dogcart—and there are
no men so kind as farmers—but mostly I walk, and that is nothing
unless the distance be far and it be raining heavily. No, it may be a
weakness of the flesh, but I do not like a night walk, and yet to see
the squares of light in the cottage windows, flashing across a glen or
breaking out of a wood, is very pleasing.”
One snowy morning in February he came into my room in evident
excitement, with a letter in his hand.
“You have taken such an interest in my affairs that I thought you
would like to know... I have received a letter informing me that I am
on the short leet for Tilliegask... just two, and I am one... and I am
to preach next Sabbath... and the farmer with whom I stayed has
sent a very encouraging letter.”
During the week the probationer was much tried on a question of
conscience, whether he ought to act on a suggestion of his friend at
Tilliegask.
“It happens,” he explained to me, “that the people at Tilliegask are
very conservative in their views of the Bible, while, as you are
aware, I have been led to accept certain modern conclusions
regarding the history of the books, and my good friend desires that I
should... make no allusion to them in my discourse.
“Now,” went on the probationer, “it was not my intention to do so,
but after this advice am I not bound in conscience to indicate, simply
to indicate, my position, that they may not be deceived, and that I
may not obtain a church by guile?” And he read to me the sentence,
which I make no doubt no one understood, but which was to Mr.
Clunas a great relief. He came home from Tilliegask in high spirits,
and speculated every evening on his chances as against the other
man who was to preach on Sabbath.
“No, he was not what you would call a scholar,” and then the
probationer laughed aloud—a rare occurrence; “well, it was a
translation in the Latin class; he rendered adhuc juvenis as 'a still
youth,' which was much tasted, and others, too, as remarkable; but
it is not generous to remember such... failings.”
The good man was indeed so distressed by this disparaging
allusion to his rival that he searched his heart for the sins of pride
and jealousy, which with envy and worldliness, he confessed to me,
constantly beset him. He also impressed upon me that although Mr.
Tosh might not be a scholar in the academic sense, yet he had such
gifts of speech that he would be an excellent minister for Tilliegask if
the choice of that secluded place should fall on Tosh. But the
probationer waited anxiously for the first post on Tuesday, which
would give the result, and I was only less anxious.
When he did not come down with tidings, and only the faintest
sound came from his room as of a chair occasionally shifted before
the fire, I went up, and found my friend very low and two open
letters on the table.
“It has not been... God's will,” and he signed that I should read
the letters. One was from the ecclesiastical functionary who presides
over elections and church courts, and who is called by the
suggestive name of “moderator”; that the vote had been fifty-two
for Mr. Clunas and ninety-three for Mr. Tosh; that Mr. Tosh had been
elected; that on his, the moderator's appeal, the minority had “fallen
in”; that he, the moderator, was sure that Mr. Clunas would be
pleased to know that his supporters had shown so good a spirit, and
that there was no doubt that the Great Head of the Church had
something in store for His servant; and that in the event of Mr.
Clunas applying in another vacancy he, the moderator, would be
willing to give him a strong certificate as to the impression he, Mr.
Clunas, had produced on the congregation of Tilliegask. The second
letter was from Wester Tilliegask, my friend's host, who was full of
genuine regret that Mr. Clunas had not won the poll, who explained
that up to Sabbath his chance was excellent, but that Mr. Tosh had
carried all before him by a sermon on “A Rainbow round about the
Throne,” with very fetching illustrations and quotations—Mr. Tosh
had also won several votes by shaking hands with the people at the
door, and ingeniously giving it to be understood that his idea of
pastoral duty was to visit his congregation four times a year; that,
notwithstanding all these Tosh attractions, he, Wester Tilliegask,
would have preferred Mr. Clunas; and that as there was a rumour
that the minister of Ballengeich would soon need a colleague, he
would arrange through his, Wester Tilliegask's, wife's brother that
Mr. Clunas should have a hearing. He added that a certificate from
MacDuff MacLeear, placing Mr. Tosh a little lower than St Paul, had
told.
The probationer was very brave and generous, blaming no one,
and acknowledging that Tosh would be a more suitable man for
Tilliegask, but it was evident he was hardly hit.
“It was not to escape the unrest of this life,” he said, “nor for the
position, nor even for the sanction of my work; it was for the sake of
one who... has waited long to see me an ordained minister. She may
not... be spared much longer; my mother is now nearly seventy.” So
it was no sweetheart, but his mother of whom he thought.
“If I had been elected, I had purposed to start this forenoon and
carry the news myself, and I imagined the scene. I never could
reach the cottage unseen, for there is a window in the gable which
commands the road, so that mother is ever waiting at the garden
gate for me.
“Do not count me foolish, but I was to pretend that I had just
come to visit her for a day, and then ask her how she would like to
leave the cottage and live in a manse.
“By this time she would jalouse something—'tis her word—but I
would tell nothing, only expatiate on the manse and her room in it,
and... and... she would suddenly throw her arms round my neck....
Excuse me, sir; I will come down in the evening, if you please.”
Before evening he was hurrying down to the cottage, for after all
he had to go to his mother, and when he came back next Monday
she was dead and buried.
“Your sympathy is very grateful,” as we sat together, “and it helps
me, but I think my heart is... broken; although I had to live in
Edinburgh in order to accomplish my railway journeys, and we only
saw one another at intervals, we were all in all to one another....
“There were things passed between us I cannot tell, for it seems
to me that a mother's death-bed is a holy place; but she knew that I
had lost Tilliegask, and... she was not cast down, as I was for her
sake.
“'Dinna lose heart, Hiram,' she said, her hand in mine, 'for my
faith will be justified; when I gave ye to the Lord the day your father
died I was sure, a' through the fecht o' education I was sure, an'
when you got your honours I was sure, an' when you got no kirk I
was still as sure, and now my eyes are clear, an' I see that God has
savit you for a work that hath not entered into my heart,' and she
blessed me....”
From that day he began to fail, and although he struggled to fulfil
preaching engagements, he had at last to give up public work. But
he toiled harder than ever at the Semitic languages.
“It is not that I am deceiving myself with vain hopes,” he
explained to me one day, “for I know full well that I am dying, but it
seemeth good that whatsoever talent I have should be cultivated to
the end.
“The future life is veiled, and speculation is vain, but language
must be used, and they who have mastered the ancient roots will be
of some service; it is all I can offer, and I must give of my best.”
The morning he died I looked over his few affairs and balanced his
accounts, which were kept in a small pass-book, his poor fees on
one side and his slender expenses on the other to a halfpenny.
“The expenditure may seem heavy the last few journeys, but my
strength failed by the way, and I was unable to walk to my
destination, but there may still be enough at the end of the week for
what has to be done.
“There will be £9 15s. 6d. when all is paid.
“With the sale of my books it will suffice, for I have carefully
enquired, to buy a grave and defray the cost of burial. It is not
possible to be buried beside my mother, for our ground is full, so let
me lie where the sun is shining on the Grange Cemetery.”
Soon after his mind wandered, and I gathered he was in the
vestry of Tilliegask Kirk.
“Lord, be merciful to me and remember my infirmities... deliver
Thy servant from the fear of man and all doubleness of heart... give
me grace to declare Thy truth and to set Thee before me... bless my
mother and hear her prayers....”
After a little while he began to preach, but we could make nothing
of the words till he suddenly stopped and raised himself in the bed.
“Thou, Lord,” he cried, with great astonishment, “hearing me...
Forgive... I am not worthy to declare Thy Gospel....” What was said
by the Master none of us heard, but the astonishment passed into
joy, and the light thereof still touched and made beautiful his face as
the probationer fell on sleep.
It was a spring day when we laid his body to rest, and any one
who cares can find his grave because a weeping willow hangs over
it, and this is the inscription on the stone:
Hiram Clunas,
Probationer.
“It is a very small thing that I should be judged of man's
judgment.”
Welcome to our website – the perfect destination for book lovers and
knowledge seekers. We believe that every book holds a new world,
offering opportunities for learning, discovery, and personal growth.
That’s why we are dedicated to bringing you a diverse collection of
books, ranging from classic literature and specialized publications to
self-development guides and children's books.
More than just a book-buying platform, we strive to be a bridge
connecting you with timeless cultural and intellectual values. With an
elegant, user-friendly interface and a smart search system, you can
quickly find the books that best suit your interests. Additionally,
our special promotions and home delivery services help you save time
and fully enjoy the joy of reading.
Join us on a journey of knowledge exploration, passion nurturing, and
personal growth every day!
ebookbell.com

Data Visualization The State Of The Art 1st Edition Dirk Bartz

  • 1.
    Data Visualization TheState Of The Art 1st Edition Dirk Bartz download https://ebookbell.com/product/data-visualization-the-state-of- the-art-1st-edition-dirk-bartz-4200094 Explore and download more ebooks at ebookbell.com
  • 2.
    Here are somerecommended products that we believe you will be interested in. You can click the link to download. Effective Data Visualization The Right Chart For The Right Data Second Stephanie D H Evergreen https://ebookbell.com/product/effective-data-visualization-the-right- chart-for-the-right-data-second-stephanie-d-h-evergreen-34801230 Effective Data Visualization The Right Chart For The Right Data Stephanie D H Evergreen https://ebookbell.com/product/effective-data-visualization-the-right- chart-for-the-right-data-stephanie-d-h-evergreen-61083916 Data Visualization Uncovering The Hidden Pattern In Data Us Amar Sahay https://ebookbell.com/product/data-visualization-uncovering-the- hidden-pattern-in-data-us-amar-sahay-56240708 Interactive Data Visualization For The Web An Introduction To Designing With D3 1st Edition Murray https://ebookbell.com/product/interactive-data-visualization-for-the- web-an-introduction-to-designing-with-d3-1st-edition-murray-55920266
  • 3.
    Interactive Data VisualizationFor The Web An Introduction To Designing With D3 2nd Edition Murray https://ebookbell.com/product/interactive-data-visualization-for-the- web-an-introduction-to-designing-with-d3-2nd-edition-murray-34627236 Interactive Data Visualization For The Web An Introduction To Designing With D3 Scott Murray https://ebookbell.com/product/interactive-data-visualization-for-the- web-an-introduction-to-designing-with-d3-scott-murray-4081728 Interactive Data Visualization For The Web 2nd Edition Murray https://ebookbell.com/product/interactive-data-visualization-for-the- web-2nd-edition-murray-11901598 Interactive Data Visualization For The Web 2nd Edition Scott Murray Scott Murray https://ebookbell.com/product/interactive-data-visualization-for-the- web-2nd-edition-scott-murray-scott-murray-7294504 Interactive Data Visualization For The Web Scott Murray https://ebookbell.com/product/interactive-data-visualization-for-the- web-scott-murray-11194354
  • 5.
  • 6.
    THE KLUWER INTERNATIONALSERIES IN ENGINEERING AND COMPUTER SCIENCE
  • 7.
    DATA VISUALIZATION The Stateof the Art edited by Frits H. Post Delft University of Technology, The Netherlands Gregory M. Nielson Arizona State University, U.S.A. Georges-Pierre Bonneau University Grenoble I/GRAVIR/IMAG, France SPRINGER SCIENCE+BUSINESS MEDIA, LLC
  • 8.
    Library of CongressCataloging-in-Publication Data A C.I.P. Catalogue record for this book is available from the Library of Congress. Post, Frits H.; Nielson, Gregory M ; Bonneau, Georges-Pierre DATA VISUALIZATION: The State of the Art Additional material to this book can be downloaded from http://extras.springer.com. ISBN 978-1-4613-5430-7 ISBN 978-1-4615-1177-9 (eBook) DOI 10.1007/978-1-4615-1177-9 Copyright © 2003 by Springer Science+Business Media New York Originally published by Kluwer Academic Publishers in 2003 Softcover reprint of the hardcover 1st edition 2003 All rights reserved. No part of this work may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, microfilming, recording, or otherwise, without the written permission from the Publisher, with the exception of any material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work. Permission for books published in Europe; permissions@wkap.nl Permissions for books published in the United States of America: permissions@wkap.com Printed on acid-freepaper.
  • 9.
    Contents Preface ix Part IVisualization Algorithms and Techniques Efficient occlusion culling for large model visualization 3 D. Bartz, M. MeijJner, G. Muller Localizing vector field topology 19 G. Scheuermann, B. Hamann, K.I. Joy, W. Kollmann Feature tracking with skeleton graphs 37 B. Vrolijk, F. Reinders, F.H. Post Correspondence analysis: visualizing property-profiles of time-dependent 3D datasets 53 K. Fries, J. Meyer, H. Hagen, B. Lindemann Specializing visualization algorithms S. Diehl Isosurface extraction for large-scale data sets Y. Livnat, C. Hansen, C.R. Johnson Part II Volume Visualization Topologically-accentuated volume rendering Issei Fujishiro, Yuriko Takeshima, Shigeo Takahashi, Yumi Yamaguchi Reconstruction issues in volume visualization T. Theuj31, T. Moller, J. Hladuvka, M.E. Groller High quality splatting and volume synthesis R. Crawfis, J. Huang Cellfast: Interactive unstructured volume rendering and classification C.M. Wittenbrink, H.J. Wolters, M. Goss 67 77 95 109 127 141
  • 10.
    vi THE STATEOF THE ARTIN DATA VISUALIZATION Cell projection of meshes with non-planar faces M. Max, P. Williams, C. Silva Segmentation and texture-based hierarchical rendering techniques for large-scale real-color biomedical image data J. Meyer, R. Borg, l. Takanashi, E.B. Lum, B. Hamann Part III Information Visualization 157 169 eBusiness Click Stream Analysis 185 S.G. Eick Hierarchical exploration of large multivariate data sets 201 J. Yang, M.O. Ward, E.A. Rundensteiner Visualization of multidimensional data using structure preserving projection methods 213 W. de Leeuw, R. van Liere Visualizing process information and the health status of wastewater treatment plants - A case study of the ESPRIT-project WaterCIME 225 P. Dannenmann, H. Hagen Part IV Multiresolution Methods Data structures for 3D multi-tessellations: an overview 239 E. Danovaro, L. De Floriani, P. Magillo, E. Puppo A data model for adaptive multi-resolution scientific data 257 P.J. Rhodes, R.D. Bergeron, T.M. Sparr Multiresolution representation of datasets with material interfaces 273 B.F. Gregorski, K.I. Joy, D.E. Sigeti, J. Ambrosiano, G. Graham, M. Wolinski, M.A. Duchaineau Generalizing lifted tensor-product wavelets to irregular polygonal domains 289 M. Bertram, M.A. Duchaineau, B. Hamann, K.I. Joy Ranked representation of vector fields 301 B. Nakshatrala, D. Thompson, R. Machiraju Part V Modelling Techniques Procedural volume modeling, rendering, and visualization D. Ebert, P. Rheingans Surface approximation to point cloud data using volume modeling A. Huang, G.M. Nielson 317 333
  • 11.
    Contents Enriching volume modellingwith scalar fields M. Chen, A.S. Winter, D. Rodgeman, S. Treavett Fast methods for computing isosurface topology with Betti numbers S.F. Konkle, P.J. Moran, B. Hamann, K.I. Joy Surface interpolation by spatial environment graphs R. Mencl, H. Maller Part VI Interaction Techniques and Architectures Preset based interaction with high dimensional parameter spaces J.J. van Wijk, C.W.A.M. van Overveld Visual interaction to solving complex optimization problems A. Hinneburg, D.A. Keirn Visualizing cosmological time A.J. Hanson, c.-w. Fu, E.A. Wernert Component-based intelligent visualization H. Hagen, H. Barthel, A. Ebert, M. Bender Author Index vii 345 363 377 391 407 423 439 453
  • 12.
    Preface In this bookwe survey the state of the art in the field of Data Visualiza- tion. The origins of this field are in the early days of computer graphics in the 1950s, when the first graphs and figures were generated by computers. A strong impulse was given to the field by the appearance, in 1987, of the NSF report 'Visualization in Scientific Computing', in which the need for new computer-based visualization techniques was stressed. With the rapid increase of computing power, larger and more complex numerical models were devel- oped, resulting in the generation of huge numerical data sets. Also, large data sets were generated by data acquisition devices such as medical scanners and microscopes, and data was collected in large databases containing text, numer- ical information and multimedia information. Advanced computer graphics techniques were needed to process and visualize these massive data sets. The NSF report marked the start of a large number of research activities and the emergence of Data Visualization as a new specialism within the field of computer graphics. In 1990, the Eurographics Association started with annual European visualization conferences, and the IEEE Computer Society started the annual IEEE Visualization Conferences. The journal IEEE Transactions on Visualization and Computer Graphics (TVCG) was started in 1995, and several other computer graphics journals and conferences are publishing papers in visualization. The phrase 'Visualization in Scientific Computing' (or 'Scientific Visual- ization') was used initially to refer to visualization as a part of a process of scientific computing: the use of computer modelling and simulation in scien- tific and engineering practice. More recently, visualization is increasingly also concerned with data from other sources, including large and heterogeneous data collections found in business and finance, administration, digital media, etc. A new research area called 'Information Visualization' was launched in the early 1990s, to support analysis of abstract and heterogeneous data sets in many application areas. Therefore, the phrase 'Data Visualization' is gaining acceptance to include both the scientific and information visualization fields. Today, data visualization has become a very active and vital area of research and teaching, and this book is a representative survey of this field to illustrate this. This book was originally planned at the Dagstuhl Seminar on Scientific Visu- alization, held from 21-26 May, 2000. The IBPI SchloG Dagstuhl was founded in 1990, and is located in the south-west of Germany near Saarbriicken. It offers the opportunity of one-week meetings which bring together a number of prominent researchers from around the world on significant topics in informa-
  • 13.
    x THE STATEOF THE ARTIN DATA VISUALIZATION tion technology. This seminar on visualization was the fourth in a series since 1991, and was attended by 56 scientists from 14 countries. Most of the papers are based on the oral presentations given at the seminar, but they were expanded and updated later. The papers represent a good survey of the state of the art in the field of data visualization. It would be impossible to cover every aspect of the field in a collection of papers, but we have selected 30 reviewed contributions from well-known visu- alization researchers, based on recent research of their groups, covering a wide range of topics. It is always a challenging task to categorize these papers into coherent groups, as this amounts to a partitioning of the field into a number of sub-fields, which are usually quite transient in a highly dynamic area. Never- theless, we have made an attempt, and it has resulted in the following chapters: 1. Visualization Algorithms and Techniques 2. Volume Visualization 3. Information Visualization 4. Multiresolution Methods 5. Modelling Techniques 6. Interaction and Architectures The intent of this book is to present an overview for the inquiring scientist, and as abasic foundation for developers. Anothergoal for this book is to provide basic material for teaching state of the art techniques in data visualization. The references included with the paperspoint out where toobtain further information to complete the course material. One natural aspect of visualization is the extensive use of colour images and movies. Unfortunately, it was impossible to provide colour images in the printed version of this book. But we have added a CD-ROM to this book which contains all papers (in pdfformat), with high quality colorimages, and anumber of movies illustrating the work in the papers. We would like to express our sincere appreciation to the authors for their interesting contributions, and the editorial staff in Electrical Engineering and Computer Science of Kluwer Academic Publishers in Norwell, Mass. (USA) for their interest and support in publishing this book. Numerous others have helped us to produce this book, especially Paul de Bruin who did the hard work of preparing the final copy for the book, and CharI Botha who designed the layout for the CD-ROM. We would like to thank them all. Finally, we thank the management and staff of SchloB Dagstuhl for smoothly organizing this memorable week, and of course Hans Hagen for his indispensable advice and encouragement. We hope that this book will serve the visualization community and will add to the excellent reputation of the Dagstuhl seminars. FRITS H. POST, GREGORY M. NIELSON, AND GEORGES-PIERRE BONNEAU
  • 14.
  • 15.
    EFFICIENT OCCLUSION CULLINGFOR LARGE MODEL VISUALIZATION Dirk Bartz WSIIGRIS University ofTubingen bartz@gris.uni-tuebingen.de Michael MeiBner WSIIGRIS University ofTubingen meissner@gris.uni-tuebingen.de Gordon Muller Institute of Computer Graphics Braunschweig University ofTechnology gordon.mueller@tu-bs.de Abstract Occlusion and visibility culling is one of the major techniques to reduce the geo- metric complexity of large polygonal models. Since the introduction ofhardware assisted-occlusion culling in OpenGL (as an extension), solely software-based approaches are losing relevance rapidly for applications which cannot exploit specific knowledge of the scene geometry. However, there are still several issues open on the software side for significant performance improvements. In this paper, we discuss several of these techniques. Keywords: Large model visualization, occlusion culling, visibility, hierarchical scene orga- nization, efficient bounding primitives 1. Introduction In the past few years, the size of polygonal datasets used in scientific visual- ization has increased rapidly. Typical model sizes range from several hundred thousands of polygons in architectural design applications, several millions of F. H. Post et al. (eds.), Data Visualization © Kluwer Academic Publishers 2003
  • 16.
    4 THE STATEOF THE ARTIN DATA VISUALIZATION polygons in medical applications, multi-million polygons in mechanical engi- neering, to several hundred of million polygons in scientific computing. In the mean time, the raw polygonal rendering performance of state-of-the-art com- puter graphics subsystems is also increasing fast. However, it is not increasing as fast as the extra-ordinary high demands driven by scientific visualization, re- sulting in a growing divide between rendering requirements and raw rendering performance. Numerous approaches address this growing divide, such as mesh reduction, geometry compression, parallel processing, volume rendering, and visibility and occlusion culling. Several visibility and occlusion culling approaches were developed in the past decade to reduce the polygonal complexity of a wide variety of applications. Object-space oriented visibility culling algorithms ad- dress mostly problems from global illumination or computational geometry. However, they are usually either limited to specific visibility problems, or do not provide enough performance for rapid, or even interactive (more than 10 frames per second (fps)) explorations of large geometric objects. Here, we are focusing on image-space occlusion culling algorithms which show good per- formance for general polygonal models or dynamic scenes, while object-space approaches can only deal with a limited scene complexity. With the introduction of graphics hardware support for occlusion culling by Hewlett-Packard Scott et aI., 1998, interactive exploration (more than 10 fps) became feasible for large polygonal models, virtually eliminating the need for purely or mostly software-based approaches for applications with general or dynamic scenes. Therefore, we will in particular discuss methods which exploit this specific functionality. 2. Occlusion Culling Approaches Most occlusion or visibility culling algorithm rely on a hierarchical organi- zation of the scene to check for visibility at different levels of detail. Another common feature is an initial view-frustum check - usually in object space - to determine the scene elements which are not intersecting with the view-frustum and hence, not visible. Garlick Garlick et aI., 1990 presented an approach which combines these techniques for a walk-through system. Most other image space approaches apply an additional occlusion test, to determine which parts of the geometry are occluded by scene elements rendered previously. Most of these approaches Greene et aI., 1993; Zhang et aI., 1997; Bartz et aI., 1999 use different software-based techniques to trace visual contributions of the scene elements to determine if they are potentially visible1. Greene et al. Greene et aI., 1993 traced the rasterized silhouette through a z-pyramid to determine changes in the z-buffer, indicating a not occluded object. Zhang et al. Zhang et aI., 1997 used a hierarchical screen projected map of pre-selected occluders
  • 17.
    Efficient occlusion cullingforlarge model visualization 5 to check if the scene elements are occluded. In Bartz et al., 1999, the OpenGL stencil buffer is used as virtual occlusion buffer, which is sampled to trace for visual contribution. We will explain this in more detail later in Section 2.3. In contrast to these software-based approaches, Hewlett-Packard released the VISUALIZE fx series of graphics subsystems which provide hardware support for occlusion culling queries using the HP occlusion culling flag Scott et al., 1998. The visibility status of a scene element can be queried by rendering this element (or its bounding volume) in an occlusion mode which does not contribute to the framebuffer. However, potential changes to the depth buffer are detected, indicating visibility of that element. Other hardware-based approaches include the Z-query in the not anymore available Denali graphics on the Kubota Pacific workstation Greene et al., 1993 and the instrument extension on SGl's Visual PC SGI, 1999. In another recent proposal, Bartz et al. Bartz et al., 1998 suggest hardware modifications within the rasterizer by adding an Occlusion Culling Unit to provide detailed visibility information, or culling individual triangles or pixel groups beyond "traditional" HP-flag style culling MeiBner et al., 2001. In the following, we briefly discuss efficient scene tree traversal which de- termines in which sequence the hierarchical scene organization is tested for occlusion. Afterwards, we present results obtained using OpenGL for efficient occlusion culling of complex polygonal scenes Bartz et al., 1999. In particular, we present two methods how to use the OpenGL selection mode to perform view-frustum culling and OpenGL's stencil buffer as virtual occlusion buffer. 2.1 Efficient Scene Tree Traversal The efficiency of image-space occlusion culling approaches depends on the sequence by which occlusion is determined, since scene objects in the back of the scene from the current view point are very unlikely to occlude other objects. Greene et al. Greene et al., 1993 used a front-to-back sorted scene to ensure efficiency. Zhang et al. Zhang et al., 1997 select "good occluders" from a pre- selected occluder database based on similar heuristics. In our previous stencil buffer-based approach Bartz et al., 1999 (also presented later on in Section 2.3), we perform front-to-back sorting during view-frustum culling, which involves the transformation ofthe scene objects (or their bounding volumes) into the view coordinate system. Furthermore, we alsoproposed an interleavedscheme where the occlusion test is performed also on the inner nodes of the scene hierarchy tree, once view-frustum culling has determined those as potentially visible - and sorted these nodes front-to-back. This scheme allows the assignment of an occlusion budget to balance rendering and culling costs. In early HP occlusion culling flag-based approaches, a brute-force testing on scene elements was used Scott et al., 1998, which we modified to view-
  • 18.
    6 THE STATEOF THE ART IN DATA VISUALIZATION frustum culling of the complete scene hierarchy tree, sorting of the remaining leaf elements, and subsequent front-to-back occlusion testing of the potentially visible leaf elements Bartz and Skalej, 1999. Further measurements on the visibility of leaf elements indicated additional potentialfor more efficient utilization ofocclusion culling for scenes with ahigh depth complexity. The approximately 10% front-most leaf elements in these scenes are not occluded in most ofthe cases, hence they can be rendered without the costly determination of their visibility. Furthermore, the 40% farthest scene elements do not significantly change the visibility information stored in the depth buffer of the graphics system because they are already occluded. There- fore, their occlusion status can be established without taking their own occluder potential into account, which usually is a cheaper occlusion query. However, the distribution ofthe objects in ascene is very application dependent and needs to be established individually. 2.2 View-Frustum Culling In contrast to other published approaches, we use OpenGL to perform the view-frustum culling step. In detail, we use the OpenGL selection mode to de- tect whether abounding volume interferes with the view-frustum. This OpenGL mode is designed to identify geometric objects rendered into a specific screen area Woo et al., 1997, which in our case is the whole screen. The polygonal representation of the bounding volume (as convex hull) is transformed, clipped against the view-frustum, and finally rendered without contributing to the actual framebuffer Woo et aI., 1997. Once a bounding volume intersects the view- frustum - the hit buffer of OpenGL's selection mode has a contribution from this bounding volume object - we test whether the polygonal bounding volume resides entirely within the view-frustum. In this case, all subtrees ofthe bound- ing volume are marked potentially visible. Otherwise, we recursively continue testing the child nodes of the bounding volume hierarchy. In rare cases, the bounding volumes cancompletely contain the view-frustum - resulting in no contributions to the hit buffer of the selection mode, due to a not visible bounding volume representation. This can be prevented by testing if the view point lies within the bounding volume, or if the bounding volume lies in between the near plane of the view-frustum and the view point. As a result of the view-frustum culling step, leaves are tagged potentially visible, if they are not culled by the view-frustum culling, or definitely not visible. 2.3 Virtual Occlusion Buffer-based Culling Thetaskofanocclusionculling algorithm is todetermine occlusion ofobjects in a model. We use a virtual occlusion buffer (VOB), being mapped onto
  • 19.
    Efficient occlusion cullingfor large model visualization 7 the OpenGL framebuffer to detect possible contribution of any object to the framebuffer. In our implementation of the algorithm on an SGI 02 and an SGI OctanelMXE, we used the stencil buffer for this purpose2 . Intentionally, the stencil buffer is used for advanced rendering techniques, like mUlti-pass rendering. To test for occlusion ofa node, we send the triangles ofits bounding box (BB) to the OpenGL pipeline, use the z-buffer test while scan-converting the triangles, and redirect the output into the virtual occlusion (stencil) buffer. Occluded bounding volumes will not contribute to the z-buffer and hence, will not generate afootprint in the virtual occlusion buffer. Although reading the virtual occlusion buffer is fairly fast, it is the most costly single operation of our algorithm, which accounts for approximately 90% of the total costs of the occlusion culling stage. This is mainly due to the time consumed for the setup getting the buffer out of the OpenGL pipeline. For models subdivided into thousands of bounding volumes, this can lead to a less efficient operation. Furthermore, large BBs require many read operations. Therefore, we implemented a progressive occlusion test, which reads spans of pixels from the virtual occlusion buffer using a double interleaving scheme. Although, the setup time on the 02 for sampling3 small spans of the virtual occlusion buffer increases the time per sample, spans of ten pixels achieved an almost similar speed-up as sampling entire lines of the virtual occlusion buffer. For the OctanelMXE, we need to read larger chunks from the framebuffer in order to achieve a sufficient speed-up. Note that sampling introduces a non- conservative heuristic which trades-off quality versus rendering performance. However, the experiments in the next section showed no apparent artifacts (even in animations), although small image differences are present. 2.4 Analysis We ran several experiments to evaluate the performance of the OpenGL- assisted occlusion culling approach. For a complete listing ofthe results, please refer to Bartz et aI., 1999. All experiments were run on four different scenes; an architectural scene of eight gothic cathedrals - arranged on a 3D array, a city scene, a forest scene to demonstrate quantitative culling, and - similar to Zhang et aI., 1997 - the content of a virtual garbage can of rather small objects (see also Fig. 1). An hierarchical scene organization for each dataset was generated by manual tuning of a scene hierarchy generated by SGl's OpenGL optimizer (see Section 3). Frame-rate and culling rate are measured over a sequence of about 100 frames on an SGI 02 workstation (256 MB, RlOOOO @ 175 MHz), and on an SGI OctanelMXE (896 MB, R10000 @ 250 MHz CPU). Please note that the datasets used for the SGI 02 were using triangle strips, while this was not possible for
  • 20.
    8 THE STATEOF THE ARTIN DATA VISUALIZATION (a> (d) (e) (I) Figure 1. Scenes: (a,d) city b,e) garbage, (c,t) cathedrals; upper row: views with occlusion culling; lower row: views with BBs of occluded scene elements. technical reasons on the Octane. The polygonal complexity and speed- scene #triangles culling culling frame-rate speed-up 02 MXE MXE/{fps] O2IMXE cathedrals 3,334,104 91.3% 92.5% 5.3 4.2/12.6 city 1,056,280 99.8% 87.7% 7.7 4.8/9.8 forest 452,981 84.7% 80.5% 4.7 2.6/6.1 garbage 5,331,146 96.0% 38.2% 0.3 7.0/5.0 Table 1. Average performance of OpenGL-assisted occlusion culling compared to view- frustum culling only. Different culling rates are due to different sampling parameters. up numbers are listed in Table 1. The costs for view-frustum and occlusion culling vary with the different scene organization granularities; Le., for the cathedrals dataset, view-frustum culling accounts for approximately 5% of the costs, occlusion culling (mostly dominated by reading the stencil buffer) for approximately 20%, and rendering of the as visible classified scene elements for about 75% of the total frame time. The distribution and total amount of the costs basically depend on architecture of the graphical subsystem. A highly interleaved graphics system like the InfiniteReality of SGI is likely to perform
  • 21.
    Efficient occlusion cullingfor large model visualization 9 worse than the 02 for this algorithm due to the high set-up costs ofreading from the framebuffer, while single-pipeline low- and mid-end graphics are mostly limited by the total amount read from the framebuffer. Therefore, the sampling parameters - sampling frequency and how much is read from the framebuffer per sampling - of the occlusion culling approach trade off visual quality and minimized set-up time and need to be parametrized for each graphics system. 3. Hierarchical Scene Organization In the previous section, we pointed out the need for a hierarchical scene organization, which is difficult to derive for general polygonal models. Several previous papers on visibility and occlusion culling touch the topic of scene organization. While some approaches require the scene designer to provide the scene organization Snyder andLengyel, 1998; Zhang et al., 1997, others employ decomposition methods which are application specific, such as adecomposition along the skeleton of a volumetric object Hong et al., 1997, or a floor plan of a building Airey et al., 1990; Teller and Sequin, 1991. However, these schemes cannot be applied efficiently to general models. Models built in Computer- Aided-Design (CAD) systems already include appropriate scene organization information in a product data management system, due to the design process which uses hierarchical notions like grouping and replication. Amore general approach is to organize apolygonal model into regular spatial decomposition schemes, such as BSP-trees Fuchs et al., 1980 or Octrees Greene et al., 1993. While these decomposition schemes produce good results on polygonal models extractedby the Marching Cubes algorithm from uniform grid volume datasets - which provide a "natural" decomposition on a Marching Cubes cell base -, these schemes run into numerous problems on general models. Ifa polygon ofthe model lies across adecomposition boundary, it must be either split into several parts, in order to produce a disjunct representation of the bounding entities, or handled in another special way. Splitting polygons however, can increase the number of small and narrow polygons tremendously. Significant work on model organization has been published in the field of collision detection. Methods based on oriented bounding boxes (OBB) were explored by Gottschalk et al. Gottschalk et al., 1996. A bottom-up approach for the construction of amodel hierarchy is suggested in Barequet et al., 1996 in which nodes representing small parts of the geometry are "merged" into higher hierarchy nodes. In Bartz et al., 1999, the spatialization functionality of SGI's OpenGL Opti- mizer package SGI, 1997 was used to generates scene hierarchies automatically. However, our experience from the previous section showed that these scene hi- erarchies need to be tuned manually in order to get sufficient performance and motivated the work described in this section. More detailed information on the
  • 22.
    10 THE STATEOF THE ART IN DATA VISUALIZATION analysis and results using different decomposition techniques can be found in MeiBner et al., 1999. 3.1 Scene Organization and Occlusion Culling Generally, a polygonal scene can be decomposed into smaller parts, where this scene organization can be either hierarchical or non-hierarchical. We call each part of this decomposition a scene entity. Ifinformation at different multi- resolution levels are required, usually a hierarchical organization is chosen, where different scene entities are combinedinto one parententity which contains the whole information of the associated scene entities, or only information with less detail (a lower level-of-detail). This decomposition can be represented as a tree which is referred to as scene tree or scene graph. This tree contains two different kinds of nodes; scene nodes and leafnodes. Only the leaf nodes contains the geometry of the actual model and the BB with respect to the used decomposition method. In contrast, a scene node does not contain any geometry of the actual dataset; it only contains the spatial boundaries of the associated geometry nodes, thus the scene node is the implementation ofthe abstract scene entity. In the following, three different approaches to generate a scene hierarchy starting from given models are presented. To measure the decomposition quality, we need to reduce the degrees offree- dom of the used occlusion culling approach. Therefore, we employ OpenGL- assisted view-frustum culling Bartz et aI., 1999 and the Hewlett-Packard oc- clusion culling flag Scott et al., 1998. First, view-frustum culling is performed hierarchically on the scene tree top-down; the scene nodes of the tree are tested for intersection with the view-frustum. All the nodes which have a non-empty intersection are located within the view-frustum and may contain visible sub- structures. Consequently, we proceed with the view-frustum test, until we reach the leaf levels of the scene tree. In the second step, all the remaining leaf nodes are depth-sorted according to their associated BBs and tested for occlusion using the HP occlusion culling flag. The actual geometry of the front-most leaf node is rendered into the empty framebuffer without testing. All further rendering is performed in an interlocked fashion. First, we render the BB of the next-closest leaf node in the HP occlusion mode which does not contribute to the framebuffer. If this BB would have a visible contribution to the framebuffer, the HP occlusion culling flag is set TRUE by the graphics hardware, and we render the associated geometry in the standard render mode. Ifthe BB does not have any contribution (flag is set FALSE), this BB and all the associated geometry is not visible and therefore it is culled.
  • 23.
    Efficient occlusion cullingforlarge model visualization 'r~" coat =1·S, + 4·S, = 1148.73 'W iBU'~ • cost = 3·S. + 2·S. =873.07 '~~~ cost =2·S. + 3·S. =1644.681 'w~- • cost =4·S. + 1·S. = 1005.12 11 Figure 2. Algorithm p-HBVO: First, polygons are sorted along every coordinate axis (a), then polygons are partitioned into two sub-sets of neighboring polygons. Every decomposition is evaluated by a cost function estimating the rendering costs (b). This evaluation is repeated for every coordinate axis. The partition with minimal costs defines the decomposition of the scene (c). Finally, this process is continued recursively. 3.2 Polygon-based Hierarchical Bounding Volume Optimization (p-HBVO) Our polygon-oriented Hierarchical BoundingVolume Optimization (P-HBVO) method decomposes recursively a set of polygons into two smaller sets of poly- gons. The selection of the optimal scene decomposition is computed by mini- mizing a cost function approximating the expected rendering costs for all poten- tial decompositions. At each decomposition level, the individual polygons are assigned to exactly one scene entity of that level. Consequently, no polygons are split, hence no new polygons are generated by this method. First, the polygons are sorted along all coordinate axes where the barycenter of each polygon serves as sorting key. Based on these three ordered lists, we evaluate the potential binary decomposition sets along each axis for each entry in the respective list by splitting the sorted list of polygons into a left and right part. While most otherdecomposition schemes - ie., the median cut scheme Kay and Kajiya, 1986 - use a pre-defined decomposition position, we evaluate for each possible decomposition set a cost function which approximates the costs of rendering the tree node which holds the decomposition sets as direct child nodes, including the costs of visibility tests using their respective bounding volumes (Fig. 2). The decomposition process is repeated recursively on the two new scene entities, one containing all left polygons, the other one contains all right polygons. The recursions terminates when either the number of polygons, or the scene depth exceeds one of the two pre-defined parameters of the maximum number of triangles per entity, or the maximum tree depth. These parameters are specified by the user and supplied at the start of the decomposition process.
  • 24.
    12 THE STATEOF THE ARTIN DATA VISUALIZATION This cost function is identical to one which has already been successfully applied in ray tracing environments Muller and Fellner, 1999, since the objec- tive is the same; both algorithms traverse the scene graph in a similar way to determine visibility. The costs of a scene entity H, with children Hleft and Hright, is given by: S(Hleft) . IH 1+ S(Hright) . IH· I S(H) left S(H) nght where • IHI is the number of polygons within hierarchy H, • S(H) the surface area of the BB associated to sub-scene H, and • axis E {X, Y, Z}. By combining two (three) binary tree levels to a quad-tree (octree), we can reduce the tree depth which in tum decreases the number of inner nodes oc- clusion tests. Overall, this algorithm generates well balanced scene trees with respect to their polygon load. Furthermore, polygons of individual objects are detected and clustered together. Optimal culling performance was achieved with finer decompositions (implemented by merging neighboring tree levels), which usually leads to higher culling costs, and hence lower rendering rates. 3.3 Octree-based Regular Space Decomposition (ORSD) While the previous approach is able to handle arbitrary sets of polygons, some data sources inherently generate regular decompositions which can be exploited at much lower cost. Uniform gridded datasets of MarchingCubes isosurfaces from MRI or CT scanners (i.e., ventricular system dataset), consists of a set of sample values (voxels), arranged on an uniform grid. A cube ofeight neighboring voxels is called a cell, where cells with a non-empty intersection with the selected isosurface are called relevant cells. The Octree-basedRegular Space Decomposition method (ORSD) uses a cell- based (voxel-based) evaluation criterion, where the number of relevant cells (relevant cell load or RCL) controls the decomposition process. This criterion is only a rough approximation of the actual number of extracted polygons, considering that each relevant cell represents between one and five triangles of the isosurface. In our experiences however, RCL turned out to be sufficiently accurate (Figure 3c visualizes one of the generated scene trees, where the drawn BBs are bounding the actual geometry, not the respective octant volume). After the construction of the entire octree, the RCL of each octant is already calculated. Subsequently, the octree is traversed recursively, starting with the superblock. Ifthe RCL is above auser-specifiedthreshold, the blockis classified
  • 25.
    Efficient occlusion cullingforlarge model visualization 13 as a scene node, thus being further decomposited into its child blocks. In the other case, the block is considered as a leaf node. The associated relevant cells - at the bottom level of the octree - contain the polygons of the isosurface, which are assigned to that leaf node. This decomposition process results in a hierarchy of blocks, where the leaf nodes contain the actual geometry (see Section 3.1). Overall, ORSD is a simple but efficient decomposition scheme which gener- ates an adequate polygon load balance and BB sizes. As shown in the results, the indirect evaluation method (RCL instead of number of polygons) does not adversely affect the occlusion culling performance. However, ORSD is limited to uniform grid datasets. 3.4 SGl's OpenGL Optimizer (OPT) SGl's OpenGL Optimizer (OPT) is a C++ toolkit for CAD applications that provides scene graph functionality for handling and visualization oflarge polyg- onal scenes. The decomposition method realized in OPT is similar to the con- struction of an octree; each scene entity is split into eight equally sized scene entities. This process is repeated recursively, until a certain threshold criterion for the iterated decomposition is reached. Octree-based spatial decomposition is a simple and efficient scheme. However, the OPT scene organization mecha- nism decomposes space not by simply bisecting edges of a cube, as in an octree, but by choosing decomposition planes so that the rendering loads of the result- ing parts are similar. As a result, the amount of geometry in each scene entity on each side of the cutting plane is approximately the same. Polygons which are split due to the decomposition are distributed to the respective scene entities. The main parameters that can be used to control the decomposition are hints for the lowest and highest amount of triangles (trimin, trimax ) in each scene entity at the leaf-level of the scene hierarchy. However, the decomposition algorithm only tries to meet these criterion but is not bound to it. In general, OPT generates scene hierarchies with a well-balanced polygon load. However, the BBs of the scene entities are less suited for occlusion culling applications, because the cost function determining the scene entities is obviously not optimized with respect to the volume or the screen-space area of the BBs. We observed that the right-most branch of the scene tree frequently contained large subsets (BB volume size) of the model, even in the lower tree levels. 3.5 Evaluating the Scene Organization Quality In this section, we discuss the efficiency ofthe decomposition algorithms with respect to their occlusion culling-based rendering performance. All measure- ments are performed on an HP B180/fx4 graphics workstation. The different
  • 26.
    14 THE STATEOF THE ARTIN DATA VISUALIZATION polygonal datasets (see Table 2) represent typical scenarios of different appli- cation areas. Their scene trees only contain individual polygons (triangles) in order to evaluate a comparable scenes. Two of the datasets are examined in more detail. Ventricular System Cathedral City Grid Type Unifonn Unstructured Unstructured Source MRI CAD Modeler #Triangles 270,882 416,763 1,408,152 Frame-rates/[fps] No Culling 4.6 3.8 0.9 p-HBVO 12.3 12.4 14.0 OPT 13.6 7.8 11.8 ORSD 15.3 n.a. n.a. Render-rates/[%] p-HBVO 16.0 30.0 0.1 OPT 19.7 30.1 3.6 ORSD 22.4 n.a. n.a. Occlusion Time/[ms] p-HBVO 30 4 27 OPT 16 54 33 ORSD 11 n.a. n.a. Table 2. Scene overviews; as gold standard for the speed-up due to occlusion culling, we , show the frame-rate and render-rates for the datasets with and without culling (view-frustum and occlusion). ORSD requires MarchingCubes-generated scenes, which are available only for the ventricular system. Occlusion timelists the costs required for occlusion culling (no view-frustum culling). Scene trees of different decomposition granularities are evaluated for the respective costs of view-frustum culling, occlusion culling, and rendering (in frame-rate) of the not occluded geometry. Here, we present only culling and rendering performance on the scene trees with the best rendering performance. Culling performance is expressed as render-rate, which gives the percentage of the geometry determined not occluded from the total scene geometry. More detailed information on the evaluation can be found in MeiBner et aI., 1999. Cathedral Dataset: This dataset represents the interior of a single gothic cathedral (in contrast to Section 2.3), designed with a CAD system (see Table 2). Occlusion is limited to small parts of the model, because a large share of the polygons are visible from most view points within the model. Figure 3a shows a very fine granular decomposition of the cathedral model using the p-HBVO approach which adapts very nicely to the structures of the model, such as pillars and arcs. In contrast, the decomposition generated by OPT (b) introduces very large BBs, which do not adapt properly to the actual geometry.
  • 27.
    Efficient occlusion cullingfor large model visualization 15 ~ ~ II q II d!:: = >- - (a) (b) (c) (d) Figure 3. Cathedral and ventricular system BB hierarchies generated by (a,d) p-HBVO, (b) OPT, (c) ORSD/OPT; the arts and pillars of the cathedral are well detected by p-HBVO (a); OPT only used a regular spatial decomposition (b). ORSD and OPT however, generated identical results for the ventricular system dataset (c). The p-HBVO approach performed best on this dataset (see gnuplots on CDROM). This is due to the low culling costs, compared to OPT (see Table 2 and also MeiBner et al., 1999). The BBs of OPT require a significantly higher time for occlusion culling compared to p-HBVO, which reduced the frame-rate severely. This effect is reduced, however, due to camerapath locatedcompletely within the cathedral, thus limiting potential occlusion anyway. Ventricular System Dataset: The first dataset is a polygonal model of the isosurface representing the ventricularsystem ofthe human brain extracted from an MRI scan. We explore the dataset by moving through the lower part (Cisterna Magna) of the polygonal model. Most of the model structures through-out the walk-through are located within the view-frustum, while the structures with the largest number of polygons (located in the upper part or lateral ventricles) were not visible due to occlusion. All polygons of this model are aligned on the uniform cell grid and are of approximately the same size. All three adapted algorithms were able to detect this "natural" decomposition boundaries; only OPT generated approximately 15% additional polygons due to splitting operation between the grid points. Table 2 (and gnuplots on CDROM) shows frame-rate and render-rate of the evaluated algorithms. The most interesting detail is the low amount of time consumed by occlusion culling by ORSD, due to its coarse decomposition. The render-rate of p-HBVO was approximately 25% better than the render- rate of the ORSD approach. However, the finer decomposition (see Fig. 3) introduced additional culling costs twice as much as for ORSD, resulting in a lower frame-rate (see Table 2.
  • 28.
    16 THE STATEOF THE ARTIN DATA VISUALIZATION Summary Overall, the adapted scene organization approaches were able to generate decompositions with faster rendering due to higher cull performance. This was achieved by reducing culling costs or by reducing the render-rate of the dataset. On uniform grid datasets, the basic ORSD approach produced a model subdivision which performed best, mostly due to the low time spent to establish occlusion or non-occlusion. Generally, we observed that models with high occlusion do not require very fine decomposition (ventricular system dataset, p-HBVO vs. ORSD). On the other hand, a fine decomposition pays off ifinterior (thus completely occluded) objects are clustered in a scene entity (city dataset, p-HBVO vs. OPT). In contrast, models with low occlusion (cathedral dataset) can benefit from finer decompositions, if the culling costs loss is only a fraction of the rendering costs gain (see city dataset, p-HBVO). Note that the p-HBVO approach builds a binary scene tree. This usually results in deeper trees, hence more intermediate scene entities. This increases the time spent for occlusion culling significantly. Once this binary tree was re-built into a quad-tree representation, we achieved a frame-rate increase of approximately 20%. To summarize, we always achieved a speed-up due to occlusion culling- based rendering. Especially with the highly occluded city dataset, we achieved a speed-up of 15.6 after culling of 99.9% of the model geometry with the p-HBVO algorithm. On the ventricular system dataset, the ORSD approach accomplished the best results; 77.6% of the geometry was culled, due to view- frustum and occlusionculling. This culling performance resulted in aframe-rate speed-up of 3.3. 4. Conclusions and Future Work In this chapter, we presented OpenGL-assisted occlusion culling techniques and compared several methods for the generation of a hierarchical scene orga- nization which can significantly increase the rendering performance (in fps). Other techniques include efficient scene traversal strategies which can impact the occlusion culling efficiently severely. However, there are still many other visibility related techniques to improve the interactive visualization of large models. Most of the occlusion culling approaches use a simple axis-aligned bounding box to approximate the geom- etry of a scene entity. Unfortunately, this approximation frequently has a much larger screen-space area than the actual geometry, resulting in more stated vis- ibility hits than necessary. Employing better convex hull techniques has the potential to reduce these false positive visibility hits.
  • 29.
    Efficient occlusion cullingforlarge model visualization 17 Furthermore, the quantization of visibility (how many scene entity pixels are visible) plays an important role in dealing with these kinds of "slightly visible" entities. Lower levels of detail of this entity could be used instead. Notes 1. The occlusion tests are performed for each scene hierarchy element separately within one frame. Therefore, an element can be occluded by an element tested/rendered later. 2. Other buffers could be used as well, but the stencil buffer, as an integer buffer, is often the least used buffer and has on some graphics systems an empirically measured better read performance than the other buffers. 3. Basically, this scheme implements a sampling of the virtual occlusion buffer, where .am~lin9 th of each BB is read in each iteration. In other words, the algorithm needs sampling iterations to fully read the entire BB. References Airey, J., Rohlf, J., and Brooks, F. (1990). Towards Image Realism with Interactive Update Rates in Complex Virtual Building Environments. In Proc. ofACM Symposium on Interactive 3D Graphics. Barequet, G., Chazelle, B., Guibas, L., Mitchell, l, and Tal, A. (1996). BOXTREE: A Hierar- chical Representation for Surfaces in 3D. In Proc. ofEurographics. Bartz, D., MeiBner, M., and HUttner, T. (1998). Extending Graphics Hardware for Occlusion Queries in OpenGL. In Proc. ofEurographics/SIGGRAPH Workshop on Graphics Hardware, pages 97-104,158. Bartz, D., MeiBner, M., and HUttner, T. (1999). OpenGL-assisted Occlusion Culling of Large Polygonal Models. Computers and Graphics - Special Issue on Visibility - Techniques and Applications, 23(5):667--679. Bartz, D. and Skalej, M. (1999). VIVENDI - A Virtual Ventricle Endoscopy System for Virtual Medicine. In To appear in Proc. ofEG/IEEE Symposium on Visualization. Fuchs, H., Kedem, Z., and Naylor, B. (1980). On Visible Surface Generation by a Priori Tree Structures. In Proc. ofACM SIGGRAPH. Garlick, B., Baum, D., and Winget, l (1990). Interactive Viewing of Large Geometric Databases Using Multiprocessor Graphics Workstations. In SIGGRAPH'90 course notes: Parallel AL- gorithms and Architectures for 3D Image Generation. Gottschalk, S., Lin, M., and Manocha, D. (1996). OBBTree: A Hierarchical Structure for Rapid Interference Detection. In Proc. ofACM SIGGRAPH. Greene, N., Kass, M., and Miller, G. (1993). Hierarchical Z-Buffer Visibility. In Proc. ofACM SIGGRAPH. Hong, L., Muraki, S., Kaufman, A., Bartz, D., and He, T. (1997). Virtual Voyage: Interactive Navigation in the Human Colon. In Proc. ofACM SIGGRAPH. Kay, T. and Kajiya, l (1986). Ray Tracing Complex Scenes. In Proc. ofACM SIGGRAPH. MeiBner, M., Bartz, D., GUnther, R., and StraBer, W. (2001). Visibility Driven Rasterization. Computer Graphics Forum, 20(4):283-294. MeiBner, M., Bartz, D., HUttner, T., MUller, G., and Einighammer, J. (1999). Generation of Subdivision Hierarchies for Efficient Occlusion Culling of Large Polygonal Models. Tech- nical Report WSI-99-13, ISSN 0946-3852, Dept. of Computer Science (WSI), University of TUbingen.
  • 30.
    18 THE STATEOF THE ARTIN DATA VISUALIZATION Milller, G. and Fellner, D. (1999). Hybrid Scene Structuring with Application to Ray Tracing. In Proc. ofICVC'99 (to appear). Scott, N., Olsen, D., and Gannett, E. (1998). An Overview of the VISUALIZE fx Graphics Accelerator Hardware. The Hewlett-Packard Journal, (May). SGI (1997). Optimizer Manual. Technical report. SGI (1999). Silicon Graphics 320, Visual Workstation. Specijiaction document, available from http://visual.sgi.comlproducts/320lindex.html. Snyder, J. and Lengyel, J. (1998). Visibility Sorting and Compositing without Splitting for Image Layer Decompositions. In Proc. ofACM SIGGRAPH. Teller, S. and Sequin, C. (1991). Visibility Pre-processing for Interactive Walkthroughs. In Proc. ofACM SlGGRAPH. Woo, M., Neider, J., and Davis, T. (1997). OpenGL Programming Guide. Addison Wesley, Reading, Mass., 2nd edition. Zhang, H., Manocha, D., Hudson, T., and Hoff, K. E. (1997). VisibilityCulling Using Hierarchical Occlusion Maps. In Proc. ofACM SIGGRAPH.
  • 31.
    LOCALIZING VECTOR FIELDTOPOLOGY Gerik Scheuermann, Bernd Hamann, and Kenneth 1. Joy Center of Image Processing and Integrated Computing, Department of Computer Sci- ence, University of California, Davis, CA 95616-8562, U.S.A. scheuer!Ducdavis.edu, {hamann,joy}@cs.ucdavis.edu Wolfgang Kollmann Department of Mechanical and Aeronautical Engineering University of California, Davis, CA 95616, U.S.A. wkoiimann!Ducdavis.edu Keywords: vector field, flow, topology, visualization Abstract The topology of vector fields offers a well known way to show a "condensed" view of the stream line behavior of a vector field. The global structure of a field can be shown without time-consuming user interaction. With regard to large data visualization, one encounters a major drawback: the necessity to analyze a whole data set, even when interested in only a small region. We show that one can localize the topology concept by including the boundary in the topol- ogy analysis. The idea is demonstrated for a turbulent swirling jet simulation example. Our concept works for all planar, piecewise analytic vector fields on bounded domains. Introduction Vector fields are a major "data type" in scientific visualization. In fluid me- chanics, velocity and vorticity are given as vector fields. This holds also for pressure or density gradient fields. Electromagnetics is another large applica- tion area with vector fields describing electric and magnetic forces. In solid mechanics, displacements are typical vector fields under consideration. Sci- ence and engineering study vector fields in different contexts. Measurements and simulations result in large data sets with vector data that must be visual- ized. Besides interactive and texture-based methods, topological methods have been studied by the visualization community, see Helman and Hesselink, 1990, Globus et aI., 1991 for example. In most cases, the scientist or engineer is in- F. H. Post et al. (eds.), Data Visualization © Kluwer Academic Publishers 2003
  • 32.
    20 THE STATEOF THE ART IN DATA VISUALIZATION terested in integral curves instead of the vector field itself. Since the behavior of curves differs, a natural approach is to study classes of equivalent curves. This approach reduces the information concerning all curves to the information about the structural changes of curves. Vector field topology is one answer to this question. First, one detects all stationary curves, i. e., the critical points (or zeros) in the vector field. Then, one finds all integral curves where the behav- ior is different between the neighboring curves. These "separatrices" are then visualized together with the critical points, providing a detailed description of the behavior of the integral curves. A major drawback of topology-based visualization is the fact that one must analyze the whole data set. In many situations, a scientist or engineer would like to understand the behavior of curves in a limited area only. Due to the global nature of topology, one analyzes, up to now, the whole data set to find all separatrices in this area. In this paper, we show that this is not necessary. By a strict topological analysis of the boundary (of the local region of interest), we find all structural changes of the integral curves in any bounded region without touching data outside the region. We start by providing a rigorous mathemat- ical treatment of these concepts. We continue with algorithmic details and conclude with theoretical and practical examples. 1. Vector Field Topology Scientific visualization is concerned with bounded vector fields. in most cases. In this paper, we deal only with two-dimensional vector fields, and we provide the definitions only for this case. Definition 1.1 A planar vector field is a map v : R2 :J D -+ R2, X f-t v{x}. D is called domain ofthe vectorfield. (1) The domain D is usually given as a grid consisting of cells with the vector data either given at the vertices, edges or cell centers. An interpolation method is used to create a continuous vector field description for the whole domain. For this reason, we assume that the vector field consists of a finite number of "analytic pieces" (one for each cell) that are glued together along the grid edges, thus defining a continuous vector field. As mentioned, a scientist or engineer is often more interested in the integral curves. Definition 1.2 An integral curve through a point xED of a vector field v : R2 :J D -+ R2 is a map (2)
  • 33.
    Localizing vectorfield topology where cx(O)Xo, Cx(t) = v (c(t)) , Vt E I. 21 (3) (4) The theory of ordinary differential equations states that integral curves exist and are unique if the vector field is continuous and satisfies the Lipschitz con- dition. This is the case for all interpolation schemes used in visualization. Topology is especially of interest when concerned with the asymptotic behav- ior of integral curves. "Limit sets" is the term used for start and end of integral curves. Definition 1.3 Let v : D -t R2 be a Lipschitz-continuous vector field and c : R -t D an integral curve. The set is called w-Iimit set of c. The set {a E DI3(tn)~=o C R, tn -+ -00, lim c(tn) -+ a} (6) n-too is called a-limit set of c. Remark 1.4 In the case of a curve c leaving the domain, we consider the last boundary point as its w-limit set. In the case ofa curve c starting at the boundary, we call its first point on the boundary its a-limit set. We limit the types of limit sets in this paper to critical points and the inflow and outflow parts of the boundary, since these are the most common cases. Definition 1.5 A critical point ofv : D -t R2 is a point p E D with v (p) = O. If all integral curves in a neighborhood of the critical point p have the point p as a-limit set, the point p is called a source. If all integral curves in a neighborhood ofthe critical point p have the point p as w-limit set, the point p is called a sink. Ifa positive finite number ofintegral curves have the point p as a- or w-limit set, we call the point p a saddle. The boundary is split into inflow, boundary flow, and outflow regions. Definition 1.6 Let D C R2 be a compact domain ofa Lipschitz-continuous vectorfield v : D -t R2. Let dEaD be a point on the boundary. We define the following three entities: (1) The point d is called an outflow point if every integral curve through d ends at d and there exists an integral curve through d that does not
  • 34.
    22 THE STATEOF THE ARTIN DATA VISUALIZATION contain another point of aD. The set of all outflow points is called outflow set. (2) The point d is called an inflow point ifevery integral curve through d starts at d and there exists an integral curve through d that does not contain another point ofaD. The set ofall inflow points is called inflow set. (3) The point d is called a boundary flow point ifthere exists an integral curve ad : (-E, E) -t D, E> 0, through d lying completely inside aD. The set ofall boundary flow points is called boundary flow set. A point dEaD that is not an inflow, outflow, or boundary flow point is called boundary saddle. Each integral curve has an a limit set and an w limit set. We can also construct the union of all integral curves that have a particular a or w set. These basins are at the center of topology analysis, and visualization, as we will see. Definition 1.7 Let v : D -t R2 be a Lipschitz-continuous vector field and A c D a subset. The union ofall integral curves ofv that converge to A for t -t -00 is called a-basin of A, denoted by Ba(A). Let neD be a subset. The union ofall integral curves of v that converge to nfor t -t 00 is called w-basin of n, denoted by Bw(n). Since integral curves exist through every point, are unique, do not cross and have a single a- or w-basin, we obtain a description of the domain D as a disjoint union of a-basins and as a disjoint union of w-basins. Theorem 1 Let D C R2 be a compact subset. Let v : D -t R2 be a Lipschitz- continuous vector field. Let aI, ... ,aj be the sources, Sl, ... ,Sk be the sad- dles, bl,' .. ,bp be the boundary saddles, and Zl, ••• ,Z/ be the sinks. Further- more, let 11, ... ,1m be the inflow components, and 01, ... ,On be the outflow components. If we assume that there are no other a- and w-limit sets, then D can be decomposed into a-basins, j m I p n k D = UBa(ai)UU Ba(Ii)UU Ba(Si)UU Ba(bi)UU OiUU{Zi}' (7) i=l i=l i=l i=l i=l i=l The region D can also be divided into w-basins, k n i p m j D = UBw(Zi)UU Bw(Oi)UU Bw(Si)UU Bw(bi)UU IiUU{ai}. (8) i=l i=l i=l i=l i=l i=l The topology of a planar vector field is now defined as the union of all con- nected intersections of a-basins with w-basins.
  • 35.
    Localizing vectorfield topology23 Definition 1.8 Let v : R2 :J D -t R2 be a Lipschitz-continuous vectorfield. Its topological information consists oftwo parts: (i) All a- and w-limit sets including the connected inflow and outflow com- ponents ofthe boundary and the boundary saddles and (ii) all connected components ofthe intersections ofa-basins with w-basins. The idea of topology-based visualization is to extract this information from the data automatically and present it to the user for interactive data exploration. 2. Topological Analysis We want to extract the topological information of a vector field given by a grid and vector values associated with vertices, edges or cells. After defining an interpolation scheme, we have a Lipschitz-continuous vector field in the sense of the previous section. The next step is to find the limit sets. Since we limit their types to critical points and parts of the boundary, we have to consider only these. Critical points are zeros of the vector field, so we must determine all zeros in each cell. Furthermore, we have to analyze their types to find sources, sinks, and saddles. This is necessary to find the basins in the second step. Our vector field is at least CI-continuous inside the cells, so we can compute the derivative at critical points inside cells. This allows a simple classification in most cases. Theorem 2 Let v : R2 :J D -t R2 be a vectorfield and p a critical point. If the derivative Dv : D -t R2 X R2 is defined at p and has a determinant dif- ferent from zero, the following classification ofthe critical point can be made: (a) Ifthe real parts ofboth eigenvalues ofDv(p) are positive, p is a source. (b) If the real parts ofboth eigenvalues ofDv(p) are negative, p is a sink. (c) If the real parts ofthe two eigenvalues of Dv(p) are ofdifferent signs, p is a saddle point. There are four integral curves reaching the saddle in the directions associated with the two eigenvalues. If the assumptions in the previous theorem are not satisfied, one has to analyze the behavior of the integral curves in the neighborhood of the critical points. For an arbitrary interpolation scheme, this may be a difficult and expensive operation. For linear interpolations, a description is given in Tricoche et al., 2000. Since the analysis of critical points has been described before, we do not discuss details here. The second part is the analysis of the boundary. A general boundary consists of several smooth edges (often line segments), continuously connected at vertices defining one or more closed curves. We consider first the case with a unique normal at the boundary point. This is valid inside the edges and in case of aI-continuous connections of the edges.
  • 36.
    24 THE STATEOF THE ARTIN DATA VISUALIZATION Lemma 2.1 Let D C R2 be a compact domain with a boundary aD consisting of a finite number of smooth curves (edges) so that no more than two edges have a point in common. Let v : D -+ R2 be a Lipschitz-continuous, piecewise smooth vector field. Let p E aD be a point on the boundary with v(p) 1= 0 such that there is a unique outward directed normal n(p) E R,2 ofthe boundary at p. Then we have to considerfour cases: (1) Ifv (p) . n(p) > 0 holds, p is an outflow point. (2) Ifv (p) . n(p) < 0 holds, p is an inflow point. (3) Ifv(p) . n(p) = 0 holds and we have outflow (inflow, boundary flow) on both sides ofp, p is an outflow (inflow, boundary flow) point. (4) If v(P) . n(p) = 0 holds and we have different behavior on the two sides ofp, p is a boundary saddle. Ifwe have inflow on the side pointed to by v(p), we have to calculate a'separatrix in this direction. If we have outflow on the side pointed to by -v(P), we have to calculate a separatrix in this direction. Lemma 2.1 is illustrated in Figure 1. In an implementation, this is quite ab- stract, since the last two expressions cannot be tested directly and it might seem difficult to test all points on one edge. The strategy is to find all zeros of the term v(d) . n(d) and check the behavior between the closest such points and p. For all common interpolation schemes, one can use standard numerical zero search and analysis methods for this problem. The analysis of boundary ver- tices is somewhat more involved, since one has to look at the geometry of the boundary at the vertex. We discuss the cases of a convex and a concave vertex separately in the next two lemmata. Lemma 2.2 Let D C R2 be a compact domain with a boundary aD consisting of a finite number of smooth curves (edges) so that no more than two edges have a point in common. Let v : D -+ R2 be a Lipschitz-continuous, piecewise smooth vector field. Let p E aD be a point on the boundary between two smooth edges. There are two normals m, n E R2 at p with respect to the edges. We assume that p is a convex corner, i. e. there is a convex neighborhood ofp in D. Then we have to considerfive cases: (Al) If (v(P) . m) (v(p) . n) < 0 holds, the integral curve through p in D contains only p. (A2) If (v (P) . m) (v (P) . n) > 0 holds, p is an outflow or inflow point, de- pending on the common sign ofthe products. (A3) Ifv(p)·m = Oandv(o)·m > oholds for points 0 E aD arbitrary close to p on the first neighboring edge, p is a outflow point.
  • 37.
    Localizing vectorfield topology25 (A4) Ifv(P) . m = 0 and v(o) . m = 0 holds for points 0 E aD arbitrary close to p on the first neighboring edge, p is a boundary saddle. (The integral curve through p stays on the first edge and leaves D at p, so one does not have a separatrix entering the interior ofD at p.) (A5) Ifv(p) . m = 0 and (v(o)· m) < 0 holds for points arbitrary close to p on the first neighboring edge, p is a boundary saddle. (The integral curve through p consists only ofp, so one has no separatrix entering the interior ofD at p.) An analysis ofthe cases with v(p) . n = 0 yields the same results. Lemma 2.2 is illustrated in Figure 2. The last case deals with a concave vertex. Lemma 2.3 Let D C R2 be a compact domain with a boundary aD consisting of a finite number of smooth curves (edges) so that no more than two edges have a point in common. Let v : D -+ R2 be a Lipschitz-continuous, piecewise smooth vector field. Let p E aD be a point on the boundary between two smooth edges. There are two normals m, n E R2 at p with respect to the edges. We assume that p is a concave corner, i. e. there is a convex neighborhood of barR2 - D. Then we have to considerfive cases: (CI) If ( (v(p) . m) (v(p) . n)) > 0 holds, p is either an outflow or an inflow point, depending on the common sign ofthe products. (C2) If ((v(p) . m) (v(p) . n)) < 0 holds, p is a boundary saddle. (The inte- gral curve through p is a separatrix that has to be integrated backward andforward in time.) (C3) Ifv(p), m = 0 and v(o)· m > 0 holds for points 0 E aD arbitrary close to p on the first neighboring edge, the integral curve through p is a separatrix that has to be integrated backward andforward in time. (C4) If v(P) . m = 0 and v(o) . m < 0 holds for points 0 E aD arbitrary close to p on the first neighboring edge, p is an inflow point. (C5) Ifv(p)·m = 0 and v(o)·m = 0 holds for points 0 E aD arbitrary close to p on the first neighboring edge, the integral curve through p stays on one edge and enters the interior of D at p, so one has to calculate one part ofthe curve. An analysis of the cases where v(p) .n = 0 holds, yields the same results. The situation of the previous lemma is illustrated in Figure 3. As before, the algo- rithm determines all zeros of v(d) .m(d) and v(d) .n(d) on the two edges, and analyzes the behavior of the points between the zeros closest to p. These lem- mata allow to extract the first part of the topology information. The description
  • 38.
    26 THE STATEOF THE ARTIN DATA VISUALIZATION of the basins uses an important fact: The a basins belonging to sources and inflow components are open two-dimensional subsets of D. The w basins be- longing to sinks and outflow components are also open two-dimensional sub- sets of D. Therefore, the boundaries of their intersections must either belong to one-dimensional basins or be curves through boundary saddles. The only limit sets with one-dimensional basins, under our assumptions, are saddles. There- fore, all intersections can be shown by drawing all one-dimensional basins of saddles, i. e., the integral curves starting or ending there and the integral curves through boundary saddles. This provides the second part of the topological in- formation. We focus on the fact that one can do this analysis on any bounded region of our data set and obtain useful information. The next two sections show applications and compare local and global topology. Up to now, visualization has not considered much boundary analysis since, in many applications, the boundary has a rather simple flow structure. Parts are set to zero, defined as outflow or inflow, so that there are no or only a few basin borders missing in global topology. This changes when "taking out" a region from a rather complex vector field. 3. Analytic Examples The considerations from the last section aim at an analysis of vector field topology including the boundary. The example provided in this section shows the effect of this analysis on the understanding of topological vector field struc- ture. It is based on the study of vector fields given by polynomial equations. The construction of these fields is based on considerations based on Clifford algebra, see Scheuermann et aI., 1998 and Scheuermann, 1999. Figures 4-6 show unit vectors to indicate the orientation of separatrices and integral curves. Critical points are red, green, or blue. Red color indicates a saddle point, green color a source, and blue color a sink. The separatrices are drawn in blue, inte- gral curves are violet, and the boundaries of regions and domains are white. We start with a vector field containing two sinks and two sources in a rect- angular area. The conventional analysis, based on the separatrices starting at saddle points alone, will find no separating curves at all, so a scientist is left with the question of how the two sources and sinks interact. This can be seen in Figure 4. Since there exist integral curves from one source to both sinks, and also to the boundary, not all integral curves belong to the same open basin. We know that, as a result of the piecewise linear interpolation and the analytic structure of the original field, there are no additional critical points or more complicated structures involved (in this example). There are ten boundary sad- dles where the flow turns from inflow to outflow. By starting the construction of separatrices at these positions it is possible to determine the structure of the
  • 39.
    Localizing vectorfield topology27 flow. The result is shown in Figure 5. The whole rectangle is now divided into open basins with the same Q- and w-basin. Every integral curve in one of these basins starts and ends at the same critical point or connected component of the boundary. It is now easy to understand the interactions of the sinks and sources. As mentioned before, this example was constructed using an analytic field description. The structure of the entire field is shown in Figure 6. The small white box marks the domain of our example. There are three saddle points where 12 separatrices start. The importance of the saddles for the standard analysis is seen by comparing the result inside the rectangle with the result shown in Figure 4. 4. Application Example We have applied the local topology extraction to a vortex breakdown simula- tion. Vortex breakdown is a phenomenon observed in a variety of flows ranging from tornadoes to wing tip vortices (Lambourne and Bryer, 1961), pipe flows (Sarpkaya, 1971, Faler and Leibovich, 1977, Leibovich, 1984, Lopez, 1990, Lopez, 1994) and swirling jets (Billant et aI., 1999). The latter flows are impor- tant to combustion applications where they create recirculation zones with suf- ficient residence time for the reactions to approach completion. The example vector field contains 39909 data points and 79000 triangles. The piecewise lin- ear interpolation contains 703 simple critical points, creating a complex global topology. First, we used a rectangle, shown in Figure 7. The data in this rectan- gle was used to analyze the local topology. We extracted all critical points and determined all boundary saddles by analyzing the boundary of the rectangle. This resulted in the topological structure shown in Figure 8. One can see some of the additional separatrices starting at the boundary saddles; they separate regions of flow staying inside the boundary from outflow and inflow parts. No analysis of data outside the rectangle was used. The required computing time does only depend on the size of the region and is (nearly) independent of the size of the overall data set. It is possible to consider multiple regions of interest in the same data set to be analyzed independently. One may also use arbitrary polygons as bound- aries. This is demonstrated in our second analysis of the same jet data set for which we chose three regions, shown in Figure 9. One region covers a part of the backstream besides the main inflow jet. The second region shows a part of the rectangle we used before. Neither of these two regions contains critical points, which makes boundary analysis necessary. The third region shows the mixing of the jet and the fluid downstream. Figure 10 shows the first two re- gions in more detail. One can see clearly forward- and backward-facing flow. Without an analysis of the boundary, one obtains no separatrices due to the
  • 40.
    28 THE STATEOF THE ARTIN DATA VISUALIZATION lack of critical points inside the two regions. The third region is shown in more detail in Figure 11. Since the analysis is limited to a rather small area, it can be analyzed quickly. One can depict several separatrices spiraling around crit- ical points. The critical points inside these areas have Jacobians with complex conjugate eigenvalues, thus they are spirals; the real parts of the eigenvalues may have small absolute values, and a stream line in the neighborhood of the critical points approaches them very slowly. 5. Conclusions We have presented a method to analyze the local topology of arbitrary re- gions in 2D vector fields. Our method is based on the idea of extracting the critical points in the domain and examining the region's boundary. By de- termining the inflow, outflow, and boundary flow segments one can separate the domain into regions of topologically uniform flow. We have discussed the differences to a global topology analysis approach in theory and applications, demonstrating the relevance of our localized approach when applied to regions with complicated flow patterns on the boundary. This case is typical of most interesting regions inside a larger data set. Another important situation that we have studied is the absence of critical points in a region that provides interesting structure, like backward-facing flow. Our algorithm detects these areas and separates them from other parts of the flow leading to better visualizations of the local flow structure. Since the local topology analysis does not use any information outside a region of interest, it is very attractive when analyzing large data sets locally due to the signif- icant reduction in computing time. Nevertheless, it must be mentioned that the separatrices in the local topology may differ from global topology, since they depend solely on the inflow/outflow switches on the boundary. For fur- ther research, the inclusion of limit cycles in the local topology is an important issue. Acknowledgments This work was supported by the National Science Foundation under contracts ACI 9624034 (CAREER Award), through the LSSDSV program under contract ACI 9982251, and through the National Partnership for Advanced Computational Infrastructure (NPACI); the Office of Naval Research under contract NOOOI4- 91-1-0222; the Army Research Office under contract ARO 36598-MA-RIP; the NASA Ames Research Center through an NRA award under contract NAG2-1216; the Lawrence Livermore National Labora- tory under ASCI ASAP Level-2 Memorandum Agreement B341818 and under Memorandum Agreement B503159; the Lawrence Berkeley National Laboratory; the Los Alamos National Laboratory; and the North Atlantic Treaty Organization (NATO) under contract CRG.91l628. We also acknowledge the support of ALSTOM Schilling Robotics and SGl. We thank the Visualization and Graphics Research Group at the Center for Image Processing and Integrated Computing (CIPIC) at the University of California, Davis.
  • 41.
    Localizing vectorfield topology29 Billant, P., Chomaz, J., and Huerre, P. (1999). Experimental Study of Vortex Breakdown in Swirling Jets. Journal ofFluid Mechanics, 376:183 - 219. Faler, J. H. and Leibovich, S. (1977). Disrupted States of Vortex Flow and Vortex Breakdown. Physics ofFluids, 96:1385 -1400. Globus, A., Levit, C., and Lasinski, T. (1991). A Tool for Visualizing the Topology of Three- Dimensional Vector Fields. In Nielson, G. M., Rosenblum, L. J., editors, IEEE Visualization '91, IEEE Computer Society Press, Los Alamitos, CA, pages 33 - 40.. Helman, J. L. and Hesselink, L. (1990). Surface Representations ofTwo- and Three-Dimensional Fluid Flow Topology. In Nielson, G. M. and Shriver, B., editors, Visualization in scientific computing, IEEE Computer Society Press, Los Alamitos, CA, pages 6-13. Lamboume, N. C. and Bryer, D. W. (1961). The Bursting of Leading Edge Vortices: Some Observations and Discussion of the Phenomenon. Aeronautical Research Council R. & M., 3282:1- 36. Leibovich, S. (1984). Vortex Stability and Breakdown: Survey and Extension. AlAA Journal, 22:1192-1206. Lopez, J. M. (1990). Axisymmetric Vortex Breakdown. part 1. confined Swirling Flow. Journal ofFluid Mechanics, 221:533 - 552. Lopez, J. M. (1994). On the Bifurcation Structure of Axisymmetric Vortex Breakdown in a Constricted Pipe. Physics ofFluids, 6:3683 - 3693. Sarpkaya, T. (1971). On Stationary and Travelling Vortex Breakdown. Journal of Fluid Me- chanics, 45:545 - 559. Scheuermann, G. (1999). Topological Vector Field Visualization with Clifford Algebra. disserta- tion, Computer Science Department, University of Kaiserslautem, Kaiserslautem, Germany. Scheuermann, G., Hagen, H., and KrUger, H. (1998). An Interesting Class ofPolynomial Vector Fields. In Drehlen, M., Lyche, T., and Schumaker, L. L., editors, Mathematical Methodsjor Curves and Surfaces II, pages 429-436, Nashville. Tricoche, X., Scheuermann, G., and Hagen, H. (2000). A topology simplification method for 2d vector fields. In ErtI., T., Hamann, B. and Varshney, A., editors, IEEE Visualization 2000, IEEE Computer Society Press, Los Alamitos, CA, pages 359 - 366.
  • 42.
    30 THE STATEOF THE ARTIN DATA VISUALIZATION !II '" -I>' ... Figure 1. Regular vertex. Case (I): outflow point; case (2): inflow point; case (3): flow parallel to the boundary tangent - outflow on both sides of p; case (4) : flow parallel to the boundary tangent - outflow on the -v(p) side and inflow on the other side. ,AS' ~.(O) o Figure 2. Convex vertex. Case (AI): inflow and outflow around p; case (A2): outflow on both sides of p; case (A3): flow at vertex being parallel to one tangent - outflow around p; case (A4): boundary flow on one side - outflow on the other side; case (AS): flow at vertex parallel to one tangent, inflow on one side, and outflow on the other side. Inflow is marked green, outflow is marked blue, and boundary flow is marked red.
  • 43.
    Localizing vectorfield topology31 1<:)1 Figure 3. Concave vertex. Case eCI): outflow on both sides of p; case (C2): outflow on one side and inflow on the other side; case (C3): flow parallel to one tangent at vertex p, outflow on one side, and inflow on the other side; case (C4): flow parallel to one tangent at vertex p and inflow on both sides; case (CS): boundary flow on one side and inflow on the other side. Inflow and a-basins are colored green, outflow and w-basins are colored blue, and separatrices and boundary flow are shown in red color.
  • 44.
    32 THE STATEOF THE ARTIN DATA VISUALI7ATION Figure 4. Vector field containing two sources and two sinks. Figure 5. Local topology showing interaction of sources and sinks.
  • 45.
    Localizing vectorfield topology33 Figure 6. Global topology derived by considering entire field. Figure /. Rectangular region in jet data set and result of local topology analysis.
  • 46.
    34 THE STATEOF THE ART IN DATA VISUALIZATION Figure 8. Magnification of result of local topology analysis shown in Figure 7. Figure 9. Three regions in jet data set and respective results of local topology analysis.
  • 47.
    Localizing vectorfield topology35 Figure 10. Local topology analysis inside two regions without critical point Get data set). Figure 11. Local topology analysis result of highly complicated region (jet data set).
  • 48.
    FEATURE TRACKING WITH SKELETONGRAPHS Benjamin Vrolijk Faculty ofInformation Technology and Systems Technical University Delft P.O. Box 356, 2600 Al Delft, The Netherlands B.Vrolijk@its.tudelft.nl Freek Reinders MEDIS medical imaging systems P.O. BOX 384,2300 Al Leiden, The Netherlands FReinders@medis.nl Frits H. Post Faculty ofInformation Technology and Systems Technical University Delft P.O. Box 356, 2600 Al Delft, The Netherlands F.H.Post@its.tudelft.nl Abstract A way to analyse large time-dependent data sets is by visualization of the evo- lution of features in these data. The process consists of four steps: feature extraction, feature tracking, event detection, and visualization. In earlier work, we described the execution of the tracking process by means ofbasic attributes like position and size, gathered in ellipsoid feature descriptions. Although these basic attributes are accurate and provide good tracking results, they provide little shape information about the features. In other work, we pre- sented a better way to describe the shape of the features by skeleton attributes. In this paper, we investigate the role that the skeleton graphs can play in feature tracking and event detection. The extra shape information allows detection of certain events much more accurately, and also allows detection of new types of events: changes in the topology of the feature. Keywords: Data Visualization, Feature Extraction, Feature Tracking, Skeleton, Skeleton Graph, Graph Matching, Event Detection. F. H. Post et al. (eds.), Data Visualization © Kluwer Academic Publishers 2003
  • 49.
    38 THE STATEOF THE ARTIN DATA VISUALIZATION 1. Introduction The problem of analysing very large scientific data sets originated the field of scientific visualization. The size of data sets has grown rapidly in the past decade, in particular with data sets generated from simulations of highly dy- namic phenomena, such as time-dependent flows. Yet many visualization tech- niques, especially global field visualization techniques such as volume render- ing or iso-surfaces, do not scale easily to very large data sets, and thus are not very well suited to the analysis of time-dependent data sets. One solution to this problem is the approach called feature extraction, in which interesting phenomena (features) are automatically detected in large fields, and quantitatively described by computing attribute sets [van Walsum et aI., 1996]. This results in a quantitative description of the features, which can be used for visualization and further investigation. Examples of features in flow data are vortices, shock waves, and recirculation zones. An advantage of this approach is that we concentrate on the relevant phenomena and the amount of data to be handled is reduced by a factor of 1000 or more. Time-dependent data sets are often represented by a number of data fields (frames), one for each time step. If features are extracted from each frame separately, a correspondence between features in consecutive frames can be established, using the attribute sets. We call this process time tracking [Sam- taney et aI., 1994, Silver and Wang, 1996, Reinders et aI., 1999]. It allows us to visualize the development of these corresponding features over the total time interval of a simulation: motion paths, growth and shape changes can be shown. In these time histories, we can also detect interesting temporal changes (events), such as the birth of a new feature, the exit of a feature from the do- main, or events with multiple features, such as splitting into two or more parts, or merging of multiple features into one [Reinders et al., 2001]. Again, these events can be quantitatively described. For time tracking, we have used primary attribute sets of the features: centre position, volume, size, and orientation [Reinders et aI., 1999]. The determina- tion of these attributes is usually based on volume integrals of feature objects, and the accuracy and robustness ofthese attributes has been demonstrated [Rein- ders et aI., 1998]. The shape of a feature is described by a spatial distribution function, which gives a good estimate of the overall dimensions and orientation of a feature, but does not describe the feature's shape in any detail. For some purposes, the feature shape is important and must be quantified in more detail. In a previous paper [Reinders et aI., 2000], we have proposed the use of skeletons and distance transformations for a better quantification of the shape ofa class offeatures. A simplified skeleton can be represented as a graph, which can be used in combination with distance transformations to reconstruct
  • 50.
    Feature tracking withskeleton graphs 39 the basic 3D shape of a feature, and can also be used as an iconic object for visualization. In this paper we will investigate the role that these skeleton graph models can play in feature tracking and event detection. Generally, the tracking process will be guided by the primary attributes determined by volume integrals, but the skeleton graphs will permit detection of certain events with much higher accuracy. Also, the temporal development of feature shape is quantified in detail, and new types of events, such as changes in the topology of a feature, can be detected. The structure of the paper is as follows. In Section 2, the feature extraction process is summarized. In Sections 3 and 4, we describe feature tracking and event detection methods using skeleton graphs. In Section 5 some related work is discussed. We present some results in Section 6, including a comparison of integral properties and skeleton-based properties. We will then summarize and give future research directions in Section 7. 2. Feature extraction The process of feature extraction can typically be described by the following four steps: • data selection or segmentation: the parts of the data set are selected that are of interest. This can be done in many different ways, depending on the type of features to be detected. One general technique selects nodes in a grid by applying multiple thresholds to the data defined at each grid point, or quantities derived from the data [van Walsum et al., 1996]. In principle however, any segmentation technique that produces a set of spatially located or grouped data items can be used. • clustering: from the data items, coherent groups can be formed by build- ing clusters from spatially related items. This results in a number of clusters, which can be treated as distinct objects. • attribute calculation: for each cluster, a number of descriptive attributes are calculated, such as centre position, volume or orientation. • iconic mapping: the attributes of the clusters are mapped to the parame- ters of parametric icons, which can be easily visualized. We have often used volume integrals to compute the attributes of the features. This gives us the volume and the centroid of the features. By computing the eigenvalues and eigenvectors of the covariance matrix of the point positions, we can get an estimation of the size and orientation. These attributes can be used to create an ellipsoid representation of the features, for visualization. In the rest of this paper, we will also use the terms ellipsoid volume and ellipsoid
  • 51.
    40 E (a) E THE STATE OFTHE ARTIN DATA VISUALIZATION c • I I I I I Id I I I I - - - - -' - - - - - .. ~ ~ & (e) Figure 1. a) The topological node types. b) Adding a curve node. c) Adding a profile node. position, when we mean these attributes, computed by volume integrals. Because the ellipsoid representation does not give a real description ofthe shape of the feature, we have created another attribute set, to describe the shape in more detail. An algorithm to create a skeleton graph representation ofa feature has been developed and is described in detail in [Reinders et aI., 2000]. The algorithm first computes the skeleton of an object using a thinning tech- nique. This is a topology-preserving transformation, resulting in the central points of the object. Neighbouring points from this skeleton are connected to form a graph. Together with the position of each point, the minimum distance to the surface (distance transformation or DT) is recorded in the graph. The resulting graph can then be simplified. To describe the topology of the object, only three types of nodes are required (see Figure Ia): end (E), junction (J) and loop (L) nodes. End nodes have one edge, junction nodes have more than two edges and loop nodes have a topological edge to themselves. To describe the shape of the feature more accurately, two further types of nodes are introduced. The first is the curve node (see Figure Ib), for describing strongly curved features more accurately. The second is the profile node (see Figure Ic), for features where the surface is strongly curved. The numbers of curve and profile nodes that are added to the skeleton graph description, are dependent on user-provided tolerances. The final skeleton graph exactly describes the topology of the feature, and approximately describes the shape. The surface of the feature can be recon- structed with the DTs of the graph nodes. By representing the nodes by spheres with radius DT, and the edges by conical segments, the original surface is ap-
  • 52.
    Feature tracking withskeleton graphs 41 proximated. This representation can be used both for visualization and attribute calculation. The reconstructed shape is an inscribed object of the original shape, because the distance used is the minimal distance to the surface. Therefore, the attribute calculation will be less accurate than the volume integral calculation. We have performed a number of tests to determine the accuracy of these calculations; the results of these tests will be described in Section 6. 3. Feature tracking When features have been extracted in every frame of a time-dependent data set, still no motion information is available. To obtain this, we have to establish a frame-to-frame correspondence between features in successive frames. This is called the correspondence problem [Ballard and Brown, 1982]. There are several ways to solve this problem [Samtaney et aI., 1994, Silver and Wang, 1996, Reinders et aI., 2001]. Our algorithm is based on the assumption that features evolve predictably. Once a part of a path of a feature has been found, we assume we can make a prediction of the path into the next frame. We then compare the prediction with the real features in that next frame and search for a match. If one or more matches are found, we add the best match to the end of the path and continue into the next frame. For the prediction we simply use linear extrapolation. We assume for example, that if a feature moves a distance d from frame t - 1 to frame t, it will move the same distance from frame t to frame t + 1. A similar assumption is made for volume, orientation, etc. For the matching of a prediction with a feature, we need a way to determine a correspondence between two features. We use functions that compute a correspondence factor for each type of at- tribute. For the volume integral attributes, for instance, we have correspondence functions for the position and the volume (see Table 1). Correspondence criterion Position Volume Correspondence Junction Correspondence Jactor Table 1. Examples ofcorrespondence functions for feature tracking. P is position, V is volume, T is tolerance. When using the skeleton graph representations of features for tracking, we can use correspondence functions based on the topology ofthe skeleton graphs. For this, we could use, for example, a tolerant graph matching algorithm, as described in [Messmer and Bunke, 1998b]. However, because of the high time
  • 53.
    42 THE STATEOF THE ARTIN DATA VISUALIZATION and/or space complexity of these algorithms, we have created our own, more efficient special-purpose graph comparison algorithm. This algorithm chooses one node in the first graph and compares it with all nodes of the same type in the second graph. In the recursive function that compares both nodes, two arrays are used to keep track of the marked nodes in both graphs. If the number of edges from both nodes is equal, and the number of neighbouring marked nodes is equal, then both nodes are marked. Next, an unmarked neighbouring node in the first graph is chosen and compared with all unmarked neighbouring nodes in the second graph. This process is repeated until either all nodes in both graphs are marked or no more correspondences are found. In the first case, the two graphs are topologically equivalent, in the second case, the topologies differ. To make the comparison algorithm more efficient, we have created two more functions that are run before the recursive algorithm. The first function simply counts the numberofedges and topological nodes ofeach type in both graphs. If these numbers do not correspond, the graphs will certainly not be topologically equivalent. However, if the numbers are equal, further testing is necessary. The second function counts the types ofthe nodes each node is connected to, or equivalently, counts the types of connections (end-end, end-junction, etc.) in both graphs. Again, if the numbers do not correspond, the two graphs have different topologies. Otherwise, the recursive comparison algorithm is run to give the final answer. Note that we only test the topology of the skeleton graphs, not the geometry. Because the geometry ofthe skeleton graphs is based on tolerances provided by the user during the feature extraction process, it is possible that, for example, the number of curve nodes changes, while the shape of the feature hardly changes. The topology of a skeleton graph is more stable than the geometry, therefore we have decided to use only the topological information of the skeleton graphs in these correspondence functions. Note also, that it is possible that the shape of a feature changes significantly, although the topology of the feature remains the same. This is the case, for instance, when ajunction disappears on one side and at the same time ajunction appears on the other side. We do not detect these events, because for that we need a one-to-one mapping of the nodes and edges of two skeleton graphs. Because features evolve ( grow/shrink and move) anyway, it is very hard to compute such a correspondence. We have made one topology correspondence function that returns a boolean: there is no correspondence if the topology changes. A second correspondence function allows a certain number of topological changes, such as the addition of loops or edges.
  • 54.
    Feature tracking withskeleton graphs 43 Because in our test application 1 sometimes the topology of the features changes more than once within a few frames, we have decided not to use the topology information for feature tracking. We have found that using only the global attributes ofthe features in searching for continuing paths works very well. Therefore, we have decided also to use the position and volume correspondence functions from Table 1, when using skeleton graph descriptions of features for time tracking. Thus, we have to compute the position and the volume of a skeleton graph. Furthermore, we can compute another global attribute ofa skeleton graph: its total length. We compute the total length of a skeleton by adding the individual lengths of all edges of the graph. The correspondence function for the length of a skeleton graph is comparable to the function for the volume. The volume of a skeleton graph is computed by adding the volumes of all conical segments. The volume ofone segment is computed by using the formula for the volume of a conical frustum: I 2 2 V = 3'll'h(T! +TIT2 +T2 ), (1) with h the length of the edge and TI and T2 the DTs of the end nodes of the edge. To make the computation of the total volume more accurate, we add the volume of half a sphere for each end node of the skeleton. The position of a skeleton graph is defined to be the centre of gravity (COG) of the object, assuming a uniform density throughout the object. We can com- pute this by calculating the weighted average of the centres of gravity of the individual segments, using the segment volumes as weights. The COG of a conical frustum is located at COG = PI + h(P2 - pI), with PI and P2 the positions of the end nodes and ~ ~4T~ +4T~ - TI h = -'-.!.----- (2) (3) the relative position of the COG on the edge from Pl. For an edge with TI = T2, that is a cylinder-shaped edge, the COG is located exactly halfway, so h = 0.5. 4. Event detection When the continuing paths have been found, we can search for events in the evolution of the features. For instance, when a path ends, we would like to 1We use a 91 frame data set with turbulent vortex shUctures, obtained from a fluid dynamics simulation. Data courtesy D. Silver and X. Wang of Rutgers University.
  • 55.
    Another Random Documenton Scribd Without Any Related Topics
  • 56.
    have been farmore impatient with me, and might have made my life miserable. “God gave me a dull mind and a slow tongue; it took me a long time to grasp anything, and no one cared about the subjects that interested me. Beatrice... I wish now you had told me how I bored our friends; it would have been a kindness; but never mind that now; you did not like to give me pain. “What troubles me most is that all these years you should have been tied to a very tiresome fellow,” and Marsden made some poor attempt at a smile. “Had I thought of what was before you, I would never have asked you to marry me. “Don't cry, dear; I did not wish to hurt you. I wanted to ask your pardon for... all that martyrdom, and... to thank you for... being my wife; and there's something else. “You see when I get well and am not lying in bed here, maybe I could not tell you, so let me explain everything now, and then we need not speak about such things again. “Perhaps you thought me too economical, but I was saving for a purpose. Your portion has not brought quite so much as it did, and I wished to make it up to you, and now you can have your six hundred a year as before; if this illness had gone against me, you would have been quite comfortable—in money, I mean, dear. “No, I insist on your going to Lady Gloucester's; the change will do you good, and I'll lie here digesting the Reformation, you know,” and he smiled, better this time, quite creditably, in fact “Will you give me a kiss, just to keep till we meet again?” When the nurse came down at four to take charge, she was horrified to find her patient alone, and in the death agony, but conscious and able to speak. “Don't ring... nor send for my wife... I sent... her away knowing the end was near... made her go, in fact... against her will.” The nurse gave him brandy, and he became stronger for a minute.
  • 57.
    “She has hada great deal to bear with me, and I... did not wish her to see death. My manner has been always so wearisome... I hoped that... nobody would be here. You are very kind, nurse; no more, if you please. “Would it trouble you... to hold my hand, nurse? It's a little lonely... I am not afraid... a wayfaring man though a fool... not err therein...” He was not nearly so tedious with his dying as he had been with his living; very shortly afterwards Thomas Marsden had done with statistics for ever. IV Three days later Leslie came home from the city with tidings on his face, and he told them to his wife when they were alone that night “Marsden's lawyer made an appointment after the funeral, and I had an hour with him. He has asked me to be a trustee with himself in Mrs. Marsden's settlement.” “I'm so glad; you must accept, for it will be such a comfort to poor Beatrice; but I thought Godfrey was her sole trustee.” “So he was,” said Leslie grimly, “more's the pity, and he embezzled every penny of the funds—gambled them away in card-playing and... other ways.” “Godfrey Harrison, Beatrice's brother?” “Yes, her much-admired, accomplished, ill-used brother, the victim of her husband's stinginess.” “If that be true, then Godfrey is simply a...” “You mean an unmitigated scoundrel. Quite so, Florence, and a number of other words we won't go over. I tell you,” and Leslie sprang to his feet, “there is some use in swearing; if it had not been for one or two expressions that came to my memory suddenly to- day, I should have been ill. Curious to say, the lawyer seemed to enjoy them as much as myself, so it must be a bad case.”
  • 58.
    “But I don'tunderstand—if Godfrey spent Trixy's money, how is there anything to manage? Did he pay it back?” “No, he did not, and could not; he has not enough brains to earn eighteen pence except by cheating, and if by any chance he came into a fortune, would grudge his sister a pound.” “Then...?” “Don't you begin to catch a glimpse of the facts? Why, Marsden toiled and scraped, and in the end, so the doctors say, killed himself to replace the money, and he had just succeeded before his death.” “How good of him! but I don't see the necessity of all this secrecy on his part, and all those stories about low interest that he told Trixy.” “There was no necessity; if it had been some of us, we would have let Mrs. Marsden know what kind of brother she had, and ordered him out of the country on threat of jail. “It was Marsden's foolishness, let us call it, to spare his wife the disgrace of her idol and the loss of his company. So her husband was despised beside this precious rascal every day.” “Trixy will get a terrible shock when she is told; it would almost have been kinder to let her know the truth before he died.” “Mrs. Marsden is never to know,” said Leslie; “that was his wish; she's just to be informed that new trustees have been appointed, and we are to take care that she does not waste her income on the fellow. “People will send letters of condolence to Mrs. Marsden, but they will say at afternoon teas that it must be a great relief to her, and that it's quite beautiful to see her sorrow. In two years she will marry some well-dressed fool, and they will live on Marsden's money,” and Leslie's voice had an unusual bitterness. “Did you ever hear of another case like this, John?” “Never; when old Parchment described Marsden giving him the instructions, he stopped suddenly.
  • 59.
    “'Marsden,' he said,'was the biggest fool I ever came across in the course of forty-two years' practice,' and he went over to the window.” “And you?” “I went to the fireplace; we were both so disgusted with the man that we couldn't speak for five minutes.” After a short while Mrs. Leslie said, “It appears to me that this slow, uninteresting man, whom every one counted a bore, was in his own way... almost a hero.” “Or altogether,” replied John Leslie.
  • 60.
    H RIGHTEOUS OVER MUCH I owdo you do, Crashaw? didn't know you condescended to conversaziones at the Town Hall, at least when there is no dancing. Their Worships will be satisfied this evening, for the whole world and his wife seem to be here, and some people that have never been in the world before, one would judge.” “There is just one person I wish particularly to see, and I can't find her; that is Arkwright's young wife. I passed the old man himself a minute ago, conversing with Peterson, and lecturing on the effect of the American tariff on wool. Has he left her at home, Jack, to keep her out of harm and to tantalise the public?” “Not he. Jacob is quite proud of her, to do him justice, and worships the ground on which she treads, although I doubt whether she knows that or cares. Mrs. Arkwright is very beautiful In my humble judgment, but there is a wide gulf between twenty-one and seventy. Besides, she has a temper, and no sympathy with his religious notions. When December weds May, it's bound to be either a comedy or a tragedy, and this is half and between.” “When you have quite finished your interesting moral reflections, Jack, and can attend to practical detail, could you do me the pleasure of pointing Mrs. Arkwright out to me, and, as you seem to have seen a good deal of her, introducing your unworthy servant? I'll be able then to judge for myself. We are obliged to Arkwright for creating a piquant situation.” “Come to the next room, where the band is playing; Mrs. Arkwright was there ten minutes ago. But I don't know whether I can intrude on her at the present moment, even although provided with so good-looking and well-dressed an excuse. Yes; there,
  • 61.
    Crashaw, in thealcove, talking to a parson, that is Jacob's wife. Was I right?” “Your taste, Jack, is perfect; but, indeed, a man who admires Mrs. Arkwright deserves no credit; it is inevitable. There is prettiness, and there is sweetness, and there is taking-ness, and they are very well, but this is on another level.” “I thought you would be astonished, and am pleased to notice that even so blasé a critic of womankind can grow enthusiastic on occasion. Isn't that a proud head?” “Why, Jack, that woman ought to have been a duchess, and a leader of society in town, instead of Mrs. Jacob Arkwright, wife of a self-made wool-spinner and a deacon. Her face is the most complete piece of Grecian beauty I ever saw—nose, eyes, chin, mouth, perfect; forehead perhaps the slightest bit high—a Greek would have worn a ribbon—and that glorious hair, brown shot with gold.” “She is certainly looking splendid to-night Do you notice how she has put the other women to confusion?” “Simply a goddess among a lot of peasants. I say, Jack, how in the world did that girl, with such a face and such an air, ever marry Arkwright? Where was she hidden away? Had she no opportunity? Talk about waste, this is an absolute sin. Do you know her history?” “Lived with her mother, and got her living by teaching. Arkwright, who has all his life been busy with wool and religious affairs, saw her in chapel, and remembered he was human. Fell in love with her on first sight, having lived scatheless unto threescore years and ten, and got a fellow-deacon to negotiate the affair; at least, so it is reported.” “Most likely, I should say; but, Jack, what an abandoned criminal that mother of hers must have been, and what did she herself do this thing for? She has a will of her own, or else I do not know a woman's face.” “Oh, the old story. Her mother was proud and poor, and considered Arkwright an excellent suitor. Mrs. Arkwright is not much troubled about religion, and I fancy has a very different idea of
  • 62.
    things from herhusband, but she had the chance of a handsome provision for herself and her mother, and she seized it There could be no romance; but can you blame the old lady, Crashaw, urging such a marriage, or the daughter escaping from the dreary governess life?” “No, I suppose not. The girl took the veil, and obtained a settlement at the same time, after a sound Protestant fashion; but it does seem a crime against nature to sacrifice a beautiful young woman to a hard, bloodless old Puritan like Arkwright, who is, I grant you, very able in wool, and perfectly straight in character, but who is perfectly uncultured and hopelessly bigoted. What a life of dreariness she must lead in the Arkwright circle!” “Well, of course she can't attend concerts, nor dance, nor hunt, nor go into society, but she has a good home, and a carriage, and as much money as she can spend. I don't suppose that she cares for Jacob, but she does her duty as a wife, and does not seem unhappy.” “Certainly Mrs. Arkwright is not unhappy this evening with her present companion. I will hazard the guess, Jack, without any reflection on her wifely character, that she never looked at her worthy, but not very attractive, husband with the same interest which she is bestowing on that handsome parson. Who is he, Jack?” “Egerton's his name, and he's Arkwright's minister—a Congregationalism or Baptist; I can never remember the difference. He is a very able fellow, they say, and a rattling good preacher, quite broad and liberal in his views, but a perfect ascetic in his life. He must be very much in Mrs. Arkwright's company, and he's certainly the decentest man she knows.” “Arkwright is about seventy, and is not so strong as he looks, Jack; his wife will have time to console herself, and her second husband will be a very lucky man, for he will have a fortune and her heart.” II
  • 63.
    “You have comequickly, Mr. Egerton, and that was well done,” said Jacob Arkwright, looking very white and worn, propped up with pillows. “I have much to say, and I'll take a sup o' brandy; them that never touches drink when they're well get the good when they're ill. “That gives me the strength I need for the time, and ma work is nearly done. Don't go away, Laura; I want you to hear what I say to the pastor. “The doctor says 'at ma days are few, mayhap only to-morrow, and it's best to speak when a man's head is clear, and I thank God mine is that, though my body be weakened by this sickness.” His wife stood on one side of the bed, now and then rearranging the pillows at his back and bathing his forehead with vinegar—for scent he would not have—and Egerton stood on the other, refusing to sit down while she stood, and watching her strong white hands at their service, but only once did he look her straight in the face. “You're young, Pastor—thirty, did ye say?—and I'm owd, seventy- two this month, and I havena' known you long, but there's no mon I've liked better or could trust more.” And he looked steadily at Egerton with a certain softening of expression. “You've been very kind to me and to the chapel, Mr. Arkwright, and I hope it may be God's will to spare you and raise you up again,” and although the words were formal, the accent was tender and moving. “No, no, lad; our times are in His hand, and I have received the summons, and so we 'ill go to business. And first about ma affairs. I wish ye to understand everything, that ye may be able to do your duty by ma widow.” Egerton was conscious that Mrs. Arkwright straightened herself, and could feel the silence in the room; but the dying man was not one to appreciate an atmosphere. “It may be that I was too owd for marrying, and ma ways too old- fashioned. Ma house has no been very bright for a young wife, and ma conscience did not allow me liberty in worldly amusements. But
  • 64.
    according to mynature I can say before God that I loved ye, Laura, and have tried to do ma part by ye.” “You married me a poor girl, and have been most... kind to me, Jacob. Why speak of such things?” and her voice was proud and pained. “You have been a faithful wife to me,” he went on, as one fulfilling a plan, “and have put up with my... peculiarities—for I know you do not think wi' me in things, and do not like some of the men 'at came to the house. Oh, I said nowt, but I saw aal.” Mrs. Arkwright laid her hand on her husband's, and it occurred to Egerton from a slight flush on his face that she had never done this before. “Ma will has been made for a year”—it was plain that Mr. Arkwright was to go on to the end, and Egerton could not have lifted his eyes for a ransom—“and I have left aal to my wife without any condition, with just one legacy. It is to you, Egerton, and I hope you'ill not refuse it—just something to remind you of me, and... get you books.” “It was very... good of you, sir, and I am most... grateful, but I... really can't accept your kindness. It is not likely that I will ever marry, and I've got enough for myself.” As he spoke, Mrs. Arkwright shook up the pillows hastily, and went to a side table for a glass. “Well, if you will not, then there's an end of it; but you will grant me another favour which may be harder,” and for a minute Arkwright seemed to hesitate. “Ma wife will be left young and rich, and although I have never said it to you, ma lass, she is... beautiful.” “Jacob, this is not seemly.” Her voice was vibrant with passion. “Blame me not for saying this once, and if another be present, he is our friend, and I am coming to my point; the brandy again, and I'll soon be done.
  • 65.
    “You have nobrother, and I have no person of my blood to guide you, ma lass; ye might be persecuted by men 'at would bring you nowt but trouble and vexation of heart You need an honest man to be your guardian and give you advice. “Ye may never want to marry again, for I doubt ye have had little joy these years, or again ye may, to taste some joy, and I would count it unjust to hinder you—peace, lass, till I be done; I was ever rough and plain—and some one must see that your husband be a right mon. “So I turned it over in ma mind, and I sought for a friend 'at was sound o' heart and faithful. This speaking is hard on me, but it 'ill soon be done.” And as Mrs. Arkwright stooped to give him brandy once more, Egerton saw that her cheeks were burning. “An older mon might have been better, but ye're old for your years, Pastor, and have parted wi' the foolishness o' youth. You have some notions I don't hold with, for I'm the owd sort—believe and be saved, believe not and be damned—but ye're no a mon to say yea and do nay. Naa, naa, I have seen more than I said; and though some 'at came to the house had the true doctrine, they were shoddy stuff. “George Egerton, as I have done good to you and not ill these years, will ye count Laura Arkwright as your sister, and do to her a brother's part, as ye will answer to God at the laast day?” The wind lifted the blind and rustled in the curtains; the dying man breathed heavily, and waited for an answer. Egerton looked across the bed, but Mrs. Arkwright had withdrawn behind the curtain. Arkwright's eyes met the minister's with an earnest, searching glance. “I will be as a brother to your wife while I live.” As he spoke, Arkwright grasped his hand and gave a sigh of content; but when Egerton left the room, Laura refused to touch his hand, and her face was blazing with anger. III
  • 66.
    “You have beenvery generous to the chapel, and we thank you very much for keeping up all Mr. Arkwright's subscriptions those three years. The work of God would have been much crippled had it not been for your liberality.” “Do you know, Mr. Egerton, that when you talk in that grave, approving fashion, as if I were one of your devout women like poor Mrs. Tootle, who is really a good creature, although her husband is a sanctimonious idiot, I feel a perfect hypocrite.” “Why do you always depreciate yourself...” “Do not interrupt me, for I am determined to settle this matter once for all, and not walk about in a vain show, as if I were a saint You think me good, and so do the chapel people, I suppose, because I give to foreign missions and Bible-women, and go to the prayer- meeting, and attend the special meetings. Do you know why I do those things?” “Yes, I think so,” said the minister; “but I will hear your reason.” “Because Mr. Arkwright believed in missions and evangelists, and he was... a better husband to me than I was wife to him, and because it would be dishonourable not to use his money for the objects he approved.” “And the services? Is that the reason you are always present, and set such a good example?” And it was plain the minister did not take Mrs. Arkwright at her value of herself. “Oh, this is because... because...” “Yes?” And Mr. Egerton smiled as one who is giving checkmate. “Because you were Jacob's friend, and the only man he... loved, and because, although we have quarrelled several times, and I have been very rude to you once or twice, still”—and a smile brought Mrs. Arkwright's face to perfection—“we are friends also.” “You have been... angry with me,” said Egerton, “when I could not understand the reason, but I never doubted your friendship. If I were in serious trouble, I would come to you rather than to any man.”
  • 67.
    “Would you really?”Then her tone changed. “I don't believe you, for you would go to some snuffy, maundering old minister.” “And you are good,” he insisted, taking no notice of her petulance. “You are honest, and brave, and high-minded, and loyal, and...” “Pious, with a gift of prayer, you had better add. How blind you are, for all your knowledge and... other qualities. You forgot to add sweet-tempered; but perhaps you were coming to that.” “No, I would not say that, and I am rather glad you are not gentle,”—the minister was very bold,—“for you would not be... yourself.” “You had your suspicions, then, and are not sure that I am ready for canonising? Do you know I feel immensely relieved; suppose we celebrate this confession by tea? Would you ring the bell, Mr. Egerton?” “There is something I want to talk about, and as it's rather important, would you mind, Mrs. Arkwright, giving me a few minutes first? Tea is rather distracting.” “Composing, I find it—but as you please; is it the District Visitors, or the Nurses' Home, or the Children's Holiday, and is it money?” Mrs. Arkwright for some reason was very gracious. “No, it has nothing to do with the chapel. I wish to speak about... yourself.” “Yes?” and she looked curiously at him. “You remember that day when Mr. Arkwright committed you to my care, and I gave my word to.. “Do your best to look after a very troublesome woman,” Mrs. Arkwright interposed hurriedly; “it was a... risky task, and I thought you were far too hasty, and just a little presumptuous, in undertaking it, but you've been a very lenient guardian for your age. Have I done anything wrong?” “No, and you could not at any time in my eyes,”—Mrs. Arkwright made as though she would curtsey,—“but others might do wrong to
  • 68.
    you, and Ihave been anxious for some time. “Mr. Arkwright was afraid lest some unworthy man should admire you or desire your wealth, and... marry you, and your life be miserable. And he wished me to save you from this, and I promised to do my best.” “Well?” and her voice had begun to freeze. “I remember all that.” “It is difficult to speak about such things, but you know that I... would do anything to save you pain....” “Go on,” and now her eyes were fixed on the minister. “It came to my ears and I saw for myself that one whom I knew slightly and did not like was paying you attentions, and it might be, as I also heard, was favoured by you. So it seemed my duty to make enquiries about Mr. Crashaw.” “And?” “There is nothing against his character, and I have heard much good of him—that he has cultured tastes and is very well liked by those who know him; personally we could never be friends, for various reasons, but he... is not unworthy to be the husband of... a good woman. That is all I have to say”; and the saying of it was plainly very hard to the minister. “You recommend me to marry Mr. Crashaw, if that gentleman should do me the honour to ask my hand, or do you propose to suggest this step to him, so as to complete your duty as guardian?” Mrs. Arkwright was now standing and regarding Egerton with fierce scorn. “My information seemed to me reliable”—he was also standing, white and pained—“and I thought it would help you in that case to know what I have told you, when you came to decide.” “If I knew who told you such falsehoods, I would never speak to them again, and I would make them suffer for their words. Mr. Crashaw! and it was to that cynical, worldly, supercilious tailor's block you were to marry me. What ill have I done you?”
  • 69.
    “God knows Idid not desire.... I mean... do you not see that I tried to do what was right at a cost?... Why be so angry with me?” “Because I do not really care what any person in this town or all Yorkshire says about me, but I do care and cannot endure that you should turn against me, and be content to see me Crashaw's wife or any other man's.” And she drove the minister across the room in her wrath—he had never seen her so beautiful—till he stood with his back to the door, and she before him as a lioness robbed of her cubs. “It has been my mistake, for I understand not women,” he said, with proud humility. “I beg your pardon, and am more than ever... your servant.” She looked at him stormily for ten seconds; then she turned away. “If that is all you have to say, you need not come again to this house.” IV “You will excuse me sending a verbal message by the doctor, for, as you see, I am past writing, and... the time is short I wanted to speak with you, Mrs. Arkwright, once before... I died.” And Egerton thought of the day she had stood by her husband's deathbed as now she stood by his, only that the nurse had left the room and there was no third person to be an embarrassment “Do not suppose I forget your words to me the last time we met in private,” he continued, as she did not speak nor look at him, beyond one swift glance as she came into the room; “and believe me, I would not have forced myself on you, nor would I have asked this favour, had it not been that... I have something of which I must deliver my soul.” “You are not dying; you were a strong man, and a few days' illness couldn't... be fatal,” she burst out, and it seemed as if Mrs. Arkwright for once was going to lose control and fall a-weeping. Then she mastered herself, and said almost coldly, “Had I known you were so ill, I would have called to inquire; but nothing was said
  • 70.
    of pneumonia, onlya bad cold.” “You forgive me, then, that ill-judged interference, Mrs. Arkwright, and anything else in which I have offended you or failed in... my brother's part?” “Do not speak like that to me unless you wish to take revenge; it is I who ask your pardon for my evil temper and insolence that day, and other times; but you are too... good, else you would have understood.” “You did not, then, hate me, as I supposed?” and his voice was strained with eagerness. “When you were prepared to approve my engagement to Mr. Crashaw? Yes, I did, and I could have struck you as you bore witness to his character—whom you detested. Conscientious and unselfish... on your part, very. And yet at the same time I... did not hate you; I could have... you are a dull man, Mr. Egerton, and I am not a saint. Is it milk you drink?” And when she raised his head, her hands lingered as they had not done before on her husband's. “Are you really dying?” She sat down and looked at him, her head between her hands. “You and I are, at least, able to face the situation.” “Yes, without doubt; but I am not a martyr to overwork, or anything else; my death is not a sentimental tragedy; do not let any one speak of me in that fashion: I simply caught a cold and did not take care; it's quite commonplace.” When he smiled his face was at its best, the dark blue eyes having a roguish look as of a boy. Mrs. Arkwright leant back on her chair and bit her lower lip. “This is good-bye, then, and our friendship—six years long, isn't it?—is over. Had I known it was to be so short—well, we had not quarrelled.” “Not over,” and he looked wistfully at her; “this life does not end all.” “Ah, you have the old romantic faith, and one would like to share it, but no one knows; this life is the only certainty.”
  • 71.
    “In a fewhours,” he went on, “I shall know, and I expect to see my friend Jacob Arkwright, whom I loved, although we only knew one another for three years, and he... will ask for you.” Mrs. Arkwright regarded Egerton with amazement. “He will ask how I kept my trust, and I... will be ashamed, unless you hear my confession and forgive me. For I... have sinned against you and your husband.” “In what?” she asked, with a hard voice. “God knows that I had no thought of you he might not have read while he was here. And afterwards for a year I was in heart your brother; and then—oh, how can I say it and look you in the face, who thought me a good and faithful minister of Christ?” and his eyes were large with pain and sorrow. “Say it,” she whispered, “say it plain; you must,” and she stretched out her hand in commandment. “I loved you as... a man loves a woman whom he would make his wife, till it came to pass that I made excuses to visit you, till I watched you on the street, till I longed for the touch of your hand, till I... oh, the sin and shame—thought of you in the service and... at my prayers; yet I had been left your guardian and had promised to be as a brother to you; besides, nor was this the least of my shame, you were rich.” “And now?” She had risen to her feet “I have finally overcome, but only within these few months, and my heart is at last single. You are to me again my friend's wife, and I shall meet him... in peace, if you forgive me.” For a few seconds nothing was heard but his rapid breathing, and then she spoke with low, passionate voice. “Your love needs no forgiveness; your silence... I can never forgive.” He lived for two hours, and he spoke twice. Once he thanked his nurse for her attentions, and just before he passed away she caught the words, “through much tribulation... enter the Kingdom... God.”
  • 73.
    O A PROBATIONER ne winterI forsook the cottage at Drumtochty, in spite of the pure white snow and the snell, bracing wind from Ben Urtach, and took rooms in Edinburgh. It was a poor exchange, for the talk of professors and advocates, although good enough in its way, was not to be compared with the wisdom of James Soutar; but there were more books in Edinburgh than in the Glen, and it was there that I met my probationer. From time to time we passed upon the stair, when he would shrink into a landing and apologise for his obstruction, and if in sheer forgetfulness I said “Fine day,” with the rain beating on the windows, he nervously agreed. With his suspicion of clerical attire, and his deferential manner, he suggested some helot of the ecclesiastical world, whose chiefs live in purple and fine linen, and whose subordinates share with tramway men and sempstresses the honour of working harder and receiving less pay than any other body in the commonwealth. By his step I had identified him as the tenant of a single room above my sitting-room, and one wondered how any man could move so little and so gently. If he shifted a chair, it was by stealth, and if in poking his fire a coal dropped on the hearth, he abandoned the audacious attempt. One grew so accustomed to these mouse-like movements that it came as a shock when my neighbour burst into activity. It was on a Friday afternoon that he seemed to be rearranging his furniture so as to leave a clear passage from end to end of the room, and then, after he had adjusted the chairs and table to his satisfaction, he began a wonderful exercise. Sometimes he would pace swiftly backwards and forwards with a murmuring sound as one repeating passages by rote, with occasional sudden pauses, when he refreshed his memory from some quarter. Sometimes he stood before the table and spoke aloud, rising to a pitch, when one could catch a word or
  • 74.
    two, and thenhe would strike a book, quite fiercely for him, and once or twice he stamped his foot almost as hard as a child could. After this outbreak he would rest a while, and then begin again on the lower key, and one knew when he reached the height by the refrain, “Abana and Pharpar, rivers of Damascus.” It was an amazing development, and stimulated thought. “No,” explained our excellent landlady, “he's no daft, though ye micht think sae. He's a minister without a kirk, an' he's juist learnin' his sermon; but, Losh keep us, he's by ordinar' the day. “He's my cousin's son, ye see”—and Mrs. Macfarlane settled to historical detail—“an' his mother's a weedow. She focht to get him through St. Andrew's, an' hoo she managed passes me. Noo he's what is called a probationer, an', eh, but he earns his livin' hard. “His business,” continued Mrs. Macfarlane, “is to tak' the pulpit when a minister is awa' at a Sacrament or on his holiday, and any Sabbath he micht be at Peterhead and the next at Wigtown. He gets his orders on Friday, an' he sets aff wi' his bit bag on Saturday, an' a weary body he is on Monday nicht An' it's little he maks for a' he does, bare twenty shillin' a week clear; but naebody can stand this colie-shangie, (disturbance).” For above the landlady's exposition rose the probationer's voice: “Abana and Pharpar, rivers of Damascus.” What she said to her cousin once removed I know not, but it was not in vain, for in the evening this was brought by the servant:— “Dear Sir,— “It affords me sincere regret to learn that you have been disturbed in the midst of your literary avocations by sounds and movements emanating from my room. They are unfortunately and unavoidably connected with a new method of professional work which I have been advised to adopt by experienced friends. It would, however, be unrighteous that one man should hinder another in his daily labour, and I would be greatly obliged if you could indicate any time of absence during which I might be free to speak aloud and move with
  • 75.
    energy in mychamber without offence. Apologising for my unwitting annoyance, “I am, “Yours respectfully, “Hiram Clunas.” It was written on poor paper and a single sheet, but the handwriting was that of a scholar, a man accustomed to form Hebrew and Greek characters, and the very flavour of pedantry was attractive, so that one wanted to know the writer, and I seized the excuse of a personal answer. He was quite unprepared for my coming, and upset a Hebrew lexicon and four German books on the Prophets before he could get a chair in his single room below the slates; nor had he any small talk to offer, but he was ready enough to speak about his own work, and seemed anxious to explain his recent departure. It also occurred to me that he wanted my judgment. “My work, let me explain,” he said, hesitatingly, “is not pastoral or... devoted to a particular sphere, since my gifts have not yet... commended themselves to a congregation after such a fashion that they were inclined to... in short, wished to have me as their minister. Mine is a vagum ministerium. I am what is called a probationer, that is, I have been duly educated in profane and sacred learning for the holy ministry, and have passed certain examinations... without discredit.” “Of that I am sure,” I interpolated with sincerity, whereat the probationer ought to have bowed and replied, “It is very good of you to say so,” but as it was he only blushed and looked as if he had been caught boasting. “And then?” I suggested. “It remains to discover whether I am... fit for the practical work of my calling—if it be, indeed, I am called at all.. And here the little man came to a halt.
  • 76.
    “You are examinedagain,” I inquired, tentatively, “or placed under a chief for a little?” “Well, no, although the latter would be an excellent way—but it is not for me to criticise the rules of my Church; if any congregation has lost its minister, then such as I, that is, persons in a state of probation, are sent each Sabbath to... preach, and then the people choose the one who... And again Mr. Clunas came to a stand for want of fitting words. “Who comes out first in the preaching competition,” I added, and in an instant was sorry. “It would ill become me to put the matter... in such a form, and if I have done so it has been an inadvertence, and indeed I did not mean to complain, but rather to explain the reason of... the noise.” “Please tell me whatever you please, but it was not noise, for I heard some words... “The rivers of Damascus? I feared so, sir; that was the climax or point of repetition—but I will relate the matter in order, with your permission. “It has been my habit, after I have duly examined a passage in the original language and the light of competent scholars, and verified its lessons by my own reason and conscience—collected the raw material, if I may so say—to commit the same to writing according to my ability, using language that can be understood of the people, and yet conforming as far as may be to the Elizabethan standard.” In my opinion, I indicated, he had done well. “I judged that I would have your approval so far, but hereafter comes in a grave question of expediency, on which I should like your mind as a neutral person and one given to literary pursuits. My habit is further to read to the people what I have written in a clear voice, and with such animation as is natural to me, in the faith that whatsoever may have been given me by the Spirit of Truth may be witnessed to the hearers by the same Spirit.” This appeared to me a very reasonable method and a just hope.
  • 77.
    “Others, however, actingaccording to their nature, commit their message to memory, and deliver it to the people with many lively and engaging gestures, which pleases the people and wins their hearts.” “And so the groundlings prefer the windbags,” I interrupted, “and elect them to be their minister.” “It is not so that I wished you to infer,” and the probationer's voice was full of reproof, “for I trust my desire is not to obtain a church, but the confirmation of my calling through the voice of the people; yet who knoweth his heart?” And the probationer was much distressed. It was only my foolish thought, I hastened to explain, and besought him to continue. “A friend of... much shrewdness and, I am sure, of good intention, has spoken to me at length on my... want of favour with the people, and has pointed out that the Word must be placed before them after a winsome fashion.” “And so?” “He urged me to choose texts which could be frequently repeated with effect, and so lodge their idea in the mind of the people, and that I should not use any manuscript, but should employ certain arts of oratory, such as beginning low and raising the voice up to a climax where it would be good to repeat the text with emphasis. “As an example and... inducement he dwelt upon the case of one probationer who had taken for his text, 'And there shall be no more sea,' whereon he composed a single sermon, to which he devoted much pains. This he delivered daily for some hours in his chamber, and at the end of each paragraph said in a loud voice, 'And there shall be no more sea.' He was elected to three churches within a short space,” concluded Mr. Clunas. “You have therefore thought it desirable to amend your habit.” “Well, so far,” and the probationer was much embarrassed, “it was impossible for me to handle what my adviser called 'repeaters,' such as that I have mentioned, for my mind does not incline to them; but
  • 78.
    as I hadbeen labouring the tendency to prefer meretricious and sensational religion to that which is austere and pure from the text, 'Are not Abana and Pharpar, rivers of Damascus, better than all the waters of Israel? * it seemed to me that I might for once... make trial... that is, use the words Abana and Pharpar as a symbol to... fix the truth, as it were. It is very laborious and... not grateful to me. Do you think that... I am doing right?” and my probationer fixed me with an anxious eye. “Quite so, sir, I understand perfectly,” as I was making a blundering effort to suggest that Providence hardly intended that my probationer should go round the country like a showman with “repeaters.” “You have confirmed my own idea and... delivered my feet from falling, for I had come nearly to unreality in a holy thing, besides ridding me from an irksome task,” and he regarded the sheets—the “rivers” standing out in half text—with strong dislike. “There is another matter,” he continued, “on which I would fain have your mind, since you have shown so much sympathy. It is now, I regret to say, the custom for a person in my position, that is, on probation, to print a number of certificates from influential persons and send them to... the authorities in a vacant church. This I have refused to do; but there is a special reason why I strongly desire to be settled... not quite unworthy, I hope,” and a faint flush came to the probationer's face. “I understand”—for it was natural to suppose that he was engaged, as many in his circumstances are, which grows into a pathetic tragedy as a girl waits for long years till her betrothed is approved in his work and can offer her a home—“and you have got your certificates.” “A few, and it may be that I could secure more; here is one which... I value deeply... count above gold. It's from Prof. Carphin; you know what he has done, of course. “Hebrew scholar”—the probationer rose from his chair and paced the floor—“that is inadequate, quite inadequate; there are many
  • 79.
    Hebrew scholars, thankGod, but Prof. Carphin has gone deeper. Why, sir, he has made a race of scholars, and changed the face of theological thought in Scotland; he is the modern Erasmus of our land,” and the probationer was very warm. “This is what he has written of me, and it is superfluous to say that from such a man this testimony is the highest praise; I ought hardly to show such words, but you will not misjudge me.” “I beg to certify that Mr. Hiram Clunas, Master of Arts and Bachelor of Divinity, late Fellow of this College, is in my judgment fully competent to expound the Hebrew Scriptures after an accurate and spiritual fashion to any body of intelligent people. “Zechariah Carphin, “D.D., LL.D. “Calvin College, Edinburgh.” “Pardon me, it is my foolishness, but you notice 'fully'; this extremity of language is, I need not say, undeserved, but that Dr. Carphin should have written it is... a compensation for many little disappointments,” and the probationer's voice trembled. “No, it will not be of material service in the way of gaining me a hearing, for it is a... moral disgrace to my Church that the word of this eminent man carries little weight with... committees and such like, and that many people in this University city do not know his face when he walks along Princes Street. “This is from another kind of man, who is very... acceptable as a preacher, and has much influence... in vacancies; it was an indiscretion, I fear, to have asked him for... a certificate, as he has only seen me once; but when one is pressed he is not always wise.” “I have had the pleasure of knowing the Rev. Hiram Clunas for a considerable time, and have much satisfaction in recommending him to the favourable consideration of selection committees of vacant congregations, He is a ripe scholar, a profound divine, an eloquent preacher, a faithful pastor, an experienced Christian, with an
  • 80.
    attractive and popularmanner, and general knowledge of a varied and rich character. Any congregation securing Mr. Clunas is certain to increase both in number and finance, and I anticipate for this talented young minister a future of remarkable and rapid success. “MacDuff MacLeear, D.D.” “Yes, it is a curious name, and I believe was, so to say, adopted. Originally he was James MacLeear—MacLeear is his own—and some years ago he inserted MacDuff, I am credibly informed, and now he has dropped his Christian name. “The reason for the change, it is understood, is for purposes of advertisement in the public prints, where, I am informed, ordinary names such as James or John are less... striking, so that preachers who desire to appeal to the people use two surnames, as it were; it seems to me doubtful in ethics, but one must not be ready to judge his neighbour in such straits. “No, his degree is not from a Scots University, but from a seat of learning in a Western State of America—Auroraville, I think it is called, but I am not sure. Yes, he wrote a little book on the Maidens of the Bible of a popular cast. “You agree with me that no one could use such a testimony with... self-respect, and I have resolved to print no certificates or make any personal appeal; but I do not regret the effort I made, for it has gained me the Professor's letter,” and the probationer folded up the letter carefully and placed it in his desk. “I fear that you must think me charged with vain ambition, but... it is not for my own sake.” From time to time we spent an hour together, and he told me of his journeys, many and toilsome. “Of course I am not sent to supply in cities, for they require men of greater... experience; my allotment is always in the country, and I like that better. “When my station comes near I begin to look out of the window and see whether the district is level or hilly—for though climbing
  • 81.
    tries one alittle, one has a fair view to refresh the soul, and I like woods because of the mystery and the rustling of the leaves. “Sometimes a farmer will meet me with a dogcart—and there are no men so kind as farmers—but mostly I walk, and that is nothing unless the distance be far and it be raining heavily. No, it may be a weakness of the flesh, but I do not like a night walk, and yet to see the squares of light in the cottage windows, flashing across a glen or breaking out of a wood, is very pleasing.” One snowy morning in February he came into my room in evident excitement, with a letter in his hand. “You have taken such an interest in my affairs that I thought you would like to know... I have received a letter informing me that I am on the short leet for Tilliegask... just two, and I am one... and I am to preach next Sabbath... and the farmer with whom I stayed has sent a very encouraging letter.” During the week the probationer was much tried on a question of conscience, whether he ought to act on a suggestion of his friend at Tilliegask. “It happens,” he explained to me, “that the people at Tilliegask are very conservative in their views of the Bible, while, as you are aware, I have been led to accept certain modern conclusions regarding the history of the books, and my good friend desires that I should... make no allusion to them in my discourse. “Now,” went on the probationer, “it was not my intention to do so, but after this advice am I not bound in conscience to indicate, simply to indicate, my position, that they may not be deceived, and that I may not obtain a church by guile?” And he read to me the sentence, which I make no doubt no one understood, but which was to Mr. Clunas a great relief. He came home from Tilliegask in high spirits, and speculated every evening on his chances as against the other man who was to preach on Sabbath. “No, he was not what you would call a scholar,” and then the probationer laughed aloud—a rare occurrence; “well, it was a translation in the Latin class; he rendered adhuc juvenis as 'a still
  • 82.
    youth,' which wasmuch tasted, and others, too, as remarkable; but it is not generous to remember such... failings.” The good man was indeed so distressed by this disparaging allusion to his rival that he searched his heart for the sins of pride and jealousy, which with envy and worldliness, he confessed to me, constantly beset him. He also impressed upon me that although Mr. Tosh might not be a scholar in the academic sense, yet he had such gifts of speech that he would be an excellent minister for Tilliegask if the choice of that secluded place should fall on Tosh. But the probationer waited anxiously for the first post on Tuesday, which would give the result, and I was only less anxious. When he did not come down with tidings, and only the faintest sound came from his room as of a chair occasionally shifted before the fire, I went up, and found my friend very low and two open letters on the table. “It has not been... God's will,” and he signed that I should read the letters. One was from the ecclesiastical functionary who presides over elections and church courts, and who is called by the suggestive name of “moderator”; that the vote had been fifty-two for Mr. Clunas and ninety-three for Mr. Tosh; that Mr. Tosh had been elected; that on his, the moderator's appeal, the minority had “fallen in”; that he, the moderator, was sure that Mr. Clunas would be pleased to know that his supporters had shown so good a spirit, and that there was no doubt that the Great Head of the Church had something in store for His servant; and that in the event of Mr. Clunas applying in another vacancy he, the moderator, would be willing to give him a strong certificate as to the impression he, Mr. Clunas, had produced on the congregation of Tilliegask. The second letter was from Wester Tilliegask, my friend's host, who was full of genuine regret that Mr. Clunas had not won the poll, who explained that up to Sabbath his chance was excellent, but that Mr. Tosh had carried all before him by a sermon on “A Rainbow round about the Throne,” with very fetching illustrations and quotations—Mr. Tosh had also won several votes by shaking hands with the people at the door, and ingeniously giving it to be understood that his idea of
  • 83.
    pastoral duty wasto visit his congregation four times a year; that, notwithstanding all these Tosh attractions, he, Wester Tilliegask, would have preferred Mr. Clunas; and that as there was a rumour that the minister of Ballengeich would soon need a colleague, he would arrange through his, Wester Tilliegask's, wife's brother that Mr. Clunas should have a hearing. He added that a certificate from MacDuff MacLeear, placing Mr. Tosh a little lower than St Paul, had told. The probationer was very brave and generous, blaming no one, and acknowledging that Tosh would be a more suitable man for Tilliegask, but it was evident he was hardly hit. “It was not to escape the unrest of this life,” he said, “nor for the position, nor even for the sanction of my work; it was for the sake of one who... has waited long to see me an ordained minister. She may not... be spared much longer; my mother is now nearly seventy.” So it was no sweetheart, but his mother of whom he thought. “If I had been elected, I had purposed to start this forenoon and carry the news myself, and I imagined the scene. I never could reach the cottage unseen, for there is a window in the gable which commands the road, so that mother is ever waiting at the garden gate for me. “Do not count me foolish, but I was to pretend that I had just come to visit her for a day, and then ask her how she would like to leave the cottage and live in a manse. “By this time she would jalouse something—'tis her word—but I would tell nothing, only expatiate on the manse and her room in it, and... and... she would suddenly throw her arms round my neck.... Excuse me, sir; I will come down in the evening, if you please.” Before evening he was hurrying down to the cottage, for after all he had to go to his mother, and when he came back next Monday she was dead and buried. “Your sympathy is very grateful,” as we sat together, “and it helps me, but I think my heart is... broken; although I had to live in
  • 84.
    Edinburgh in orderto accomplish my railway journeys, and we only saw one another at intervals, we were all in all to one another.... “There were things passed between us I cannot tell, for it seems to me that a mother's death-bed is a holy place; but she knew that I had lost Tilliegask, and... she was not cast down, as I was for her sake. “'Dinna lose heart, Hiram,' she said, her hand in mine, 'for my faith will be justified; when I gave ye to the Lord the day your father died I was sure, a' through the fecht o' education I was sure, an' when you got your honours I was sure, an' when you got no kirk I was still as sure, and now my eyes are clear, an' I see that God has savit you for a work that hath not entered into my heart,' and she blessed me....” From that day he began to fail, and although he struggled to fulfil preaching engagements, he had at last to give up public work. But he toiled harder than ever at the Semitic languages. “It is not that I am deceiving myself with vain hopes,” he explained to me one day, “for I know full well that I am dying, but it seemeth good that whatsoever talent I have should be cultivated to the end. “The future life is veiled, and speculation is vain, but language must be used, and they who have mastered the ancient roots will be of some service; it is all I can offer, and I must give of my best.” The morning he died I looked over his few affairs and balanced his accounts, which were kept in a small pass-book, his poor fees on one side and his slender expenses on the other to a halfpenny. “The expenditure may seem heavy the last few journeys, but my strength failed by the way, and I was unable to walk to my destination, but there may still be enough at the end of the week for what has to be done. “There will be £9 15s. 6d. when all is paid. “With the sale of my books it will suffice, for I have carefully enquired, to buy a grave and defray the cost of burial. It is not
  • 85.
    possible to beburied beside my mother, for our ground is full, so let me lie where the sun is shining on the Grange Cemetery.” Soon after his mind wandered, and I gathered he was in the vestry of Tilliegask Kirk. “Lord, be merciful to me and remember my infirmities... deliver Thy servant from the fear of man and all doubleness of heart... give me grace to declare Thy truth and to set Thee before me... bless my mother and hear her prayers....” After a little while he began to preach, but we could make nothing of the words till he suddenly stopped and raised himself in the bed. “Thou, Lord,” he cried, with great astonishment, “hearing me... Forgive... I am not worthy to declare Thy Gospel....” What was said by the Master none of us heard, but the astonishment passed into joy, and the light thereof still touched and made beautiful his face as the probationer fell on sleep. It was a spring day when we laid his body to rest, and any one who cares can find his grave because a weeping willow hangs over it, and this is the inscription on the stone: Hiram Clunas, Probationer. “It is a very small thing that I should be judged of man's judgment.”
  • 86.
    Welcome to ourwebsite – the perfect destination for book lovers and knowledge seekers. We believe that every book holds a new world, offering opportunities for learning, discovery, and personal growth. That’s why we are dedicated to bringing you a diverse collection of books, ranging from classic literature and specialized publications to self-development guides and children's books. More than just a book-buying platform, we strive to be a bridge connecting you with timeless cultural and intellectual values. With an elegant, user-friendly interface and a smart search system, you can quickly find the books that best suit your interests. Additionally, our special promotions and home delivery services help you save time and fully enjoy the joy of reading. Join us on a journey of knowledge exploration, passion nurturing, and personal growth every day! ebookbell.com